The MCP Java SDK is a Java 17+ library providing a client and server framework for the Model Context Protocol, with modular Maven projects and conformance tests. It includes Jackson-based JSON bindings and Reactor-based reactive APIs, plus Spring AI integration in newer releases.
Collecting history — the radar snapshots this repo daily. The trend line appears after 3 days of data (1 so far).
What it is
The MCP Java SDK provides Java APIs to interact with AI models and tools via the Model Context Protocol. It supports both client and server transports, with modular architecture including core, JSON bindings, and test modules. The project describes a reference MCP implementation with Reactive Streams (Project Reactor) and a synchronous facade, using JDK HttpClient for client transport and Servlet for server transport. It includes Spring AI integration in newer releases.
How it works
Key design choices include:
- JSON serialization via Jackson bindings (Jackson 3 as default, Jackson 2 available via profile) with an abstraction layer in mcp-core.
- Reactive Streams-based public API (Project Reactor internally) plus a synchronous blocking facade.
- Logging through SLF4J; observability via Reactor Context.
- Client transport defaults to JDK HttpClient (Java 11+); server transport uses Jakarta Servlet in core.
- Authorization hooks are pluggable and not built-in, to remain environment-neutral.
- The repository is organized into modules: mcp-bom, mcp-core, mcp-json-jackson2, mcp-json-jackson3, mcp, mcp-test, with Spring integrations in Spring AI.
Getting started
Development and build steps shown in README:
- Building from source: ```bash ./mvnw clean install -DskipTests
- Running tests: ```bash
./mvnw test
``` (requires Docker and npx pre-installed for conformance tests as described in the Conformance section)
## Recent releases
Latest releases include:
- v2.0.0 v2.0.0 (2026-06-11): MCP Java SDK 2.0.0 GA release
- v2.0.0-RC1 v2.0.0-RC1 (2026-06-04): features including enforcing required MCP spec fields and request URI exposure
- v0.18.3 v0.18.3 (2026-06-09): GHSA fix and changelog link
- v2.0.0-M3 (2026-05-21): feature: enforce required MCP spec fields; fix for endpoint validation
- v1.1.3 v1.1.3 (2026-05-21): SSE endpoint validation and default validators
## Traction
Notable repo activity figures present:
- stars: 3635
- forks: 1100
- open_issues: 290
## License
MIT
## Links
GitHub Repository: https://github.com/modelcontextprotocol/java-sdk
Issue Tracker: https://github.com/modelcontextprotocol/java-sdk/issues
CI/CD: https://github.com/modelcontextprotocol/java-sdk/actions






