What is the SSE Transport?

2 min read Updated

The SSE transport (HTTP+SSE) was the original remote transport in MCP protocol revision 2024-11-05, using a GET-opened Server-Sent Events stream for server-to-client messages and a separate POST endpoint for client-to-server messages. It is deprecated, replaced by Streamable HTTP in revision 2025-03-26.

WHY IT MATTERS

In the HTTP+SSE design, the client first issued a GET request to open a long-lived SSE stream. The server's first event was an endpoint event telling the client which URL to POST its JSON-RPC messages to; all server messages then arrived over the SSE stream. This split-endpoint model had practical problems: it forced servers to hold a long-lived connection open for the entire session, made resuming after a dropped connection awkward, and complicated stateless and serverless deployments.

Spec revision 2025-03-26 replaced it with the Streamable HTTP transport, which uses a single MCP endpoint, makes SSE streaming optional per response, and adds session management and stream resumability via SSE event IDs and Last-Event-ID.

Backwards compatibility is explicitly described in the current spec:

  • Servers supporting older clients can continue hosting the old SSE and POST endpoints alongside the new MCP endpoint.
  • Clients supporting older servers POST an InitializeRequest to the server URL first; if that fails with 400, 404 or 405, they fall back to a GET expecting an endpoint event, which identifies an old HTTP+SSE server.

You will still encounter "SSE" as a label in client configuration files and older server documentation. For new deployments it should be read as legacy: current-spec servers expose Streamable HTTP, which may itself stream responses over SSE — the deprecated part is the two-endpoint transport, not Server-Sent Events as a technology.

See sse transport working in your own stack — route your MCP servers through PolicyLayer and every tool call is checked against policy before it runs.

GOVERN YOUR MCP SERVERS →

Enforced before the call runs. Nothing to install.

HOW POLICYLAYER USES THIS

PolicyLayer's catalogue at policylayer.com/tools includes servers built across spec generations, and transport choice is part of what a scan observes. The PolicyLayer gateway connects clients over Streamable HTTP, so fleets fronted by the gateway are not dependent on individual upstream servers' legacy transport behaviour.

FREQUENTLY ASKED QUESTIONS

Is the SSE transport still supported?
It is deprecated as of spec revision 2025-03-26 but not erased: the current spec documents how servers and clients can maintain backwards compatibility with HTTP+SSE peers from revision 2024-11-05.
Why was HTTP+SSE replaced?
Its two-endpoint design required a permanently open SSE connection per session and handled reconnection poorly. Streamable HTTP uses one endpoint, makes streaming optional, and supports resumable streams and session management.
Does deprecating SSE transport mean MCP no longer uses Server-Sent Events?
No. Streamable HTTP still uses SSE to stream responses and server messages when needed. What was deprecated is the older HTTP+SSE transport architecture, not SSE itself.

FURTHER READING

Let agents act without letting them run wild.

Route your MCP servers through PolicyLayer and every tool call is checked against your policy before it runs — allow, deny, or require approval. Per-identity grants. Full audit log. Live in minutes.

Free to start. No card required.

43,000+ MCP servers and 220,000+ tools scanned and risk-classified.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.