mcp-go-sdk
by SetiabudiResearch·★ 7·综合分 32
用于实现 MCP 服务器的 Go SDK,支持工具执行、资源访问和提示处理。
developer-toolsai-llmother
4
Forks
0
活跃 Issue
15 个月前
最近提交
2 天前
收录于
概述
mcp-go-sdk 是 Go 语言中完整的 Model Context Protocol 实现,提供包括 stdio、SSE 和 WebSocket 在内的多种通信传输层选项。它支持基于反射的处理器调用、会话管理,以及同步和异步工具。该 SDK 还支持资源模式匹配以实现灵活的数据访问和提示模板渲染。
试试问 AI
装完之后,这里有 5 个你可以让 AI 做的事:
你:使用 Go 构建 CLI 应用的 MCP 服务器
你:通过 MCP 创建文件系统访问工具
你:开发基于 WebSocket 传输的 Web AI 应用
你:支持哪些传输协议?
你:我可以使用此 SDK 创建异步工具吗?
什么时候选它
当你需要用 Go 构建 MCP 服务器时,特别是对于以 Go 为核心的开发团队或需要与现有 Go 基础设施集成时。
什么时候不要选它
如果你需要更成熟的 SDK 且有更广泛的社区支持,或者尚未投入 Go 生态系统,请避免使用。
此 server 暴露的工具
从 README 抽取出 7 个工具greetfunc(name string) stringGreet a person by name
myToolfunc(arg1 string, arg2 int) (string, error)Process a string with an integer parameter
longRunningToolfunc(params string) errorExecute an asynchronous long-running operation
filesfunc(path string) ([]byte, error)Access files using path parameter
apifunc(version, endpoint string) (interface{}, error)Access API with version and endpoint parameters
confirmfunc(action string) stringGenerate a confirmation prompt for a given action
chatfunc(context string) []protocol.PromptMessageGenerate a chat prompt for a given context
可对比工具
mcp-python-sdkmcp-node-sdkmcp-rust-sdk
安装
go get github.com/SetiabudiResearch/mcp-go-sdk对于 Claude Desktop 集成:
{
"mcpServers": {
"mcp-go-example": {
"command": "go",
"args": ["run", "/path/to/your/server.go"]
}
}
}FAQ
- 支持哪些传输协议?
- 该 SDK 支持 stdio、SSE(服务器发送事件)和 WebSocket 传输协议,适用于不同的应用场景。
- 我可以使用此 SDK 创建异步工具吗?
- 是的,SDK 既支持通过 AddTool() 创建同步工具,也支持通过 AddAsyncTool() 创建异步工具。
mcp-go-sdk 对比
最后更新于 · 由 README + GitHub 公开数据自动生成。