Practical writing on Java, Spring, AI, and the craft of software engineering.
If you're building with Java and Spring (or trying to figure out where AI fits into your development workflow) you're in the right place. I write practical, beginner-friendly deep dives on Spring Boot, Spring AI, and software engineering fundamentals, collected here in chronological order.
Filtering by tag: Spring AI
Embabel MCP Servers and Tools: Supercharging Your Agentic Flows on the JVM
Learn how to add tools and MCP servers to your Embabel agents in Java. Build a blog writing agent that can research topics, calculate reading time, and generate front matter.

Embabel First Look: Building Agentic Flows on the JVM
A first look at Embabel, a framework by Rod Johnson for building agentic AI flows on the JVM. Learn how to create a blog writing agent with goal-oriented action planning.

Spring, Build Me a Coding Agent
Learn how to build an autonomous coding agent in Spring AI using the Spring AI Agent Utils library. This tutorial walks you through creating a CLI-based agent with file system access, shell commands, and skills.

Giving Your Spring AI Agents a Real Browser with the Browserbase Spring Boot Starter
Most AI agents can search the web. But what happens when they need to actually use it? I built a Spring Boot Starter for Browserbase that gives your agents a real, headless browser in three lines of configuration, plus a deep research agent to show it off.

Spring AI Prompt Caching: Stop Wasting Money on Repeated Tokens
If you have an unlimited budget to spend on AI, you probably don't need to read this. If you don't like saving money, feel free to skip this one. But if you're like me and want to reduce your AI application costs, prompt caching is a technique you need to...

Building MCP Clients with Spring AI: Augmenting LLMs with Custom Context
Learn how to build MCP (Model Context Protocol) clients using Spring AI to augment Large Language Models with custom context and functionality for your applications.

My CYC 2025 Demo: Why Building MCP Servers in Java Just Got Ridiculously Simple
Learn how Spring AI 1.1.0-M2 makes building MCP servers in Java incredibly simple with just annotations. No callbacks, no complex setup. Includes complete code from my Commit Your Code 2025 conference demo, showing how to expose your Java application's data to Claude and other AI assistants.

Running AI Models Locally with Docker and Spring AI
Master Docker Desktop's revolutionary Model Runner feature and discover how to build privacy-first AI applications with Spring Boot. This complete tutorial shows you how to run powerful open-source AI models like Gemma locally on your machine, eliminating API costs, protecting sensitive data, and simplifying development workflows. You'll get step-by-step instructions...
Supercharge Your LLM Applications with Model Context Protocol (MCP)
Learn how Model Context Protocol (MCP) enables LLMs to access external data sources and tools, with practical implementation guides for getting started today.
Understanding Tokens in Large Language Models with Spring AI
Learn how to track and manage token usage in Spring AI applications, including implementing custom response types and automated logging with AOP.
