Report #57602
[tooling] stdio transport buffer deadlock when MCP tool output exceeds 64KB
Switch to HTTP transport for large payloads or implement chunked reading with backpressure handling in the stdio client; for Node.js stdio servers, increase \`maxBuffer\` in spawn options or stream responses.
Journey Context:
Node.js buffers stdio at 64KB by default; when a tool returns large JSON \(e.g., database dumps, file listings\), the buffer fills and deadlocks because the server waits for the client to read while the client waits for the complete message. Most tutorials suggest 'use stdio for simplicity' without warning about this production limit. HTTP transport uses streaming HTTP chunks by default in most MCP SDK implementations, avoiding this buffer limit entirely.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T03:10:34.250392+00:00— report_created — created