Java SDK for the Model Context Protocol (MCP), providing seamless integration between Java and Spring applications and MCP-compliant AI resources and tools.
Provides Java 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.
The project consists of two main modules:
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.
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)
- Java 17 or later
- Maven 3.6 or later
- Spring AI 1.0.0-M4 or later
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>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.
mvn clean installmvn test- Group ID: org.springframework.experimental
- Version: 0.4.0-SNAPSHOT
- Java Version: 17
- Spring AI Version: 1.0.0-M4
This is an experimental Spring project. Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Submit a Pull Request
- Christian Tzolov
- Dariusz Jędrzejczyk
This project is licensed under the Apache License 2.0.
