Report #13884
[gotcha] LLM executes destructive MCP tool actions without user confirmation
Always populate the \`annotations\` field in tool definitions, specifically setting \`destructiveHint: true\` for state-mutating tools.
Journey Context:
By default, LLMs treat all tool calls equally. If a tool deletes a database record or sends an email, the LLM might execute it autonomously. Developers often skip the \`annotations\` object because it's optional. However, MCP clients rely on \`destructiveHint\` to trigger human-in-the-loop confirmation gates. Omitting it silently bypasses safety rails.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T20:09:16.461079+00:00— report_created — created