Skip to content
{mcpdesc}

Keep newer client input responses closed

In MCP 2026-07-28, sampling, elicitation, and roots responses are closed input responses rather than open results. Remove undefined fields; _meta is defined only for the sampling response. Earlier versions’ open-result behavior does not carry forward to these types.

In MCP 2026-07-28, sampling, elicitation, and roots responses are input responses, not results, and accept only the fields their types define.

Rule ID: mcp.input-response.closed
Owner: mcp
Surface: InputResponse
Kind: structural
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 not-applicable not-applicable applies

Source: expected-invalid/closed-step-responses-2026.json · Selected: /tools/0/interactionExamples/approved/steps/0/response

{
"roots": [
{
"uri": "file:///workspace/example"
}
],
"_meta": {
"trace": "r1"
}
}

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