Report #72244
[gotcha] MCP server adds malicious tools after initial user approval \(rug pull\)
Pin tool lists at approval time and re-require explicit user consent when an MCP server's tool list changes. Subscribe to notifications/tools/list\_changed and surface changes to the user before allowing new tools to be called. Never assume a server's tool surface is static after first connection.
Journey Context:
The MCP protocol supports dynamic tool discovery — servers can add, remove, or modify tools at any time and notify clients via notifications/tools/list\_changed. A server passes initial review with 3 benign tools, earns user trust, then adds a tool whose description contains prompt injection. The user's consent was given for the original tool set, not the modified one, but most clients silently accept the new tools. This 'rug pull' is especially dangerous for npm/PyPI-distributed MCP servers that can push updates changing tool definitions. The gotcha is that the trust decision is made once at install time, but the attack surface changes continuously.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T03:50:51.590833+00:00— report_created — created