It is one POST route. No socket, no event stream, no session. A client posts JSON-RPC, the
server answers JSON, the connection closes. That is a complete and conformant MCP server for a
surface that never pushes, and it is why this runs unchanged on a long-lived Node server, on a
Lambda, or at the edge: there is nothing to keep open.
A stream would only be needed for the things a server sends unprompted, progress on a long tool
or a server-initiated sampling request. An API exposing its own routes as tools sends none of
them, so requiring a stream would buy nothing and cost every deployment that cannot hold one.
The endpoint an agent talks to.
It is one POST route. No socket, no event stream, no session. A client posts JSON-RPC, the server answers JSON, the connection closes. That is a complete and conformant MCP server for a surface that never pushes, and it is why this runs unchanged on a long-lived Node server, on a Lambda, or at the edge: there is nothing to keep open.
A stream would only be needed for the things a server sends unprompted, progress on a long tool or a server-initiated sampling request. An API exposing its own routes as tools sends none of them, so requiring a stream would buy nothing and cost every deployment that cannot hold one.