3 ms·
Are we reading the same documents? MCP implementations are all websockets so it's not really transport agnostic. They try to talk about how you can use other tr
by Spivak 2y ago
Are we reading the same documents? MCP implementations are all websockets so it's not really transport agnostic. They try to talk
about how you can use other transports but its just that it's JSON-RPC and if you're willing to code both ends you can do whatever… which is always true. And MCP is explicitly a stateful protocol [1].
https://spec.modelcontextprotocol.io/specification/2025-03-26/#base-protocol https://spec.modelcontextprotocol.io/specification/2025-03-2...
* JSON-RPC message format
* Stateful connections
* Server and client capability negotiation
There's a draft [1] maybe about resolving this.
https://github.com/modelcontextprotocol/specification/pull/206 https://github.com/modelcontextprotocol/specification/pull/2...
- dartos 2y agohttps://spec.modelcontextprotocol.io/specification/2025-03-26/basic/transports/ https://spec.modelcontextprotocol.io/specification/2025-03-2... They mention stdio specifically under the transport section of the spec. Most protocols are transport agnostic, but http APIs tend to require HTTP methods. Http itself is transport agnostic, but truthfully all we’re doing is shuffling bytes around. If you look at the stateless examples in that PR, they both assume some state (specifically the capabilities) and just behave accordingly. To get the full features of the protocol (like notifications) a stateful connection would still be required.