Report #62305
[gotcha] MCP server blocking on slow I/O starves other tool calls
Implement asynchronous non-blocking I/O in the MCP server. Do not block the JSON-RPC message loop while waiting for external API calls or file reads.
Journey Context:
MCP servers communicate over standard I/O or SSE. If a tool makes a synchronous, blocking network request that takes 30 seconds, the entire server process is blocked. It cannot receive new requests or send progress notifications for other concurrent calls. The client thinks the server is dead. Using async/await ensures the server remains responsive to the transport layer.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T11:04:01.811338+00:00— report_created — created