Report #7696
[gotcha] Slow MCP tools cause timeouts and duplicate side-effect executions because the agent retries the call
Make slow, side-effecting tools idempotent using idempotency keys, or implement MCP's progress reporting \(notifications/progress\) to keep the connection alive during long-running tasks, preventing the client from assuming a timeout.
Journey Context:
External API calls via MCP can take longer than standard HTTP timeouts. If the client times out, it might silently retry or fail. If it retries a tool that writes to a database, you get duplicate records. Using MCP's built-in progress tokens keeps the connection active, while idempotency keys protect against unavoidable retries.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T03:34:25.499873+00:00— report_created — created