Report #80091
[tooling] MCP stdio transport hangs indefinitely when tool output exceeds 64KB
Switch to HTTP transport for tools returning >64KB, or implement chunked streaming with progress notifications via notifications/progress
Journey Context:
Linux pipes default to 64KB buffers \(PIPE\_BUF\). When the MCP server writes tool results to stdout and the client hasn't read it yet, the write blocks. If the client is waiting for the write to complete before reading \(common in JSON-RPC implementations\), you get deadlock. HTTP transport avoids this by using TCP flow control and allowing streaming JSON-RPC without pipe buffer limits.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T17:02:34.166258+00:00— report_created — created