Skip to content
{mcpdesc}

Supply structured content when an output schema needs it

A successful Tool example for a Tool with outputSchema must carry the required structuredContent. The schema describes that structured value, not the unstructured content array. Check success and error examples separately before deciding which payload is missing.

When a Tool declares outputSchema, a successful result contains structuredContent.

Rule ID: mcp.tool.structured-content.output-schema
Owner: mcp
Surface: CallToolResult · Path: structuredContent
Kind: semantic
Requirement level: must
Status: internal · Enforcement: internal

2024-11-05 2025-03-26 2025-06-18 2025-11-25 2026-07-28
not-applicable not-applicable applies applies applies

Conformance of structuredContent to outputSchema is checked by mcpdesc.tool.example.schema-conformance. Error results are governed by mcpdesc.tool.example.error-result.

Source: expected-invalid/invalid-tool-example-result-semantics.json · Selected: /tools/0/examples/missing/result

{
"resultType": "complete",
"content": [
{
"type": "text",
"text": "Missing structured value"
}
]
}

Source: expected-invalid/invalid-tool-interaction-example-semantics.json · Selected: /tools/0/interactionExamples/broken/result

{
"content": [
{
"type": "text",
"text": "Release preparation completed."
}
]
}

tool.yaml at immutable tag v0.9.0-rc.3.