Course Overview
Build AI Agents and Agentic Workflows using Spring AI, MCP and Java. (Latest Spring Boot 4.X, Spring AI 2.X)
This entire course is about developing our own AI Agents From Scratch. It is a deep-dive, architecture-first masterclass on building production-grade AI Agents and Agentic Workflows using Java, Spring AI and the Model Context Protocol (MCP).
What you will master:
Building AI Agents using Spring AI and Java
Designing Agentic Workflows and multi-turn reasoning systems
Understanding MCP Architecture and communication flow
Implementing MCP Tools, Resources and Prompts
Building Human-in-the-Loop workflows using Elicitation
Handling asynchronous workflows using Progress Notifications
Integrating OpenAI, Gemini and local models using Ollama
Using ChatClient, ChatMemory and Advisors effectively
Implementing Structured Output and Prompt Engineering techniques
Designing AI-Powered Microservices using Spring Boot
Writing Integration Tests for MCP-based systems
Applying real-world AI architecture patterns and implementation best practices
By the end of the course, you will be able to:
Build production-grade AI Agents and Agentic Workflows using Spring AI and Java
Design and implement MCP Servers with Tools, Resources and Prompts
Integrate OpenAI, Gemini and local LLMs into Spring Boot applications
Build context-aware AI systems using ChatMemory, Advisors and Structured Output
Apply production-oriented AI architecture patterns, testing strategies and best practices
Throughout the course, we will build practical, production-style AI systems using Spring Boot, Spring AI and MCP.
FAQ
FAQ area empty
Course curriculum
-
Introduction to Generative AI
316 Xem trước -
Understanding LLMs & Core Parameters
145 Xem trước -
Introduction to Ollama
194 Xem trước -
*** Source Code & GitHub Project Repository ***
-
Running Ollama Using Docker
165 Xem trước -
Running Models Locally with Ollama
299 -
Creating an OpenAI API Key
509 -
Creating a Gemini API Key
194
-
Introduction to ChatClient
245 -
LLMs Are Non-Deterministic
229 -
Playground Project Structure Discussion
306 Xem trước -
Playground Project Setup
505 Xem trước -
First LLM Interaction
231 -
Learning Approach: Start Simple
75 -
First LLM Interaction Demo
256 -
Clarification: Which Spring Profile to Use
74 -
Implementing Streaming Responses
293 -
Clarification: Why We Use JUnit for Demos
60 -
LLM Tokens Overview
211 -
OpenAI Tokenizer Demo
87 -
Understanding Metadata, Tokens, and Rate Limits
411 -
OPTIONAL: Max Tokens
391 -
OPTIONAL: Fine-Tuning Creativity with Temperature
205 -
Configuring Default ChatOptions
41 -
Dynamic Model Selection at Runtime
312 -
Configuring Multi-Model Beans
194 -
Working with Multi-Model Providers
337 -
Native Structured Output
364 -
Structured Output: Single Entity Mapping
214 -
Structured Output: Multiple Entity Mapping
179 -
Multiple Entity Mapping: OpenAI Issue and Workaround
174 -
Core Concept: System Prompts
167 -
System Prompt Implementation Demo
210 -
Default System Prompts
52 -
Dynamic Context with Prompt Templates
200 -
Prompt Templates Demo
116 -
COURSE ASSIGNMENT: Movie Recommender Engine
-
Troubleshooting the Movie Recommendation Issue
81 -
Prompt Engineering: Iterative Refinement
134 -
Movie Recommendation Issue Fix
66 -
Section Summary & Key Takeaways
387
-
Introduction to Advisors
153 -
Custom Advisor Implementation
219 -
Understanding Advisor Parameters
170 -
Simple Logger Advisor
78 -
Understanding Message Roles
280 -
Message Roles Demo
72 -
How ChatMemory Works
360 -
NOTE: Spring AI 2.0 Breaking Change
72 -
ChatMemory Demo
232 -
Why Conversation IDs Matter
162 -
Parallel Conversations Demo
355 -
Section Summary & Key Takeaways
176
-
TalentFlow: Application Overview
283 -
Multi-Module Project Structure Overview
153 -
Exploring Candidate Service
310 -
Exploring Job Service
402 -
Career Advisor: Architecture Discussion
272 -
Career Advisor: Project Setup
136 -
Implementing Job and Candidate Clients
347 -
Career Advisor Prompts
239 -
Clarification: Do we have duplicate tasks?
118 -
Find Jobs API Implementation: Part 1
410 -
Find Jobs API Implementation: Part 2
196 -
Compare Jobs API Implementation
255 -
Generate Resume API Implementation
255 -
Career Advisor Configuration
493 -
Career Advisor: Managing Secrets
122 -
Career Advisor APIs Demo
442 -
Exploring Hiring Service
243 -
Hiring Service: Job Client Implementation
57 -
Hiring Service Prompts
265 -
Hiring Advisor Implementation
278 -
Job Application Submission: Architecture & Design Discussion
166 -
Job Application Submission Implementation
304 -
Job Application Evaluation Implementation
223 -
Fetching Job Applications API Implementation
107 -
Fetching Candidate Applications API Implementation
378 -
Hiring Service Configuration
147 -
Hiring Service APIs Demo
225 -
TalentFlow: Environment Preparation
86 -
TalentFlow: End-to-End Demo
611 -
Section Summary & Key Takeaways
90
-
The Problem: Why We Need the Model Context Protocol (MCP)
206 -
Setting Expectations: Core Protocol Theory
82 -
Protecting Data in MCP
89 -
High-Level MCP Architecture Overview
287 -
Core Capabilities: Understanding MCP Server Features
93 -
MCP Capability Discovery
210 -
Request-Response Lifecycle: MCP Execution Flow
290 -
Clarification: How LLM Executes Tools
138 -
Understanding MCP Transports
184 -
Spring MCP Modules
73 -
MCP Playground: Project Structure Discussion
176 -
MCP Playground: Project Setup
447 -
NOTE: Model Support For Tool Calling
84 -
MCP Properties & Secrets
140 -
Developing Our First MCP Tool
163 -
[OPTIONAL] Introduction To Anthropic MCP Inspector
188 -
[OPTIONAL] Testing Tool Calls with MCP Inspector
201 -
[OPTIONAL] Best Practices: Tool Naming and Descriptions
237 -
Architectural Discussion: Host-Server Tool Integration & Execution
119 -
MCP Host Project Setup
472 -
System Message For Tool Calling
58 -
End-to-End MCP Tool Call Demo
319 -
Multi-Tool Execution Demo
63 -
How LLM Executes Multiple Tool Calls
122 -
Clarification: Tool Execution Response Void Type
77 -
Looking Ahead: The Role of MCP Resources and Prompts
93 -
Section Summary & Key Takeaways
276
-
Section Goal
143 -
Best Practices: Tool Parameter Name and Description
107 -
File Operations Project Setup
221 -
File Operations Demo
411 -
Structured Input From LLM
59 -
Providing Context to AI Models via System Messages
202 -
Structured Input: Practical Demo
182 -
Tool Design Approaches
93 -
Pattern 1: Assistant-Driven Decisions
347 -
Assistant-Driven Decisions: Vulnerability Demo
265 -
Architectural Pitfalls: Why Assistant-Driven Decisions Fail
72 -
Communicating Tool Execution Results
111 -
Pattern 2: Encapsulated Tool Design
208 -
Handling Tool Execution Errors Robustly
141 -
Pattern 3: Encapsulated & Robust Tool Design
98 -
Advanced Context: Passing Metadata to MCP Servers via Meta
184 -
MCP Meta: Project Setup
355 -
MCP Meta: Demo
142 -
Advanced Error Handling via Data-Oriented Programming
101 -
Section Summary & Key Takeaways
215
-
Introduction to Agentic Workflows
221 -
Flight Agent Architecture
160 -
Flight Agent: Project Walkthrough Part 1
365 -
Flight Agent: Project Walkthrough Part 2
331 -
Shaping Agent Behavior via System Message
108 -
Exploring Agent Capabilities via Practical Scenarios
253 -
Flight Agent: Execution Demo Part 1
274 -
Flight Agent: Execution Demo Part 2
179 -
Flight Agent Goal-Driven Orchestration
118
-
Introduction to Progress Notifications
191 -
Core Concept: Understanding Progress Tokens
120 -
How Progress Notifications Work Between Host & Server
235 -
Real-Time Streaming: Exposing Progress Updates via Flux
444 -
How Progress Notifications Work Between Host & UI
162 -
Progress Notification: Project Setup
504 -
End-to-End Progress Notification Demo
141
-
Introduction to Elicitation
215 -
Elicitation Execution Flow Overview
277 -
Collecting Structured User Input
178 -
Architectural Pitfalls: Thread Blocking & Timeout Issues
184 -
Human-in-the-Loop: High-Level Design Discussion
247 -
MCP Server Project Setup
309 -
MCP Host Project Setup
587 -
Elicitation Final Demo
198
-
Introduction to MCP Resources
320 -
Architectural Problem: How MCP Servers Ingest Data
175 -
Core Concept: Designing Custom Resource URIs
250 -
How Resources Work
550 -
Core Concept: Understanding Resource Read Results
97 -
MCP Server Project Setup
639 -
MCP Host Client Component
247 -
MCP Host Project Setup
391 -
Resource Navigation Demo
251 -
LLM Insights via Resources: Integration Demo
236 -
Clarification: How to Compare Resources
76 -
Resource-Related Error Handling
137 -
Section Summary & Key Takeaways
217
-
Introduction to MCP Prompts
259 -
MCP Server Prompt Handlers
170 -
End-to-End Execution Flow
169 -
Enhancing UX: Implementing Auto-Complete for Prompts
265 -
MCP Server: Project Setup
446 -
Clarification: Prompt Message Structure & Roles
181 -
MCP Host: Project Setup
240 -
Context Injection: Prompt Execution Dem0
228 -
Section Summary & Key Takeaways
85
-
Capstone Overview: Analytics Agent
122 -
Security Boundaries: How AI Database Access is Controlled
277 -
System Architecture: High-Level Design Discussion
181 -
MCP Server: Project Setup
394 -
Fault Tolerance: SQL Error Handling for Agents
109 -
MCP Host: Project Setup
318 -
System Scalability: Strategy For Supporting More Tables
72 -
Capstone Execution: Analytics Agent Final Demo
370
Requirment
-
No prior AI knowledge is required. We will start from the fundamentals with a hands-on approach.
-
Knowledge of Java and Spring Boot is required.
-
OpenAI and Gemini APIs may incur small usage costs. Expected cost for this course is approximately 1 USD.
Outcomes
-
Build AI Agents using Spring AI and Java
-
Design Agentic Workflows and multi-turn reasoning systems
-
Implement MCP Servers using Spring Boot
-
Build and expose MCP Tools, Resources and Prompts
-
Integrate OpenAI, Gemini and local LLMs using Ollama
-
Build Human-in-the-Loop workflows using Elicitation
-
Handle asynchronous workflows using Progress Notifications
-
Write Integration Tests for MCP-based AI systems
-
Implement Structured Output and Prompt Engineering techniques
-
Use ChatClient, ChatMemory and Advisors effectively
0 Student
2 Courses
0 review