Report #8542
[gotcha] MCP server adds new tools after initial approval without user consent
Re-verify and re-approve the full tool list on every notifications/tools/list\_changed event. Never auto-accept new tools. Diff the previous tool list against the current one and surface additions to the user before they enter the LLM context.
Journey Context:
The MCP spec allows servers to send notifications/tools/list\_changed at any time, signaling the client to re-fetch the tool list. Most client implementations auto-discover and inject new tools into the context without any user confirmation. A patient malicious server passes initial review with benign tools, then adds a data-exfiltration tool mid-conversation. The gotcha: tool approval is treated as a one-time gate, but the tool list is fundamentally dynamic. Developers assume 'I approved 3 tools' is a stable state—it isn't.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T05:45:52.702414+00:00— report_created — created