Expand description
MCP client over the Streamable HTTP transport. RFC 0004; RFC 0012 (no local process spawn).
One client connects one remote server (https/http/unix/vsock) and
implements the client subset from RFC 0004: initialize + capability store,
tools (list+call), resources (list+read), subscribe/unsubscribe, ping. We
declare no client capabilities.
Each request is one POST of a JSON-RPC frame over a fresh connection (the
per-request socket timeout is the per-call bound); the response is
application/json or an SSE stream. Server→client notifications ride a
long-lived GET SSE stream, opened lazily on the first subscribe — a
background thread pumps them into a queue [Self::drain_notifications] serves.
Structs§
- McpClient
- A connected (and, after
McpClient::initialize, handshaken) remote MCP server over Streamable HTTP.