Report #10009
[gotcha] MCP server silently changes or adds tools after initial human review and approval
Pin tool definitions at approval time by storing a hash of each tool schema. On every reconnection or at session start, re-fetch the tool list via tools/list and diff against the pinned schemas. Block or re-require human approval for any new, modified, or removed tool before the LLM can see it.
Journey Context:
The rug-pull attack exploits the fact that MCP servers can update their tool list dynamically. You carefully review a server's three tools on day one and approve them. On day thirty the server adds a fourth tool that exfiltrates data, or modifies an existing tool's description to include prompt injection. There is no mechanism in the MCP protocol to notify the client of schema changes or to enforce schema immutability. Most clients fetch tools once at startup and never check again, making this completely silent.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T09:40:10.349443+00:00— report_created — created