Resource Contents entries acquire _meta from MCP 2025-06-18. This is separate from result-level _meta, which is available in every supported version. Move or remove a misplaced value only after deciding which object it describes.
Requirement
Section titled “Requirement”Resource contents carry _meta only from MCP 2025-06-18, in Resource examples and in embedded resources.
Details
Section titled “Details”Rule ID: mcp.resource-contents.meta.protocol-version
Owner: mcp
Surface: ResourceContents · Path: _meta
Kind: structural
Requirement level: must
Status: internal · Enforcement: internal
Protocol version applicability
Section titled “Protocol version applicability”2024-11-05 |
2025-03-26 |
2025-06-18 |
2025-11-25 |
2026-07-28 |
|---|---|---|---|---|
| applies | applies | applies | applies | applies |
Required by
Section titled “Required by”- MCP Description 0.9.0, Section 10.4.4
- 10. Resources and Resource Templates: req-resource-contents-meta
Based on
Section titled “Based on”- Tier 1 — MCP schema.ts and normative specification text: MCP 2024-11-05 and 2025-03-26 schema.ts, interface ResourceContents (uri, mimeType); MCP 2025-06-18 to 2026-07-28 schema.ts, interface ResourceContents (adds _meta)
Examples
Section titled “Examples”Invalid example
Section titled “Invalid example”Source: expected-invalid/resource-example-result-semantics.json · Selected: /resources/1/examples/unsupported-metadata/result/contents/0
{ "uri": "test://legacy", "text": "legacy", "_meta": { "unsupported": true }}Rule Source Code
Section titled “Rule Source Code”content.yaml at immutable tag v0.9.0-rc.3.