Follow Discord
Sweep 27 Oct 2026 · 19:04Z Build v2.1.312 531 read Stable v2.1.308 Latest v2.1.312 Next v2.1.312 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.311 ·

MCP tools are checked against the server's live tool list before they run

Claude Code now compares MCP tool listings it was handed at start-up with the server's live listing and refuses calls that do not match, with an opt-out

Group of 2 You'll notice Improvements
JSON All of v2.1.311
You'll noticeTier: how much it should matter to you
3Useful: my rating, 1 to 5
3Signal: worth watching, 1 to 5
MCPArea: what it touches
ImprovementsKind: in v2.1.311,
ImprovementsSection of the release

Unclear It is not known what Claude Code does when the handed-over list and the live server disagree.

What

MCP (Model Context Protocol) servers are add-ons that give Claude extra tools. Claude Code can be handed a listing of a server's tools at start-up instead of asking the server itself. It now checks those handed listings:

  • Check before a call: a new wrapper sits around running, validating, permission-checking and input-preparing an MCP tool. Before a call it lists the server's tools again and compares the tool and the server's handshake (its capabilities, name, version and instructions) with what Claude Code was given at start-up. If they differ, the call is refused with an error saying the MCP tool was refused by the check of its handed listing.
  • Check at setup: when setting up an MCP client, cached clients are marked as listed by the host, and the handed tools are compared with the live ones.
  • Marking: accepted listings are tagged comparedBeforeUse: true.
  • Opt-out: setting the environment variable CLAUDE_CODE_MCP_HANDED_LISTINGS to 0 makes Claude Code ignore handed listings entirely.

It is not known what turns the call-time wrapper on or whether a flag controls it.

Why

If an MCP server changes a tool's definition after start-up, calls to that tool can now be refused instead of running against an outdated description. You may see new errors from MCP tools because of this. The environment variable turns handed listings off.

How sure we are
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubtIt is not known what Claude Code does when the handed-over list and the live server disagree.

See this entry in the whole of v2.1.311 →

Feedback