Recently, MCP (Multi-Channel Processing) announced the specification for streaming HTTP on its official website and released version 1.10.0 of its Typescript SDK on April 17th, which supports this new feature. This marks MCP's official departure from the traditional SSE (Server-Sent Events) protocol, with streaming HTTP expected to become the future standard. For developers, this means a more flexible and efficient development experience.
First, let's understand the SSE protocol. SSE is a protocol that maintains a persistent connection with the server, which continuously pushes messages to the client. However, this persistent connection is not ideal for all scenarios. For example, when using Cloudflare Workers to host remote MCP, the server sends messages to the client every 5 seconds, rapidly consuming all free compute credits even without any activity.
The introduction of streaming HTTP effectively solves this problem. Compared to SSE, streaming HTTP allows developers to communicate without needing a persistent connection. The MCP server can now interact using classic POST and GET requests, just like a traditional HTTP server. This greatly simplifies server management; developers only need to implement simple function calls and disconnect after task completion.
More noteworthy is that streaming HTTP retains the option to use SSE, allowing developers to choose the preferred method. This combines the advantages of both approaches, offering greater flexibility.
Although the Typescript SDK for streaming HTTP has been released, client-side support is currently in its early stages. According to the latest news, client-side support for HTTP servers will be launched soon. This progress will further promote the development of remote hosting, making MCP server hosting as simple as other Express applications. This change not only lowers the development threshold but also improves efficiency, greatly facilitating developers' innovation and exploration in the MCP field.