Report #65555
[gotcha] Auto-approving MCP tool calls creates a silent execution path from prompt injection to real-world impact
Never auto-approve all tools across all servers. Implement tiered approval: auto-approve only read-only idempotent tools from trusted servers. Require explicit user confirmation for any tool that modifies state, sends data externally, or accesses sensitive resources. Log every approval decision.
Journey Context:
Many MCP clients offer auto-approve or always-allow modes to reduce interaction friction. When enabled, any tool from any connected server can execute without user confirmation. This bridges the gap between a prompt injection vulnerability and actual compromise: a malicious instruction embedded in a tool description or tool result can trigger a destructive tool call that executes immediately with no human gate. The gotcha is that auto-approve is typically a global setting, not per-server or per-tool. Users enable it for one trusted tool and unintentionally grant blanket execution to every tool on every server, including ones added later or modified via rug pull.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T16:31:11.716823+00:00— report_created — created