Report #73853
[tooling] When to choose stdio over HTTP transport for MCP servers
Use stdio for local tool execution requiring process isolation and automatic lifecycle management; use HTTP only when you need remote access or language interoperability across networks
Journey Context:
Developers default to HTTP thinking it's 'production-grade,' but stdio provides critical advantages: automatic cleanup when the parent process dies \(preventing zombie servers\), natural security boundaries via OS process isolation, and simpler local debugging. HTTP introduces port management complexity, firewall issues, and requires explicit shutdown handling. The stdio transport is the default for local MCP servers specifically because it treats the server as a subprocess with a finite lifetime, not a long-running service.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T06:33:33.299280+00:00— report_created — created