Repository navigation
Comparing changes
Open a pull request
base repository: modelcontextprotocol/java-sdk
base: v2.1.0
head repository: modelcontextprotocol/java-sdk
compare: v2.2.0-M1
- 9 commits
- 83 files changed
- 2 contributors
Commits on Oct 15, 2026
-
Signed-off-by: Daniel Garnier-Moiroux <git@garnier.wf>
Configuration menu - View commit details
-
Copy full SHA for 3d161fb - Browse repository at this point
Copy the full SHA 3d161fbView commit details -
Exclude conformance tests from the Maven Central release build
mcp's module-info refers to sibling modules by their JPMS names, which only exist once those modules are packaged as jars. Before the package phase, the reactor passes bare target/classes directories, which can't be automatic modules. So mcp is compiled at prepare-package. javadoc:aggregate forks a compile-phase build of the whole reactor, so the fork never produces mcp classes. Modules that depend on mcp at compile scope (the conformance tests) then fall back to Maven Central, where the release version doesn't exist yet. The conformance tests are not deployed, so leave them out of the release build. Signed-off-by: Daniel Garnier-Moiroux <git@garnier.wf>
Configuration menu - View commit details
-
Copy full SHA for 446f5c3 - Browse repository at this point
Copy the full SHA 446f5c3View commit details -
Use the Maven wrapper in all GitHub workflows
The ubuntu-24.04 runner image now ships Maven 3.10, where the staging metadata is written as maven-metadata-local.xml. central-publishing 0.7.0 only removes maven-metadata-central-staging.xml before bundling, so the leftover files end up in the bundle and Central rejects it ("Bundle has content that does NOT have a .pom file"). Use ./mvnw everywhere, so CI runs the Maven version pinned in maven-wrapper.properties instead of whatever the runner image ships. Signed-off-by: Daniel Garnier-Moiroux <git@garnier.wf>Configuration menu - View commit details
-
Copy full SHA for b43bf03 - Browse repository at this point
Copy the full SHA b43bf03View commit details -
Signed-off-by: Daniel Garnier-Moiroux <git@garnier.wf>
Configuration menu - View commit details
-
Copy full SHA for 5112339 - Browse repository at this point
Copy the full SHA 5112339View commit details
Commits on Oct 16, 2026
-
Remove conformance modules from publish snapshot workflow
Signed-off-by: Daniel Garnier-Moiroux <git@garnier.wf>
Configuration menu - View commit details
-
Copy full SHA for 596b1c0 - Browse repository at this point
Copy the full SHA 596b1c0View commit details -
Modern stateless server for MCP 2026-07-28 (#1170)
A new server in io.modelcontextprotocol.modern, next to the existing one and independent of the legacy McpSchema. Passes all 37 required 2026-07-28 conformance scenarios. - Pick a paradigm, not a server: one McpServer, sync or async repositories, no Reactor in sync code. The immediateExecution flag is gone; the transport decides where blocking code runs, and thread-locals from servlet filters just work. - Primitives are yours: tools, resources, prompts and completions come from repositories you implement. Dynamic, per-tenant, filtered and paginated catalogs, no SDK registry in the way. - Stream when it pays: a handler returns a single result (application/json) or a streaming body (SSE). No more JSON-only stateless vs. SSE-always sessions. - McpFeature as the one extension point: methods, handler, capabilities. - MRTR with requestState HMAC-sealed to principal, expiry, method and tool or resource. - server/discover, caching hints, subscriptions/listen fed by McpChangeFeed. - Tool arguments checked against inputSchema, structuredContent against outputSchema; prompt arguments and completions validated too. - McpException goes out as given; other exception messages stay in the log. - HTTP: POST only, keep-alives, disconnect detection, configurable error statuses, cross-origin refused by default. - Stdio: concurrent requests, cancellation, one writer, line size limit. - Logging dropped, as the revision deprecates it. Also: modern conformance server and CI job, conformance runs moved to 0.2.0-alpha.12, CONTRIBUTING record rules refined. Not yet: SEP-2243 custom headers, tasks, a modern client. Addresses, for users of the modern server - Sessions gone: #274, #499, #577, #738, #952, #1063 - No server-to-client requests: #1061 - Errors: #249, #737, #955, #1081, #1086 - HTTP: #293, #400, #539, #844, #880, #957, #1155 - Stdio: #303, #936 - Repositories: #578, #626, #941, #967 - Context and schema: #492, #766 - 2026-07-28 server side: #1001, #1004, #1009, #1010, #1011 Additionally, reinstall server-everything when its cached copy was pruned: If the install directory exists but lacks the server, e.g. after the OS cleaned up the temporary directory, delete it and install again instead of failing on every run. Signed-off-by: Dariusz Jędrzejczyk <dariusz.jedrzejczyk@broadcom.com>
Configuration menu - View commit details
-
Copy full SHA for 09020ac - Browse repository at this point
Copy the full SHA 09020acView commit details -
Upgrade Reactor to 2026.0.0-M2 (#1191)
Signed-off-by: Dariusz Jędrzejczyk <dariusz.jedrzejczyk@broadcom.com>
Configuration menu - View commit details
-
Copy full SHA for 87231ee - Browse repository at this point
Copy the full SHA 87231eeView commit details -
Remove modern conformance modules from publishing
Signed-off-by: Dariusz Jędrzejczyk <dariusz.jedrzejczyk@broadcom.com>
Configuration menu - View commit details
-
Copy full SHA for 95d180d - Browse repository at this point
Copy the full SHA 95d180dView commit details -
Signed-off-by: Dariusz Jędrzejczyk <dariusz.jedrzejczyk@broadcom.com>
Configuration menu - View commit details
-
Copy full SHA for f2aaa76 - Browse repository at this point
Copy the full SHA f2aaa76View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v2.1.0...v2.2.0-M1