这是一个提供 Cloudflare AutoRAG 实例搜索功能的模型上下文协议(MCP)服务器。该服务器使像 Claude 这样的AI助手能够通过三种不同的搜索方法直接搜索和查询您的 AutoRAG 知识库。
score_threshold(默认:0.5)和 max_num_results(1-50,默认:10)autorag_basic_search在您的 Cloudflare AutoRAG 索引中执行基本的向量相似度搜索,不进行AI查询重写或答案生成。仅返回原始文档片段。
参数:
query (字符串,必需) - 搜索查询文本(最大10,000字符)score_threshold (数字,可选) - 最小相似度分数阈值(0.0-1.0,默认:0.5)max_num_results (数字,可选) - 返回的最大结果数(1-50,默认:10)autorag_name (字符串,可选) - 要使用的 AutoRAG 实例名称(默认为已配置的默认实例)autorag_rewrite_search执行带有AI查询重写的向量搜索,但不生成答案。使用 Cloudflare 的 search() 方法,并通过可配置的 rewrite_query 来提高语义匹配度,仅返回文档片段。
参数:
query (字符串,必需) - 搜索查询文本(最大10,000字符)score_threshold (数字,可选) - 最小相似度分数阈值(0.0-1.0,默认:0.5)max_num_results (数字,可选) - 返回的最大结果数(1-50,默认:10)rewrite_query (布尔值,可选) - 是否重写查询以获得更好的匹配(默认:true)autorag_name (字符串,可选) - 要使用的 AutoRAG 实例名称(默认为已配置的默认实例)autorag_ai_search使用 Cloudflare 的 aiSearch() 方法执行由AI驱动的搜索,可选AI生成的响应。返回文档片段,并根据 include_ai_response 参数可选地返回AI答案。支持对大量结果集的分页。
参数:
query (字符串,必需) - 搜索查询文本(最大10,000字符)score_threshold (数字,可选) - 最小相似度分数阈值(0.0-1.0,默认:0.5)max_num_results (数字,可选) - 返回的最大结果数(1-50,默认:10)rewrite_query (布尔值,可选) - 是否重写查询以获得更好的语义匹配(默认:true)include_ai_response (布尔值,可选) - 是否在输出中包含AI生成的回答(默认:false)cursor (字符串,可选) - 从上一个响应获取的分页游标,用于获取下一页的结果(v1.2.0+)autorag_name (字符串,可选) - 要使用的 AutoRAG 实例名称(默认为已配置的默认实例)响应包括:
data - 包含分数和元数据的源文档片段数组(始终包含)response - 根据检索到的文档生成的AI回答(仅当 include_ai_response: true 时)has_more - 表示是否还有更多结果的布尔值next_page - 当 has_more 为真时用于获取下一页的游标令牌nextCursor - 符合 MCP 规范的游标字段(反映 next_page 的值)list_autorags (v2.0.0+)列出服务器中配置的所有可用 AutoRAG 实例。
参数: 无
响应包括:
autorags - 包含名称、描述和默认标志的 AutoRAG 实例数组total - 配置的 AutoRAG 实例总数default - 默认 AutoRAG 实例的名称get_current_autorag (v2.0.0+)获取当前配置的默认 AutoRAG 实例的信息。
参数: 无
响应包括:
current_autorag - 当前默认 AutoRAG 实例的名称description - 实例的描述is_default - 对于此端点始终为真npm install --save-dev wrangler)克隆仓库:
git clone <repository-url>
cd cf-autorag-mcp
安装依赖项:
npm install
配置您的 AutoRAG 实例:
编辑 wrangler.toml 并更新配置:
对于单个 AutoRAG 实例:
[vars]
AUTORAG_NAME = "your-autorag-instance-name"
对于多个 AutoRAG 实例:
[vars]
AUTORAG_INSTANCES = "instance1,instance2,instance3"
AUTORAG_DESCRIPTIONS = "Description 1,Description 2,Description 3"
部署到 Cloudflare Workers:
npx wrangler deploy
这将输出您的 Worker URL,您需要将其用于 MCP 客户端配置。
要使用此 MCP 服务器与 Claude Desktop,需在您的 Claude Desktop 配置文件中添加以下配置:
编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:
编辑 %APPDATA%/Claude/claude_desktop_config.json:
{
"mcpServers": {
"cf-autorag-mcp": {
"command": "npx",
"args": [
"mcp-remote",
"https://your-worker-url.workers.dev/"
]
}
}
}
替换 https://your-worker-url.workers.dev/ 为您实际部署的 Worker URL。
更新配置后:
服务器使用以下 Cloudflare Worker 绑定:
AI - Cloudflare AI 绑定,用于 AutoRAG 访问(处理所有 AutoRAG 操作)AUTORAG_NAME - 您的 AutoRAG 实例名称(对于单实例配置)AUTORAG_INSTANCES - 多个 AutoRAG 实例的逗号分隔列表(对于多实例配置)AUTORAG_DESCRIPTIONS - 每个实例的描述的逗号分隔列表wrangler.toml 文件包括:
name = "cf-autorag-mcp"
main = "src/server.ts"
compatibility_date = "2024-09-23"
compatibility_flags = ["nodejs_compat"]
[vars]
# 对于单个 AutoRAG 实例:
AUTORAG_NAME = "your-autorag-instance-name"
# 对于多个 AutoRAG 实例(v2.0.0+):
# AUTORAG_INSTANCES = "default-autorag,secondary-autorag,specialized-autorag"
# AUTORAG_DESCRIPTIONS = "Main knowledge base,Secondary knowledge base,Specialized documents"
[ai]
binding = "AI"
注意: 不需要 VECTORIZE 绑定。AutoRAG 通过 AI 绑定内部管理其自己的向量索引访问。
配置好与 Claude Desktop 后,您可以这样使用这些工具:
基础搜索(无查询重写,无AI响应):
在 AutoRAG 中搜索关于“机器学习”的文档,最小分数阈值为0.7
重写搜索(AI查询重写,无AI响应):
使用重写搜索查找“部署策略”信息,启用查询重写
AI 搜索仅带文档片段(默认行为):
使用AI搜索查找“部署策略”信息,最多返回5个结果
AI 搜索带AI生成的响应:
使用AI搜索查找“部署策略”信息,并包含AI生成的响应
多AutoRAG 使用(v2.0.0+):
列出所有可用的 AutoRAG 实例
在 secondary-autorag 实例中搜索“安全政策”
在 specialized-autorag 中使用AI搜索查找“合规要求”,并包含AI响应
重要提示:
autorag_basic_search 执行纯向量搜索,没有AI增强autorag_rewrite_search 使用AI查询重写,但仅返回文档片段autorag_ai_search 默认仅返回文档片段(让客户端LLM生成响应),但可以选择包含Cloudflare的AI生成的响应# 启动本地开发服务器
npm run dev
# 构建生产版本
npm run build
cf-autorag-mcp/
├── src/
│ └── server.ts # 主 MCP 服务器实现
├── wrangler.toml # Cloudflare Workers 配置
├── package.json # 依赖项和脚本
└── README.md # 本文档
“AutoRAG 实例未找到”
AUTORAG_NAME 在 wrangler.toml 中“MCP 服务器断开连接”
“工具未找到” 错误
npx wrangler tail空搜索结果
score_threshold 参数(默认为0.5)查看已部署 Worker 的实时日志:
npx wrangler tail
include_ai_response 参数,设置默认分数阈值为0.5,全面参数验证本项目采用 MIT 许可证。
针对以下问题: