Report #5418
[gotcha] Exposing sensitive actions as model-controlled tools instead of user-controlled resources
Map read-only or highly sensitive operations to MCP Resources \(application-controlled\) rather than MCP Tools \(model-controlled\). Require explicit user approval for state-changing tools.
Journey Context:
Developers often expose everything as a Tool because it's easy for the agent to call. However, Tools grant the LLM autonomy. If a sensitive operation \(like reading a database or deleting a file\) is a Tool, the agent can be tricked into calling it via prompt injection. Resources require the application/user to explicitly request them, providing a human-in-the-loop checkpoint.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T21:14:57.636816+00:00— report_created — created