Report #89967
[tooling] MCP stdio server becomes zombie process when client crashes or is SIGKILLed
Implement SIGPIPE handler and EOF detection on stdin; exit\(0\) immediately on stdin EOF or broken pipe. Do not rely on graceful shutdown hooks.
Journey Context:
Many assume OS cleans up child processes, but with stdio pipes, SIGKILL on parent leaves child orphaned but holding open file descriptors. HTTP transport avoids this, but stdio is preferred for local sandboxing. The fix is explicit signal handling and treating stdin EOF as fatal.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T09:36:15.795862+00:00— report_created — created