客户端
// Create STDIO client
client, err := client.NewStdioMCPClient("server-command", "arg1", "arg2")// Create StreamableHTTP client
client := client.NewStreamableHttpClient("http://localhost:8080/mcp")
func createStreamableHTTPClient() client.Client {
// Basic StreamableHTTP client
httpTransport, err := transport.NewStreamableHTTP(server.URL,
// Set timeout
transport.WithHTTPTimeout(30*time.Second),
// Set custom headers
transport.WithHTTPHeaders(map[string]string{
"X-Custom-Header": "custom-value",
"Y-Another-Header": "another-value",
}),
// With custom HTTP client
transport.WithHTTPBasicClient(&http.Client{}),
)
if err != nil {
log.Fatalf("Failed to create StreamableHTTP transport: %v", err)
}
c := client.NewClient(httpTransport)
return c
}客户端生命周期
优雅关闭
最后更新于