Mirror of https://github.com/modelcontextprotocol/java-sdk — The official Java SDK for Model Context Protocol servers and clients. Maintained in collaboration with Spring AI
- Java 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
This pull request creates two modules, `mcp-json` and `mcp-json-jackson`. It removes the `com.fasterxml.jackson.core:jackson-databind` and `com.networknt:json-schema-validator` dependencies from the `mcp` module. The `mcp` module now only depends on `com.fasterxml.jackson.core:jackson-annotations`. To use Jackson, you have to add `mcp-jackson` to your dependencies in addition to `mcp`. I added the dependency `mcp-jackson` to both `mcp-spring-mvc` and `mcp-spring-webflux` to avoid a breaking change in those modules. It provides two [SPI](https://docs.oracle.com/javase/tutorial/sound/SPI-intro.html) `JsonSchemaValidatorSupplier` and `JacksonJsonSchemaValidatorSupplier` to allow easy replacement for consumers who don't want to use Jackson. This pull request also ensures no `McpJsonMapper` is instantiated if one is provided via a builder method. Only if the builders don't receive a `McpJsonMapper` mapper, one is instantiated in the `build` method of the builder. The logic behind this is to allow frameworks to provide a `McpJsonMapper` mapper singleton implementation and feed it to the builders without paying the price of instantiating `McpJsonMappers`, which will not be used. The goal is to be able to use the `ObjectMapper` singleton of an application also for the MCP code. Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com> |
||
| .github | ||
| .mvn/wrapper | ||
| mcp | ||
| mcp-bom | ||
| mcp-json | ||
| mcp-json-jackson2 | ||
| mcp-spring | ||
| mcp-test | ||
| .gitattributes | ||
| .gitignore | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| migration-0.8.0.md | ||
| mvnw | ||
| mvnw.cmd | ||
| pom.xml | ||
| README.md | ||
| SECURITY.md | ||
MCP Java SDK
A set of projects that provide Java SDK integration for the Model Context Protocol. This SDK enables Java applications to interact with AI models and tools through a standardized interface, supporting both synchronous and asynchronous communication patterns.
📚 Reference Documentation
MCP Java SDK documentation
For comprehensive guides and SDK API documentation
- Features - Overview the features provided by the Java MCP SDK
- Architecture - Java MCP SDK architecture overview.
- Java Dependencies / BOM - Java dependencies and BOM.
- Java MCP Client - Learn how to use the MCP client to interact with MCP servers.
- Java MCP Server - Learn how to implement and configure a MCP servers.
Spring AI MCP documentation
Spring AI MCP extends the MCP Java SDK with Spring Boot integration, providing both client and server starters. Bootstrap your AI applications with MCP support using Spring Initializer.
Development
Building from Source
./mvnw clean install -DskipTests
Running Tests
To run the tests you have to pre-install Docker and npx.
./mvnw test
Contributing
Contributions are welcome! Please follow the Contributing Guidelines.
Team
- Christian Tzolov
- Dariusz Jędrzejczyk
Links
License
This project is licensed under the MIT License.