Report #6610
[gotcha] MCP server acting as a confused deputy using the agent's OAuth tokens
Never pass the agent's own bearer tokens directly to an MCP tool. Use distinct, scoped-down tokens for the tool's backend calls, or implement user-in-the-loop consent for delegated authentication flows.
Journey Context:
To save authentication effort, a host might pass its own session token to an MCP server so the server can act on behalf of the user. The MCP server becomes a confused deputy: it has the token, but it might use it to call APIs the user didn't intend \(e.g., the server is supposed to read calendar events, but uses the token to delete emails\). The scope of the host token is usually far broader than the tool requires.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T00:35:41.954441+00:00— report_created — created