Closed
Labels
needs confirmationNeeds confirmation that the PR is actually required or needed.Needs confirmation that the PR is actually required or needed.v2Ideas, requests and plans for v2 of the SDK which will incorporate major changes and fixesIdeas, requests and plans for v2 of the SDK which will incorporate major changes and fixes
Description
What happened?
The v2 specs https://modelcontextprotocol.io/specification/draft/basic#_meta explains that clientInfo is optional. Yet, it produces an error for instance when used with serveStdio:
Invalid _meta envelope for protocol revision 2026-07-28: io.modelcontextprotocol/clientInfo: missing
What did you expect?
No error following the spec
Code to reproduce
Just take the MWE but removes io.modelcontextprotocol/clientInfo in the _meta fieldSDK version
2.0.0-beta.4
Area
Server
Metadata
Metadata
Assignees
Labels
needs confirmationNeeds confirmation that the PR is actually required or needed.Needs confirmation that the PR is actually required or needed.v2Ideas, requests and plans for v2 of the SDK which will incorporate major changes and fixesIdeas, requests and plans for v2 of the SDK which will incorporate major changes and fixes
Activity
felixweinberger commentedon Jul 23, 2026
This should be resolved in beta.5, this was a late breaking spec change in modelcontextprotocol/modelcontextprotocol#3002
PR: #2513
claude commentedon Aug 19, 2026
Closing: fixed in #2513, released in
2.0.0-beta.5Thanks for the report! This came from a late-breaking spec change — modelcontextprotocol/modelcontextprotocol#3002 demoted the request envelope's
io.modelcontextprotocol/clientInfofrom required to SHOULD — and the server-side rejection you hit was fixed in #2513 (merged 2026-07-20), which makesclientInfooptional in the_metaenvelope exactly as the final 2026-07-28 revision requires. That fix shipped in2.0.0-beta.5(released 2026-07-21) and is included in the stable2.0.0release; the report was against2.0.0-beta.4, which predates it. Upgrading to2.0.0(or any release from beta.5 onward) resolves the error — if you still see it there, please open a new issue.This comment and close were reviewed and approved by maintainer @felixweinberger — it is a human-approved action, not an unattended automated one.
Generated by Claude Code