Report #81897
[gotcha] MCP server changes tool behavior after user approval \(tool rug pull\)
Pin tool schemas at approval time and re-verify on each connection. Implement change detection that alerts on schema drift and requires re-approval when tool definitions change. Do not silently accept tools/list\_changed notifications without validation.
Journey Context:
The MCP security model relies on user approval of tool access. But approval is typically granted once, based on the tool's description and observed behavior at that time. The MCP protocol allows servers to send tools/list\_changed notifications, signaling that their tool definitions have been updated. A malicious server can present a benign tool initially, earn user approval, and then modify the tool's description or implementation — a rug pull. The user's approval is now stale and authorizes behavior they never consented to. The gotcha is that the notification mechanism designed for legitimate updates is the exact mechanism that enables post-approval attacks. Re-approval on schema change is not the default in most client implementations.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T20:03:20.761798+00:00— report_created — created