MCPcopy Create free account
hub / github.com/betta-tech/byo-coding-agent / NewHTTPClient

Function NewHTTPClient

internal/mcp/client.go:33–45  ·  view source on GitHub ↗

NewHTTPClient connects to a remote MCP server over the Streamable HTTP transport. Headers (auth tokens, API keys) are injected via a RoundTripper so they ride every request the session makes.

(ctx context.Context, name, endpoint string, headers map[string]string)

Source from the content-addressed store, hash-verified

31// transport. Headers (auth tokens, API keys) are injected via a RoundTripper
32// so they ride every request the session makes.
33func NewHTTPClient(ctx context.Context, name, endpoint string, headers map[string]string) (*Client, error) {
34 httpClient := &http.Client{
35 Transport: &headerRoundTripper{
36 base: http.DefaultTransport,
37 headers: headers,
38 },
39 }
40 transport := &sdk.StreamableClientTransport{
41 Endpoint: endpoint,
42 HTTPClient: httpClient,
43 }
44 return connect(ctx, name, transport)
45}
46
47func connect(ctx context.Context, name string, transport sdk.Transport) (*Client, error) {
48 impl := &sdk.Implementation{Name: "bettatech-harness", Version: "0.1"}

Callers 1

dialFunction · 0.85

Calls 1

connectFunction · 0.85

Tested by

no test coverage detected