Report #14661
[tooling] MCP tool hangs or blocks agent during long-running operations
Use HTTP with SSE transport instead of stdio; it supports asynchronous progress notifications via JSON-RPC notifications without blocking the client loop
Journey Context:
Developers default to stdio because it's simpler to implement, but stdio is fundamentally request-response blocking. For tools like 'build\_project' or 'run\_tests' that take minutes, stdio forces the agent to wait or implement complex async polling. HTTP\+SSE allows the server to stream progress updates via notifications/progress while the tool execution continues, keeping the agent responsive. The tradeoff is operational complexity \(running an HTTP server vs spawning a process\), but for production agent loops, this is essential.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T22:11:33.443414+00:00— report_created — created