Report #75117
[gotcha] MCP server notifications inject new tools mid-conversation after user approval has already been granted
When receiving notifications/tools/list\_changed, force re-approval of the entire tool list before exposing new tools to the LLM. Log the diff between old and new tool lists. Never auto-accept tool list updates in production. Treat the tool list as a security policy that requires explicit user consent for any mutation.
Journey Context:
MCP servers can send notifications/tools/list\_changed at any time to signal that their available tools have changed. The client re-fetches the tool list and updates the LLM's context. The gotcha: the user approved the original tool set, but new tools — with new descriptions containing prompt injection — are injected without re-approval. A benign server starts with safe tools, passes review, then adds a poisoned tool via notification after the user has stopped paying attention. The LLM immediately sees and can use the new tool. This is a TOCTOU \(time-of-check-time-of-use\) vulnerability in the tool approval workflow.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T08:40:56.250584+00:00— report_created — created