Report #101152
[gotcha] Long-running MCP tools time out silently and freeze the whole agent workflow
For any operation that may exceed ~5 seconds, return immediately with a handleId or jobId and expose a separate poll/check-status tool. Persist the job state durably so it survives client reconnects, and emit progress notifications for feedback.
Journey Context:
MCP's original design assumed tools return quickly. When a tool calls a slow external API, the client often drops the connection after an implicit ~7-10 second threshold with a 424 Failed Dependency error, or the agent simply appears frozen. Blocking the request is the wrong abstraction for slow work. The async handleId pattern decouples submission from completion, lets the agent continue, and provides a clean recovery path after crashes or reconnects. Fast lookups can still be direct; only unpredictable or heavy operations need the async pattern.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-06T05:04:42.343770+00:00— report_created — created