使用说明
ADK MCP服务器
用于查询Google ADK(附件开发工具包)文档的离线第一模型上下文协议(MCP)服务器。该服务器使用LanceDB进行矢量搜索,使用FastMCP进行MCP接口,允许AI模型访问和理解ADK文档。
特性
- 先离线:所有文档和矢量索引都存储在本地。
- 快速搜索:使用LanceDB和FastEmbed进行高效的矢量搜索。
- MCP集成:兼容任何启用MCP的客户端(如Claude Desktop)。
- 轻松部署:可以使用以下工具作为本地工具安装
uv.
先决条件
- Python 3.13或更高版本
- 紫外线 用于依赖关系管理和运行。
安装
-
克隆存储库:
git clone <repository-url> cd adk-mcp-docs -
安装依赖项:
make install # or uv sync
用法
1.建立指数
在运行服务器之前,您需要从文档中构建向量索引。
make build-index
# or
uv run src/adk_mcp/builder.py
2.运行服务器(开发)
要在热重新加载的开发模式下运行服务器,请执行以下操作:
make run
# or
uv run fastmcp run src/adk_mcp/server.py
3.本地部署
将服务器安装为可通过访问的本地工具 uvx:
make deploy-local
# or
uv tool install . --force
安装后,您可以使用以下命令运行服务器:
uvx adk-mcp
MCP客户端的配置
VS代码/反重力
对于VS Code(具有兼容的MCP扩展名)或Antigravity,请在以下位置创建一个文件 .vscode/mcp-servers.json 内容如下:
{
"mcpServers": {
"adk-mcp": {
"command": "uvx",
"args": ["adk-mcp"]
}
}
}
光标
- 打开光标设置。
- 首选 特性 > 主控程序.
- 点击 +添加机器人.
- 将名称设置为
adk-mcp. - 将类型设置为
command. - 将命令设置为
uvx adk-mcp.
克劳德桌面
将以下内容添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"adk-mcp": {
"command": "uvx",
"args": ["adk-mcp"]
}
}
}
项目结构
src/adk_mcp/:MCP服务器的源代码。builder.py:用于构建LanceDB索引的脚本。server.py:FastMCP服务器实现。data/:用于存储LanceDB索引(已生成)的目录。
data/:(可选)源文档文件(如果未嵌入包中)。Makefile:常见任务的便捷快捷方式。pyproject.toml:项目元数据和依赖关系。
分块策略
文档使用上下文感知分块策略进行索引,以确保高质量的搜索结果:
- 基于头部的拆分:文件按H1、H2和H3标头拆分。
- 上下文标题:每个块都以其分层上下文作为前缀(例如。,
Context: Getting Started > Installation > Python). - 语言选项卡处理:对带有语言标签的文档进行特殊处理(例如。,
=== "Python",=== "Go").这些选项卡中的内容单独索引,并用相应的语言标记。 - 嵌入:使用
BAAI/bge-small-en-v1.5生成向量嵌入的模型。
可用工具
search_adk
搜索Google ADK文档以获取相关信息。
论据:
query(string):搜索查询。language(string):要筛选的编程语言。支持的值:"python","go","java",或"all".
退货:
- 一个格式化的字符串,包含前5个相关块,包括它们的源URL和内容。
