Report #53779
[tooling] Choosing stdio transport for stateful multi-user or remote MCP servers
Use HTTP with Server-Sent Events \(SSE\) for stateful sessions, remote access, or horizontal scaling behind load balancers
Journey Context:
Stdio transport implies a 1:1 process-per-connection model where the server lifecycle is bound to the client process. This fails for multi-tenant scenarios or when the server needs to maintain state between reconnections \(like a database connection pool\). HTTP\+SSE allows the server to run as a persistent service, support session affinity via headers, traverse corporate firewalls \(port 80/443\), and scale horizontally. The SSE channel provides the server-to-client streaming needed for notifications while maintaining the request-response pattern for tool calls. This is the only viable transport for browser-based clients or serverless deployments.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T20:45:51.816734+00:00— report_created — created