https://github.com/modelcontextprotocol/modelcontextprotocol/issues/1788 • 290 KB fetched Open original page
SEP-1788: Clarify _meta Property Reserved Keys · Issue #1788 · modelcontextprotocol/modelcontextprotocol · GitHub
Skip to content
Navigation Menu
Sign in Appearance settings
* Platform
* AI CODE CREATION
* GitHub Copilot Write better code with AI
* GitHub Copilot app Direct agents from issue to merge
* MCP Registry Integrate external tools
* DEVELOPER WORKFLOWS
* Actions Automate any workflow
* Codespaces Instant dev environments
* Issues Plan and track work
* Code Review Manage code changes
* Code Quality Enforce quality at merge
* APPLICATION SECURITY
* GitHub Advanced Security Find and fix vulnerabilities
* Code security Secure your code as you build
* Secret protection Stop leaks before they start
* EXPLORE
* Why GitHub
* Documentation
* Blog
* Changelog
* Marketplace
View all features
* Solutions
* BY COMPANY SIZE
* Enterprises
* Small and medium teams
* Startups
* Nonprofits
* BY USE CASE
* App Modernization
* DevSecOps
* DevOps
* CI/CD
* View all use cases
* BY INDUSTRY
* Healthcare
* Financial services
* Manufacturing
* Government
* View all industries
View all solutions
* Resources
* EXPLORE BY TOPIC
* AI
* Software Development
* DevOps
* Security
* View all topics
* EXPLORE BY TYPE
* Customer stories
* Events & webinars
* Ebooks & reports
* Business insights
* GitHub Skills
* SUPPORT & SERVICES
* Documentation
* Customer support
* Community forum
* Trust center
* Partners
View all resources
* Open Source
* COMMUNITY
* GitHub Sponsors Fund open source developers
* PROGRAMS
* Security Lab
* Maintainer Community
* GitHub Stars
* Archive Program
* REPOSITORIES
* Topics
* Trending
* Collections
* Enterprise
* ENTERPRISE SOLUTIONS
* Enterprise platform AI-powered developer platform
* AVAILABLE ADD-ONS
* GitHub Advanced Security Enterprise-grade security features
* Copilot for Business Enterprise-grade AI features
* Premium Support Enterprise-grade 24/7 support
* Pricing
Search /
Sign in
Sign up Appearance settings
You signed in with another tab or window. Reload to refresh your session.
You signed out in another tab or window. Reload to refresh your session.
You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
Uh oh!
There was an error while loading. Please reload this page .
modelcontextprotocol
/
modelcontextprotocol
Public
*
Notifications
You must be signed in to change notification settings
*
Fork
1.8k
*
Star
9.2k
*
Code
*
Issues
68
*
Pull requests
77
*
Discussions
*
Actions
*
Projects
*
Security and quality
1
*
Insights
Additional navigation options
*
Code
*
Issues
*
Pull requests
*
Discussions
*
Actions
*
Projects
*
Security and quality
*
Insights
SEP-1788: Clarify _meta Property Reserved Keys #1788
New issue
Copy link
New issue
Copy link
Closed
Closed
SEP-1788: Clarify _meta Property Reserved Keys #1788
Copy link
Assignees
Labels
SEP draft SEP proposal with a sponsor. SEP proposal with a sponsor.
Description
domdomegg
opened on Nov 10, 2025
Issue body actions
SEP-1788: Clarify _meta Property Reserved Keys
Type : Standards Track
Author : Adam Jones ( @domdomegg )
Sponsor : Tadas Antanavicius ( @tadasant )
Status : Proposal
Abstract
This SEP clarifies which keys in the _meta property are reserved for MCP protocol use and which are available for arbitrary use by implementations. The specification currently uses ambiguous language around "reserved" keys. This proposal establishes clear rules: only progressToken (for backwards compatibility) and keys with prefix io.modelcontextprotocol are reserved; all other keys are available for implementation-specific metadata.
Motivation
The current spec states that _meta is "reserved by MCP" but has confusing language around which keys implementations can use today. As a result developers don't know if they can safely add custom keys without risking conflicts with future spec additions. For more details on the ambiguity see #264 and #1403 .
Additionally, there's no clear namespace strategy to prevent collisions between custom keys and future protocol additions.
Specification
Changes to _meta Documentation
Replace the current preamble text:
The _meta property/parameter is reserved by MCP to allow clients and servers to attach additional metadata to their interactions.
With:
The _meta property/parameter allows clients and servers to attach additional metadata to their interactions.
Reserved Keys
Add a new "Reserved Keys" section to the _meta documentation:
Reserved for MCP protocol use:
* progressToken (for backwards compatibility)
* Any key with a prefix io.modelcontextprotocol
* Examples: io.modelcontextprotocol/auth , io.modelcontextprotocol.registry/version
All other keys are available for arbitrary use by implementations.
Implementations SHOULD use reverse DNS notation for custom keys (e.g., com.example/customData ) to avoid collisions with other implementations. Future MCP protocol additions will only use the reserved patterns above.
(note that this restricts future MCP additions to only use io.modelcontextprotocol prefix, which is more strict than at the moment, but I think should be fine?)
Rationale
Reverse DNS for protocol keys : Uses io.modelcontextprotocol (not modelcontextprotocol.io ) for consistency with the MCP Registry namespacing . This avoids URL coupling and provides better alphabetical sorting. Also see discussion about this at #1724 (comment) .
Keep progressToken without namespace : Moving it would be a breaking change. We explicitly reserve it for backwards compatibility and use namespacing for all future additions.
Backward Compatibility
This change is purely clarifying and backwards compatible. I don't think any SDK changes are necessary.
Reference Implementation
Pull Request: #1403
Reactions are currently unavailable
Activity
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Metadata
Metadata
Assignees
* tadasant
Labels
SEP draft SEP proposal with a sponsor. SEP proposal with a sponsor.
Type
No type
Projects
* SEP Review Pipeline
Status No status
Show more project fields
Milestone
No milestone
Relationships
None yet
Development
No branches or pull requests
Issue actions
* Open in GitHub Copilot app
Footer
(c) 2026 GitHub, Inc.
Footer navigation
*
Terms
*
Privacy
*
Security
*
Status
*
Community
*
Docs
*
Contact
*
Manage cookies
*
Do not share my personal information
You can’t perform that action at this time.