MCP工具箱Go SDK
   
核心模块:  ](https://img.shields.io/github/v/release/googleapis/mcp-toolbox-sdk-go?filter=core/v*) ]()
TBADK模块:  ](https://img.shields.io/github/v/release/googleapis/mcp-toolbox-sdk-go?filter=tbadk/v*) ]()
Tbgenkit模块:  ](https://img.shields.io/github/v/release/googleapis/mcp-toolbox-sdk-go?filter=tbgenkit/v*) ](https://img.shields.io/github/go-mod/go-version/googleapis/mcp-toolbox-sdk-go?filename=tbgenkit/go.mod)
\[!重要\] 重大变更通知:截至版本0.6.0,此存储库已转换为多模块结构。 - 对于新版本(v0.6.0+):您必须导入特定模块(例如。,go get github.com/googleapis/mcp-toolbox-sdk-go/core). - 对于旧版本(v0.5.1及以下):存储库仍然是一个单一的模块库(go get github.com/googleapis/mcp-toolbox-sdk-go). - 请更新您的导入和go.mod因此,在升级时。
此存储库包含Go SDK,旨在无缝集成 功能 主控程序 工具箱 进入你的Gen AI 应用。SDK允许您加载工具箱中定义的工具并使用它们 作为流行编排框架中的标准Go工具 或者您的自定义代码。
这简化了整合外部功能的过程(如 将工具箱管理的数据库或API导入GenAI应用程序。
概述
MCP工具箱服务提供了一种集中管理和公开工具的方法 (如API连接器、数据库查询工具等)供GenAI应用程序使用。
Go SDK充当该服务的客户端。他们负责处理以下所需的沟通:
- 从正在运行的工具箱实例中获取工具定义。
- 提供表示这些工具的方便的Go结构。
- 调用工具(调用工具箱中配置的底层API/服务)。
- 根据需要处理身份验证和参数绑定。
通过使用SDK,您可以轻松地直接利用工具箱管理的工具 在您的Go应用程序或AI编排框架中。
我应该使用哪个包?
选择正确的软件包取决于您构建应用程序的方式:
core:
这是一种与框架无关的方法,可以将工具连接到流行的框架 如谷歌GenAI、LangChain等。
此软件包提供了一种将工具连接到ADK-Go的方法。
此包提供了一种转换使用核心包获取的工具的功能 成为Genkit Go兼容工具。
可用包
此存储库承载以下Go包。请参阅特定包装 README了解详细的安装和使用说明:
| 包 | 目标用例 | 集成 | 路径 | 详细信息(README) |
|---|---|---|---|---|
core | 框架无关/自定义应用程序 | 直接使用/自定义 | core/ | 📄 查看自述文件 |
tbadk | ADK Go | 直接使用 | tbadk/ | 📄 查看自述文件 |
tbgenkit | Genkit Go | 与核心 | tbgenkit/ | 📄 查看自述文件 |
入门指南
要开始在应用程序中使用工具箱工具,请按照以下一般步骤操作:
- 设置并运行工具箱服务:
在使用SDK之前,您需要运行MCP Toolbox服务器。跟随 这里的说明: 工具箱入门 指南
- 安装相应的SDK:
根据您的需求选择套餐(请参阅“我应该使用哪个包?“上面) 使用此命令安装SDK模块
# For the core, framework-agnostic SDK
go get github.com/googleapis/mcp-toolbox-sdk-go/core
# For ADK Go
go get github.com/googleapis/mcp-toolbox-sdk-go/tbadk
# For Genkit Go
go get github.com/googleapis/mcp-toolbox-sdk-go/tbgenkit- 使用SDK:
请参阅所选软件包的README(链接在“可用 包裹“上文部分)了解详细说明 如何连接客户端、加载工具定义、调用工具、配置 身份验证/绑定,并将其集成到您的应用程序中,或 框架。
贡献
欢迎投稿!请参阅 CONTRIBUTING.md 开始吧。
许可证
此项目根据Apache许可证2.0获得许可。请参阅 许可证 文件 了解详情。
支持
如果您遇到问题或有疑问,请检查现有 对于主工具箱 项目。如果您的问题特定于某个SDK,请查找现有的 问题 这里 或 在此存储库中打开一个新问题。
