-
Notifications
You must be signed in to change notification settings - Fork 930
feat: Adds _meta to additional interface types. #710
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
@@ -30,6 +30,7 @@ export interface Request { | |||
* If specified, the caller is requesting out-of-band progress notifications for this request (as represented by notifications/progress). The value of this parameter is an opaque token that will be attached to any subsequent notifications. The receiver is not obligated to provide these notifications. | |||
*/ | |||
progressToken?: ProgressToken; | |||
[key: string]: unknown; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems like this was likely a mistake/omission -- presumably request metadata is intended to allow additional keys and not just progressToken
, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you. I'll accept as is but will add a PR to change the wording of the description to ensure people understand _meta is always reserved by the protocol.
@@ -472,6 +473,11 @@ export interface Resource { | |||
* This can be used by Hosts to display file sizes and estimate context window usage. | |||
*/ | |||
size?: number; | |||
|
|||
/** | |||
* Reserved field for additional metadata. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Notable that this is "reserved by MCP for additional metadata", as the other fields.
This adds
_meta
on additional resource types throughout the specification, specifically those that appear as arrays in list results or multi-part content.Motivation and Context
See discussion for motivation.
How Has This Been Tested?
Since this change merely adds additional optional inert metadata, it should be a safe non-breaking change for all existing clients and servers.
Breaking Changes
NONE
Types of changes
Checklist