什么是 Ref MCP?
Ref MCP 是一个专门的 MCP 服务器,连接编码代理和开发工具与精心策划的技术文档集合。它使代理能够按需搜索、检索和分析相关文档的部分,最小化令牌使用,提高处理 API 和库时的 LLM 性能。
如何配置 Ref MCP
有两种主要方法可以将 Ref MCP 设置为 MCP 服务器:
1. 可流式 HTTP(推荐):
- 通过支持的客户端(如 Cursor)使用提供的安装链接或直接指定服务器配置来安装 Ref MCP:
"Ref": { "type": "http", "url": "https://api.ref.tools/mcp?apiKey=YOUR_API_KEY" }
- 您需要在 ref.tools 上注册以获取 API 密钥。
2. 本地 stdio 服务器(旧版):
"Ref": {
"command": "npx",
"args": ["ref-tools-mcp@latest"],
"env": {
"REF_API_KEY": <your_api_key>
}
}
- 需要 Node.js 和 npm。
可选地,您可以克隆 Ref MCP 仓库,使用 npm install
安装依赖项,然后使用 npm run dev
进行本地开发和调试。
如何使用 Ref MCP
- 使用上述配置将支持 MCP 的代理或工具连接到 Ref MCP 服务器。
- 使用可用工具,如
ref_search_documentation
搜索 API 文档,或使用ref_read_url
获取和提取相关文档内容。 - 代理可以进行迭代搜索和阅读,智能地减少上下文,仅保留生成代码或理解所需的信息。
- 对于 OpenAI 集成,Ref MCP 自动将其工具映射到 OpenAI 兼容的函数名称。
用于开发和检查,请使用 MCP Inspector 进行可视化测试和监控互动。
主要特点
- 节省令牌的文档检索: 仅返回最相关的上下文部分,避免过高的令牌成本和性能下降。
- 迭代、代理友好的搜索: 在会话中适应搜索结果,对相似提示不会重复结果。
- 按需上下文补充: 使 LLM 在需要时准确提取文档。
- 支持公开和私有资源: 在公共文档、网页、GitHub 和私有资源(如内部仓库或 PDF)中进行搜索。
- 集成会话管理: 在代理会话内跟踪搜索和阅读轨迹,以获得最佳上下文策划。
- 兼容 OpenAI: 自动调整工具命名,以便与 OpenAI 的研究和编码代理无缝使用。
使用案例
- AI 驱动的代码助手: 使用精确的技术文档访问增强编码代理(如 Claude Desktop 或 Cursor)。
- 自动化 API 集成: 帮助代理理解、实现和排除 API 端点的问题,提供最相关的文档。
- 代码审查和审核机器人: 使代理能够在审查代码时提取和引用权威文档。
- 开发者入职工具: 通过搜索和提取公司或公共文档中的信息,动态回答常见开发问题。
- 深入技术研究: 高效地查询多个源,聚焦于最小的上下文集以获得准确答案。
常见问题
问1:为什么在文档上下文中最小化令牌很重要?
答1:LLM 在处理较大且嘈杂的上下文窗口时表现较差,而令牌是需要花钱的。通过只提取相关文档的部分,Ref MCP 提高了 LLM 性能,并减少了不必要的 API 支出。
问2:Ref MCP 可以搜索哪些类型的文档?
答2:Ref MCP 搜索广泛的公共文档(API、库、网页文档),也可以索引私有/内部资源,包括 GitHub 仓库和 PDF。
问3:Ref MCP 如何确保 LLM 代理避免重复阅读相同内容?
答3:在活动会话中,Ref MCP 跟踪以前的搜索和返回的结果,确保每个相似的搜索返回新的、非重复的文档,以促进有效的提示工程。
问4:我可以将 Ref MCP 与我自己的代理或工具一起使用吗?
答4:可以,任何支持 MCP 协议的代理或应用程序都可以通过 HTTP 或 stdio 模式与 Ref MCP 连接。
问5:ref_search_documentation
和 ref_read_url
之间有什么区别?
答5:ref_search_documentation
通过查询查找相关文档链接和上下文;ref_read_url
从目标页面获取并转换内容为 markdown 格式,以便代理轻松处理。