go-mcp
by MegaGrindStone·★ 46·综合分 36
Go 实现的 MCP 协议,提供服务和客户端功能,支持工具、资源和提示。
developer-toolsai-llmfile-system
9
Forks
2
活跃 Issue
13 个月前
最近提交
2 天前
收录于
概述
go-mcp 是一个完整的 Go 实现的 MCP 协议,提供服务器和客户端库。它支持所有 MCP 功能,包括工具、资源和提示,并有可插拔的传输选项(SSE 和标准 IO)。实现包括全面的错误处理、进度跟踪和会话管理。代码结构清晰,有明确的示例,并遵循官方 MCP 规范。
试试问 AI
装完之后,这里有 5 个你可以让 AI 做的事:
你:构建具有工具集成的基于 Go 的 LLM 应用程序
你:为文件系统操作创建 MCP 服务器
你:实现实时通知和数据同步
你:这个实现是否可用于生产环境?
你:有哪些传输选项可用?
什么时候选它
当您需要使用 Go 语言构建 MCP 服务器或客户端,特别是需要可插拔的传输选项(如 SSE 或标准输入输出)时,选择 go-mcp。
什么时候不要选它
避免使用 go-mcp 如果您需要稳定性,因为主分支包含未发布的变化且可能不稳定。如果您需要更成熟的实现,请考虑替代方案。
可对比工具
modelcontextprotocol/serversnomic-ai/duck-mcpgithub.com/modelcontextprotocol/sdk-python
安装
go get github.com/MegaGrindStone/go-mcp对于 Claude Desktop,将其添加到您的配置中:
{
"mcpServers": {
"go-mcp": {
"command": "go",
"args": ["run", "github.com/MegaGrindStone/go-mcp"],
"env": {
"GOPATH": ""
}
}
}
}FAQ
- 这个实现是否可用于生产环境?
- README 提示主分支可能不稳定,建议使用已标记的版本。目前仍在 0.x 版本,直到 v1.0.0 发布,次要版本更新可能会引入破坏性更改。
- 有哪些传输选项可用?
- 库支持服务器发送事件(SSE)用于基于网络的实时更新,以及标准 IO 用于命令行工具集成。
go-mcp 对比
最后更新于 · 由 README + GitHub 公开数据自动生成。