Skip to content

模型上下文协议 (MCP)

Supported in ADKPythonJava

模型上下文协议 (MCP) 是一种开放标准,旨在标准化大型语言模型(LLM)如 Gemini 和 Claude 与外部应用程序、数据源和工具的通信方式。可以将其视为一种通用连接机制,简化了 LLM 获取上下文、执行操作和与各种系统交互的方式。

MCP 如何工作?

MCP 遵循「客户端 - 服务器(client-server)」架构,定义了数据(资源)、交互模板(提示)和可执行函数(工具)如何由 MCP 服务器公开并由 MCP 客户端(可能是 LLM 主机应用程序或 AI 智能体)使用。

ADK 中的 MCP 工具

ADK 帮助你在智能体中使用和消费 MCP 工具,无论你是试图构建工具来调用 MCP 服务,还是暴露 MCP 服务器供其他开发者或智能体与你的工具交互。

参考 MCP 工具文档 获取代码示例和设计模式,帮助你将 ADK 与 MCP 服务器一起使用,包括:

  • 在 ADK 中使用现有 MCP 服务器:ADK 智能体可以作为 MCP 客户端,使用外部 MCP 服务器提供的工具。
  • 通过 MCP 服务器暴露 ADK 工具:如何构建一个包装 ADK 工具的 MCP 服务器,使其可被任何 MCP 客户端访问。

数据库 MCP 工具箱

数据库 MCP 工具箱 是一个开源 MCP 服务器,它安全地将你的后端数据源暴露为一组预构建的、生产就绪的工具,供 Gen AI 智能体使用。它充当通用抽象层,允许你的 ADK 智能体安全地查询、分析和检索来自各种数据库的信息,并提供内置支持。

MCP 工具箱服务器包含一个全面的连接器库,确保智能体能够安全地与你的复杂数据资产交互。

支持的数据源

MCP 工具箱为以下数据库和数据平台提供开箱即用的工具集:

Google Cloud

关系型和 SQL 数据库

NoSQL 和键值存储

  • MongoDB
  • Couchbase
  • Redis
  • Valkey
  • Cassandra

  • MongoDB

  • Couchbase
  • Redis
  • Valkey

  • Neo4j (包含用于 Cypher 查询和模式检查的工具)

  • Dgraph

  • Neo4j(包含 Cypher 查询和模式检查工具)

  • Dgraph

  • Looker (用于通过 Looker API 运行 Looks、查询和构建仪表板)

  • Trino (用于跨多个源运行联邦查询)

其他

  • HTTP

  • Looker(通过 Looker API 运行 Looks、查询和构建仪表板)

  • Trino(跨多个源运行联邦查询)

参考MCP 数据库工具箱文档,了解如何将 ADK 与 MCP 数据库工具箱一起使用。要开始使用 MCP 数据库工具箱,还可以参考博客文章 教程:MCP 数据库工具箱 - 公开 Big Query 数据集 和 Codelab MCP 数据库工具箱:使 BigQuery 数据集可用于 MCP 客户端

参考数据库 MCP 工具箱文档了解如何将 ADK 与数据库 MCP 工具箱一起使用。为了帮助你开始使用数据库 MCP 工具箱,还提供了博客文章教程:数据库 MCP 工具箱 - 公开 Big Query 数据集和 Codelab 数据库 MCP 工具箱:使 BigQuery 数据集可用于 MCP 客户端

GenAI 工具箱

ADK 智能体和 FastMCP 服务器

FastMCP 处理所有复杂的 MCP 协议细节和服务器管理,因此你可以专注于构建优秀的工具。它被设计为高级且符合 Python 风格;在大多数情况下,只需装饰一个函数就足够了。

参考 MCP 工具文档 了解如何将 ADK 与在 Cloud Run 上运行的 FastMCP 服务器一起使用。

Agent Development Kit (ADK) 和 Genkit 为这些 MCP 工具提供内置支持,让你的 AI 智能体能够有效地编排生成式媒体工作流。有关实现指导,请参阅 ADK 示例智能体Genkit 示例