使用说明
矢量化MCP服务器
一种模型上下文协议(MCP)服务器,通过使用Vectorize将Claude Desktop连接到Cloudflare Workers后端来提供语义搜索功能。
建筑
Claude Desktop ──stdio──> MCP Server ──HTTP──> Vectorize Worker ──> Vectorize Index
这是一个 混合式体系结构 -MCP服务器在本地运行,并将Claude Desktop桥接到远程Cloudflare Workers后端。
特性
- 语义搜索工具:使用向量相似度进行自然语言搜索
- stdio运输:与Claude Desktop和其他MCP客户端配合使用
- 远程后端:Cloudflare Workers上发生了繁重的工作(嵌入、矢量搜索)
- 类型安全:完整的TypeScript实现
先决条件
- 已安装Node.js 18+
- 已安装Claude Desktop
- 矢量化mcp工作者 部署
安装
1.克隆并安装:
git clone https://github.com/dannwaneri/vectorize-mcp-server.git
cd vectorize-mcp-server
npm install
2.构建:
npm run build
3.配置克劳德桌面:
编辑您的Claude Desktop配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json
添加此服务器:
{
"mcpServers": {
"vectorize-search": {
"command": "node",
"args": [
"/absolute/path/to/vectorize-mcp-server/dist/index.js"
]
}
}
}
4.重新启动克劳德桌面
用法
服务器向Claude公开了一个工具:
semantic_search
使用语义相似度搜索知识库。
参数:
query(字符串,必填):自然语言搜索查询topK(number,可选):要返回的结果数(默认值:5)
Claude Desktop中的示例:
Search for information about AI embeddings
克劳德将自动使用 semantic_search 工具并返回具有相似性得分的结果。
运作原理
- Claude发送查询 通过stdio连接到MCP服务器
- MCP服务器转发 通过HTTP向Vectorize Worker查询
- Worker生成嵌入 使用Workers AI
- 矢量化搜索 对于相似的向量
- 结果反馈 通过MCP服务器连接到Claude
- 克劳德综合 使用搜索结果回答
配置
更改后端URL
编辑 src/index.ts 并更新Worker URL:
const WORKER_URL = "https://your-worker.workers.dev";
然后重建:
npm run build
调整结果计数
默认值 topK 是5。用户可以覆盖此内容:
Search for "databases" and show me 10 results
发展
在开发模式下运行:
npm run dev
生产建设:
npm run build
本地测试:
node dist/index.js
服务器将输出: Vectorize MCP server running on stdio
查询示例
在Claude Desktop中尝试以下操作:
What do you know about vector databases?
Find information about RAG systems
Search for anything related to Cloudflare Workers
Tell me about machine learning at the edge
响应格式
该工具返回JSON:
query:原始搜索查询resultsCount:找到的结果数量results:匹配数组:id:条目标识符score:相似性得分(0-1,越高越好)content:实际内容category:内容类别
Claude会自动解析并自然呈现。
故障排除
服务器未出现在Claude Desktop中:
- 检查配置文件路径是否正确
- 验证到的绝对路径
dist/index.js - 确保您完全重新启动了Claude Desktop(退出,而不仅仅是关闭)
- 检查开发人员控制台(Claude Desktop中的Ctrl+Shift+I)
“未连接”错误:
- 确保Worker已部署且可访问
- 检查
WORKER_URL在src/index.ts - 验证Worker是否已填充数据(
POST /populate)
未返回任何结果:
- 使用Worker填充Vectorize索引
/populate端点 - 尝试更广泛的搜索词
- 检查Worker日志
wrangler tail
技术栈
- TypeScript:类型安全开发
- @模型上下文协议/sdk:官方MCP SDK
- Node.js:运行时环境
- stdio传输:标准MCP通信方法
相关项目
为什么是这种架构?
优势:
- 与Claude Desktop配合使用(需要stdio)
- 后端在边缘运行(快速、可扩展)
- 可以在多个客户端之间共享Worker后端
- 远程进行大量处理(嵌入、搜索)
权衡:
- 需要本地服务器和远程Worker
- 额外的网络跳数会增加延迟(~50-100ms)
- 需要保持本地服务器运行
有关完全远程的解决方案,请参阅 mcp服务器工作器.
许可证
麻省理工学院
