Skip to content

fix(mcp): comply with spec on protocol version negotiation#8

Open
morningto wants to merge 1 commit into
JiaboLi-GitHub:mainfrom
morningto:fix/lenient-protocol-version
Open

fix(mcp): comply with spec on protocol version negotiation#8
morningto wants to merge 1 commit into
JiaboLi-GitHub:mainfrom
morningto:fix/lenient-protocol-version

Conversation

@morningto
Copy link
Copy Markdown

The initialize handler returned JSON-RPC error -32602 for any client protocolVersion that did not exactly equal '2025-03-26'. This violates the MCP spec on version negotiation, which requires the server to respond with a version it does support and let the client decide whether to continue or disconnect.

The strict-equality check broke every client newer than 2025-03-26 (e.g. Claude Code now sends '2025-11-25'), forcing users to either pin to an old client or patch the vendor.

Fix: drop the rejection branch. The server already responds with kSupportedProtocolVersion in the result; that is the entire contract.

The initialize handler returned JSON-RPC error -32602 for any client
protocolVersion that did not exactly equal '2025-03-26'. This violates
the MCP spec on version negotiation, which requires the server to
respond with a version it does support and let the client decide
whether to continue or disconnect.

The strict-equality check broke every client newer than 2025-03-26
(e.g. Claude Code now sends '2025-11-25'), forcing users to either
pin to an old client or patch the vendor.

Fix: drop the rejection branch. The server already responds with
kSupportedProtocolVersion in the result; that is the entire contract.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant