Symptom
A tool on a stdio MCP server that starts an external script never returns; the call hangs until the client times out.
Evidence what you'll see
- The same code works over other transports
- The external script itself exits normally
- Stray prints from children can also corrupt the JSON-RPC stream
Cause
Child processes inherited the server's stdin and stdout. On Windows a pending stdin read blocks the child, and a child writing to stdout writes into the protocol stream.
Fix steps
0 of 2 done
Your check marks stay in this browser only.
Verify the fix worked
- Call the tool again and confirm it returns the script's output without waiting for a timeout.
Sources and credit
Summarized in our own words from these public reports. Credit goes to their authors.
Provided as is, without warranty. Try changes in a non-production environment and back up first. Security-related steps: verify against the official docs. Terms · Request removal or attribution change
Hit an error we don't cover? Submit it