- Java 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
- Add proper ListRootsResult wrapping in async client - Implement paginated listRoots methods in server components - Fix roots notification handling in async server - Add roots integration tests - Update architecture diagram and documentation layout The changes improve the roots feature implementation with proper result types, and robust notification handling. Adds thorough test coverage for roots functionality including async notifications and root addition/removal scenarios. Resolves #46 |
||
| .github | ||
| .mvn/wrapper | ||
| docs | ||
| mcp | ||
| mcp-docs | ||
| spring-ai-mcp | ||
| spring-ai-mcp-sample | ||
| .gitattributes | ||
| .gitignore | ||
| LICENSE | ||
| mvnw | ||
| mvnw.cmd | ||
| pom.xml | ||
| README.md | ||
| settings.xml | ||
Java & Spring MCP
Set of projects that provide Java SDK and Spring Framework integration for the Model Context Protocol. It enables Java applications to interact with AI models and tools through a standardized interface, supporting both synchronous and asynchronous communication patterns.
Projects
MCP Java SDK
Java implementation of the Model Context Protocol specification. It includes:
- Synchronous and asynchronous MCP Client and MCP Server implementations
- Standard MCP operations support (tool discovery, resource management, prompt handling, structured logging). Support for request and notification handling.
- Stdio and SSE transport implementations.
- Find more.
Spring AI MCP
The Spring integration module provides Spring-specific functionality:
- Integration with Spring AI's function calling system
- Spring-friendly abstractions for MCP clients
- Auto-configurations (WIP)
Installation
Add the following dependencies to your Maven project:
<!-- For core MCP functionality -->
<dependency>
<groupId>org.springframework.experimental</groupId>
<artifactId>mcp</artifactId>
<version>0.4.0-SNAPSHOT</version>
</dependency>
<!-- For Spring AI integration -->
<dependency>
<groupId>org.springframework.experimental</groupId>
<artifactId>spring-ai-mcp</artifactId>
<version>0.4.0-SNAPSHOT</version>
</dependency>
This is a milestone release, not available on Maven Central. Add this repository to your POM:
<repositories>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/libs-milestone-local</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
Example Demos
Explore these MCP examples in the spring-ai-examples/model-context-protocol repository:
- SQLite Simple - Demonstrates LLM integration with a database
- SQLite Chatbot - Interactive chatbot with SQLite database interaction
- Filesystem - Enables LLM interaction with local filesystem folders and files
- Brave - Enables natural language interactions with Brave Search, allowing you to perform internet searches.
- Spring-ai-mcp-sample - Showcases how to create and use MCP servers and clients with different transport modes and capabilities.
Documentation
Development
- Building from Source
mvn clean install
- Running Tests
mvn test
Contributing
This is an experimental Spring project. Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Submit a Pull Request
Team
- Christian Tzolov
- Dariusz Jędrzejczyk
Links
License
This project is licensed under the Apache License 2.0.