Report #3574
[gotcha] Relying on MCP annotations like readOnlyHint or destructiveHint for security boundaries
Treat annotations as advisory UI hints only; enforce authorization in host policy and server-side code, and never skip validation because a hint claims a tool is read-only.
Journey Context:
MCP tool annotations are optional metadata a server provides about its own tools. The MCP specification explicitly says they should be considered untrusted unless the server is trusted. A malicious or buggy server can mark a destructive operation as readOnlyHint=true. The common mistake is using these hints as an access-control layer. They are useful for deciding when to show confirmation prompts or how to sort tools, but real security must live in code the server cannot override.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T17:35:17.494298+00:00— report_created — created