You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(extensions): add Unix socket transport for StreamableHttp extensions
In some service mesh environments (e.g. Kubernetes with an Envoy sidecar),
all outbound HTTP must route through a local proxy rather than making direct
TCP connections to remote endpoints. Adds an optional `socket` field to
`ExtensionConfig::StreamableHttp` so connections can be routed through a
Unix domain socket, with `uri` preserved as the HTTP Host header and path.
Implements `rmcp::StreamableHttpClient` for a new `UnixSocketHttpClient`
using hyper + `tokio::net::UnixStream`, plugging into rmcp's existing
`StreamableHttpClientTransport::with_client()` extension point. Supports
both filesystem sockets and Linux abstract sockets (`@` prefix). Auth at
the transport layer (e.g. mutual TLS via the sidecar) makes OAuth retry
unnecessary on this path.
Configured via `socket: "@egress.sock"` alongside the existing `uri` field
in YAML config or the goosed API — no change for TCP-only deployments.
0 commit comments