Glossary

MCP Streamable HTTP Transport: Definition and How It Works

MCP Streamable HTTP is the transport that lets an MCP client and server exchange messages over one HTTP URL instead of a local process. The client sends each message as an HTTP POST. The server replies with a single JSON answer, or a stream of events when it has more to say.

A simple way to picture it

Say your AI app wants to call a tool on a remote server. It POSTs a small JSON-RPC message to https://example.com/mcp, the way a web form posts data. The server sends back the result. That is Streamable HTTP: ordinary web requests carrying MCP messages.

How it works

A local server runs as a child process over stdio. A Streamable HTTP server exposes one URL, often ending in /mcp, that handles every request. Depending on the request, it answers with one application/json object or a text/event-stream response that can carry several messages before it closes.

Because it's a normal HTTPS endpoint, this is what makes a server "remote". See remote MCP server for the details. Good servers also check the Origin header, which guards against DNS-rebinding attacks from a browser tab.

What it replaced

An older transport called HTTP+SSE used two endpoints: one stream to receive messages and one POST endpoint to send them. Streamable HTTP folds both into a single endpoint, which is simpler to build. It now sits beside stdio as the two transports in the Model Context Protocol. An MCP client that only speaks stdio needs a bridge to reach one.

What the newest spec changed

As of September 2026, the current spec revision (2026-07-28) simplifies the transport further. It drops the standalone GET stream, the Mcp-Session-Id header and stream resumability via Last-Event-ID. Those all existed in revisions 2025-03-26 through 2025-11-25.

MCPifex's gateway uses the handshake-based transport, and clients on the current revision interoperate through the spec's backward-compatibility rules. To follow what else changed, read MCP spec changes.

Streamable HTTP on MCPifex

MCPifex's gateway is a Streamable HTTP server at https://mcpifex.com/mcp. Some clients, especially browser-based connectors, can't send custom headers. So the same API key works as an Authorization: Bearer header or as the first URL path segment, https://mcpifex.com/mcp/mcpx_....

See API keys and authentication for how keys work, the quickstart to connect a client, and the marketplace for hosted servers.

Sources

  1. Transports — Model Context Protocol Docs
  2. Streamable HTTP — Model Context Protocol Specification (2026-07-28)
  3. Versioning — Model Context Protocol Specification
  4. modelcontextprotocol/typescript-sdk — GitHub