modelcontextprotocol/go-sdk
AI 工程Model Context Protocol 官方 Go SDK,提供构建 MCP 服务端与客户端的包,并包含 JSON-RPC 传输和 OAuth 支持。
项目介绍
这是 Model Context Protocol(MCP)的官方 Go SDK,与 Google 合作维护。它提供可导入的包:mcp 是构建和使用 MCP 客户端、服务端的主要 API,jsonrpc 供自行实现传输层时使用,auth 与 oauthex 提供 OAuth 相关能力 包与功能文档。它面向希望让工具或服务兼容 MCP 的 Go 开发者,省去手写协议层的工作。
快速使用
先创建 mcp.Server、注册工具,再通过 mcp.Transport 运行。README 的 stdio 示例定义了一个 greet 工具,并用带 jsonschema 标签的结构体描述输入输出 入门示例:
server := mcp.NewServer(&mcp.Implementation{Name: "greeter", Version: "v1.0.0"}, nil)
mcp.AddTool(server, &mcp.Tool{Name: "greet", Description: "say hi"}, SayHi)
if err := server.Run(context.Background(), &mcp.StdioTransport{}); err != nil {
log.Fatal(err)
}
客户端用 mcp.CommandTransport 连接该服务端,通过 session.CallTool 调用工具,再遍历结果中的 mcp.TextContent 读取文本 入门示例。实际使用时,把 exec.Command 指向你的服务端程序,并按需修改工具名和参数。更完整的客户端与服务端示例在 examples 目录;协议本身可参考 MCP 官方网站。
版本兼容
SDK 版本与 MCP 规范版本有明确对应关系:v1.7.0+ 面向 2026-07-28 规范并支持多个较早版本;v1.4.0–v1.6.1 面向 2025-11-25;v1.0.0–v1.1.0 面向 2025-06-18 版本对照表。部分版本中客户端 OAuth 仍为实验性,旧版本对 2025-11-25 规范只有部分支持。自 2026-07-28 协议版本起,roots、sampling 和 logging 已被 SEP-2577 弃用,SDK 会在至少十二个月的兼容窗口内继续支持它们 弃用说明。新版本只面向受支持的 Go 版本,固定旧工具链前需核对 Go 发布策略 Go 发布策略。
许可证
新贡献采用 Apache 2.0,已有代码为 MIT,具体条款见 许可证文件。
HotRepo 点评
该仓库在 2026-11-13 的 Go 语言日榜记录中位列第 7,当天新增 4 颗 Star,总数约 5.3k。对一个长期维护的官方 SDK 来说,这属于平缓的日常波动,而非爆发式增长,和基础设施类代码持续被使用的节奏一致。站内没有全部语言日榜名次记录,因此 Go 语言榜第 7 是当前唯一的排名依据。
本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。
相关推荐
- modelcontextprotocol/java-sdk让 JVM 应用通过 MCP 标准协议向 AI 模型暴露工具,或调用外部工具,而不必自建适配层。
- github/github-mcp-server让 AI 编程助手通过 MCP 直接读写 GitHub 仓库、Issue、PR 和 Actions。
- github/copilot-sdk把 GitHub Copilot 的智能体循环嵌入自己的应用,省去编排开发,适合已有 Copilot 或自带模型密钥的团队。
- googleapis/google-cloud-goGoogle Cloud 各服务的官方 Go 客户端库,涵盖 Firestore、Storage、Pub/Sub 等。
- ValveSoftware/source-sdk-2013包含半条命 2、HL2: DM 和军团要塞 2 的游戏代码,用于在 Windows 或 Linux 上开发 Source 引擎 Mod。