{"version":"2.1.311","anchor":"mcp-results-from-the-wire-codec-skip-schema-validation-tool","canonical_anchor":"mcp-results-from-the-wire-codec-skip-schema-validation-tool","heading":"MCP results are checked differently and tool checks are built when needed","tier":"internal","area":"MCP","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.311\/e\/mcp-results-from-the-wire-codec-skip-schema-validation-tool","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.311","markdown":"### MCP results are checked differently and tool checks are built when needed\n\nSome MCP results now skip a validation step, and per-tool output checks are prepared only when a tool needs them\n\n**Unclear.** Which MCP connections use the `mcp-wire-codec` format, and so skip the result check, is not stated.\n\n**What**\n\nClaude Code connects to outside tools through MCP, the Model Context Protocol. It has changed how it checks the replies those tools send back:\n\n- Replies from one particular message format, called `mcp-wire-codec`, now skip the step that checked each result against its expected structure. Before, every complete result was checked.\n\n- The check for each tool's output is now prepared only when that tool needs it, rather than for every tool at once. It is prepared for all tools when a structure definition contains `\"$id\"`.\n\n- Incoming messages are now checked by simpler built-in structure checks.\n\n**Why**\n\nListing tools can now cost less work. It could also change which badly formed replies are accepted from an MCP server.\n\n- Area: MCP\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}