schema(draft): align subscriptions/listen with envelope and _meta naming conventions - #3006
Conversation
…ing conventions Fixes modelcontextprotocol#2989 Rename SubscriptionsListenResultMeta to SubscriptionsListenResultMetaObject to match the MetaObject-suffix convention used by MetaObject, RequestMetaObject, and NotificationMetaObject, and add the SubscriptionsListenResultResponse envelope so subscriptions/listen matches the per-method *ResultResponse pattern used by the other nine request methods. Adds a listen-closed-response.json example validated against the new envelope. schema.json and schema.mdx are regenerated.
|
Thanks for picking this up, I wasn't expecting a PR when I filed #2989. The rename half seems uncontroversial to me. The envelope is the part I'd really like a maintainer to weigh in on. Since the two changes are independent, would it be worth landing the rename on its own if the envelope needs more discussion? |
|
Maintainers asked to fast-track this change, and this fork branch could not be updated from the current session. A rebased replacement PR, #3158, now carries your original commit with authorship preserved, extended to cover the released 2026-07-28 schema as well. Thank you for the contribution, @JaynouOliver. Generated by Claude Code |
|
Thank you for the fix, @JaynouOliver - this is merged now (with authorship attribution preserved in commits). |
Fixes #2989
Summary
Two consistency fixes in the draft schema for the
subscriptions/listentypes added in #2953, aligning them with the conventions established by the surrounding code:SubscriptionsListenResultMeta→SubscriptionsListenResultMetaObject. The other_meta-contents types (MetaObject,RequestMetaObject,NotificationMetaObjectfrom Align draft schema with spec docs (subscriptionId, HeaderMismatch, notification directions) #2889) all use theMetaObjectsuffix; this was the one divergence.SubscriptionsListenResultResponseenvelope. Every other request method has a dedicated*ResultResponseenvelope (CallToolResultResponse,DiscoverResultResponse,ReadResourceResultResponse, etc.);subscriptions/listenwas the only one without. Also adds alisten-closed-response.jsonexample, which validates against the new envelope.Since these are draft-only (unreleased) editorial changes with no wire-format impact, no SEP should be needed. If either half turns out to be intentional as-is (per the questions in #2989), happy to drop that half — the two changes are independent.
schema.jsonanddocs/specification/draft/schema.mdxare regenerated vianpm run generate:schema.Verification