Vercel AI SDK文档MCP代理
一个模型上下文协议(MCP)服务器,为Vercel AI SDK文档提供AI驱动的搜索和查询功能。该项目使开发人员能够询问有关Vercel AI SDK的问题,并根据官方文档获得准确、情境化的回复。
  ](https://nodejs.org/)
特性
- 直接文档搜索:使用相似性搜索直接查询Vercel AI SDK文档索引
- AI驱动的代理:询问有关Vercel AI SDK的自然语言问题,并获得全面的答案
- 会话管理:跨多个查询维护对话上下文
- 自动索引:包括用于获取、处理和索引最新Vercel AI SDK文档的工具
建筑
该系统由几个关键组件组成:
- MCP服务器:通过模型上下文协议公开工具,以便与人工智能助手集成
- 文档检索器:抓取并处理Vercel AI SDK文档
- 矢量存储管理器:创建和管理用于语义搜索的FAISS向量索引
- 代理服务:使用Google Gemini模型为问题提供人工智能支持的答案
- DirectQuery服务:提供文档的直接语义搜索
安装说明
先决条件
- Node.js 18+
- npm
- 用于Gemini模型访问的Google API密钥
环境变量
创建一个 .env 项目根目录中的文件,包含以下变量:
GOOGLE_GENERATIVE_AI_API_KEY=your-google-api-key-here您需要从 谷歌人工智能工作室.
安装
- 克隆存储库
git clone https://github.com/IvanAmador/vercel-ai-docs-mcp.git
cd vercel-ai-docs-mcp-agent- 安装依赖项
npm install- 构建项目
npm run build- 构建文档索引
npm run build:index- 启动MCP服务器
npm run start与Claude Desktop集成
克劳德桌面 是支持MCP服务器的强大AI助手。要将Vercel AI SDK文档MCP代理与Claude Desktop连接,请执行以下操作:
- 首先,安装 克劳德桌面 如果你还没有。
- 打开克劳德桌面设置(通过应用程序菜单,而不是聊天界面)。
- 导航到“开发人员”选项卡,然后单击“编辑配置”。
- 将Vercel AI Docs MCP服务器添加到您的配置中:
{
"mcpServers": {
"vercel-ai-docs": {
"command": "node",
"args": ["ABSOLUTE_PATH_TO_PROJECT/dist/main.js"],
"env": {
"GOOGLE_GENERATIVE_AI_API_KEY": "your-google-api-key-here"
}
}
}
}确保更换:
ABSOLUTE_PATH_TO_PROJECT带有项目文件夹的实际路径your-google-api-key-here使用您的Google Gemini API密钥
- 保存配置文件并重新启动Claude Desktop。
- 要验证服务器是否已连接,请查找锤子🔨 Claude聊天界面中的图标。
有关使用Claude Desktop设置MCP服务器的更多详细信息,请访问 MCP快速入门指南.
与其他MCP客户端集成
此MCP服务器与实现模型上下文协议的任何客户端兼容。以下是一些示例:
光标
光标 是一个支持MCP服务器的AI驱动的代码编辑器。要与Cursor集成,请执行以下操作:
- 添加a
.cursor/mcp.json文件到您的项目目录(用于项目特定的配置)或~/.cursor/mcp.json主目录中的文件(用于全局配置)。
- 将以下内容添加到配置文件中:
{
"mcpServers": {
"vercel-ai-docs": {
"command": "node",
"args": ["ABSOLUTE_PATH_TO_PROJECT/dist/main.js"],
"env": {
"GOOGLE_GENERATIVE_AI_API_KEY": "your-google-api-key-here"
}
}
}
}有关将MCP与Cursor一起使用的更多信息,请参阅 光标MCP文档.
用法
MCP服务器公开了三个主要工具:
1.代理查询
使用可以搜索和合成信息的AI代理查询Vercel AI SDK文档。
{
"name": "agent-query",
"arguments": {
"query": "How do I use the streamText function?",
"sessionId": "unique-session-id"
}
}2.直接查询
对Vercel AI SDK文档索引执行直接相似性搜索。
{
"name": "direct-query",
"arguments": {
"query": "streamText usage",
"limit": 5
}
}3.清除记忆
清除特定会话或所有会话的会话内存。
{
"name": "clear-memory",
"arguments": {
"sessionId": "unique-session-id"
}
}要清除所有会话,请省略sessionId参数。
发展
项目结构
├── config/ # Configuration settings
├── core/ # Core functionality
│ ├── indexing/ # Document indexing and vector store
│ └── query/ # Query services (agent and direct)
├── files/ # Storage directories
│ ├── docs/ # Processed documentation
│ ├── faiss_index/ # Vector index files
│ └── sessions/ # Session data
├── mcp/ # MCP server and tools
│ ├── server.ts # MCP server implementation
│ └── tools/ # MCP tool definitions
├── scripts/ # Build and utility scripts
└── utils/ # Helper utilities生成脚本
npm run build:编译TypeScript文件npm run build:index:建立文档索引npm run dev:index:在开发模式中构建和索引npm run dev:构建并启动开发模式
故障排除
常见问题
- 找不到索引或加载失败
跑 npm run build:index 在启动服务器之前创建索引。
- API费率限制
当超过Google API费率限制时,代理服务可能会返回错误。实施适当的退避策略。
- 模型连接问题
确保您的Google API密钥有效,并且可以访问指定的Gemini模型。
- Claude Desktop未显示MCP服务器
- 检查配置文件是否存在语法错误。 - 确保到服务器的路径正确且绝对。 - 检查Claude Desktop日志是否有错误。 - 更改配置后重新启动Claude Desktop。
贡献
欢迎投稿!请随时提交拉取请求。
许可证
麻省理工学院
