mcp-go
mcp-go copied to clipboard
A Go implementation of the Model Context Protocol (MCP), enabling seamless integration between LLM applications and external data sources and tools.
  Note that field `capabilitiesMu` is a `RWMutex` in `MCPServer` for controlling concurrent read/write operations to field `capabilities`.  At most of time, `capabilities` 's members `resource/tools/prompts/` will only be set...
## Overview This PR adds support for running multiple SSE server instances with shared state. It introduces a flexible, technology-agnostic approach using channel builders that allow for distributed message delivery...
## Summary by CodeRabbit - **New Features** - Introduced a local client example that demonstrates listing and calling tools without network communication. - Added a local server that registers a...
## Summary by CodeRabbit - **New Features** - Added notifications for changes to resources, prompts, and tools lists, as well as individual resource updates, improving real-time awareness for clients. -...
add support for customize SSE client with http transport and http proxy ## Summary by CodeRabbit - **New Features** - Added support for configuring a proxy or custom HTTP transport...
The type assertation should be checked to prevent panicing allowing the caller to handle gracefully. ## Summary by CodeRabbit - **Bug Fixes** - Improved error handling to prevent crashes when...
I just used the example, compiled a binary file, and added the binary file to claude. But I found that claude could not be loaded, and I checked the log...
Replace `http.Server` by a generic `ListenAndServer`, so we do not enforce a specific implementation of the server. ## Summary by CodeRabbit - **Refactor** - Improved flexibility of server integration, allowing...
RT. sorry that i don't find any examples of read server process environment variables by using mcp-go ` { "mcpServers": { "mymcp":{ "url": "http://localhost:8080/sse", "env": { "MY_ENV": "value" } }...
Session store currently implemented as a SyncMap. This is a problem in clusters where multiple instances of the server are running and the load is distributed among them. Are you...