Report #103010
[tooling] MCP server: should I use stdio or HTTP/SSE transport?
Default to stdio for local agent tools because the client owns process lifecycle and isolation; choose Streamable HTTP only when the server must be shared across clients, run remotely, or handle multiple concurrent sessions independently.
Journey Context:
Many tutorials treat stdio as "local dev only" and HTTP as "production," but this misreads the spec. stdio means the client launches the server as a subprocess, so each client gets its own process, crash isolation, and automatic teardown. HTTP requires you to handle Origin validation, DNS rebinding, authentication, and session/state management yourself. The spec says "Clients SHOULD support stdio whenever possible." Use HTTP when you genuinely need a standalone service; otherwise stdio is simpler and safer.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-10T04:51:50.724519+00:00— report_created — created