项目简介
Weave MCP Server 是一个用 Go 语言构建的 Model Context Protocol (MCP) 服务端,专注于提供与矢量数据库交互的功能。它通过标准化的 MCP 协议,允许大型语言模型(LLM)客户端(如 Cursor 2.0, Claude Desktop)轻松访问和管理矢量数据库中的集合与文档,执行语义搜索等操作。该服务支持 HTTP 和 stdio 两种传输方式,并提供了丰富的工具集来简化矢量数据库操作。
主要功能点
- 矢量数据库集成: 原生支持 Weaviate、Milvus 和本地模拟数据库,方便连接现有数据源。
- 双重传输模式: 可通过标准的 HTTP API 或高效的 stdio 协议与 MCP 客户端进行通信,确保广泛的兼容性。
- 全面的MCP工具集: 提供创建、列出、获取、更新、删除集合和文档,以及文档计数和语义搜索等一系列功能工具,满足各种矢量数据库管理需求。
- MCP 调试器: 内置 Web 界面调试工具 (MCP Inspector),方便开发者测试、调试 MCP 工具及其参数。
- 灵活的配置: 支持 YAML 文件和环境变量进行配置,易于部署和管理。
- 强大的日志与监控: 提供详细的日志记录和实时监控工具,便于问题诊断和性能跟踪。
安装步骤
- 准备环境: 确保您的系统已安装 Go 1.21 或更高版本。如果需要使用 MCP Inspector,还需要 Node.js 22.7.5+ 和 npm。
- 克隆仓库: 使用 Git 克隆 Weave MCP Server 仓库到本地。
git clone https://github.com/maximilien/weave-mcp.git cd weave-mcp - 运行安装脚本: 执行 './setup.sh' 脚本,它将安装 MCP Inspector(如果满足 Node.js 要求)并构建服务器二进制文件。
./setup.sh - 配置服务器: 复制示例配置文件并根据您的矢量数据库设置进行编辑。
如果 './setup.sh' 脚本执行失败,您可以手动安装 Go 依赖并构建服务器:cp config.yaml.example config.yaml cp .env.example .env # 编辑 config.yaml 和 .env 文件,填入您的 Weaviate/Milvus 数据库 URL、API Key 等信息。go mod tidy ./build.sh
服务器配置(供MCP客户端使用)
Weave MCP Server 支持 stdio 传输模式,可以通过启动命令配置到任何兼容 Model Context Protocol 的客户端。
对于 Cursor 2.0 或 Claude Desktop 等 MCP 客户端,您通常需要在客户端的 MCP 设置(例如 '~/.cursor/mcp.json' 或客户端 UI 中的 MCP 服务器配置界面)中添加类似以下的 JSON 配置信息:
{ "mcpServers": { "weave-mcp": { "command": "/path/to/weave-mcp/bin/weave-mcp-stdio", "args": [] } } }
配置说明:
- '"mcpServers"': 这是 MCP 客户端用于管理所有 MCP 服务器的顶级键。
- '"weave-mcp"': 这是您在客户端中为该 MCP 服务器定义的唯一名称,您可以根据自己的偏好进行自定义,以便于识别。
- '"command"': 这个值必须是 'weave-mcp-stdio' 二进制文件的绝对路径。请将示例中的 '/path/to/weave-mcp/bin/weave-mcp-stdio' 替换为您实际安装 Weave MCP Server 仓库后,'bin' 目录中 'weave-mcp-stdio' 可执行文件的完整路径。例如,如果您将仓库克隆到 '/home/user/my_mcp_server',那么正确的路径可能是 '/home/user/my_mcp_server/bin/weave-mcp-stdio'。
- '"args"': 这是一个可选的字符串数组,用于向 'weave-mcp-stdio' 进程传递任何额外的命令行参数。在大多数情况下,默认留空即可。
完成上述配置后,您的 MCP 客户端将能够通过此配置自动启动 Weave MCP Server,并利用其提供的工具与您的矢量数据库进行交互,从而为 LLM 应用提供丰富的上下文服务。
基本使用方法
- 启动 HTTP 服务器:
服务器启动后,您可以通过浏览器或 'curl' 工具访问 'http://localhost:8030' 来访问 MCP 服务器的 HTTP 接口。例如,查看健康状态:'curl http://localhost:8030/health'。./start.sh http # 在前台运行 HTTP 服务器 ./start.sh http --daemon # 在后台以守护进程模式运行 HTTP 服务器 - 启动 MCP Inspector (调试工具):
这将启动一个 Web 界面的调试工具,通常在 'http://localhost:6274' 访问。通过它,您可以交互式地测试和探索 MCP 服务器提供的各种工具。./start.sh inspector - 停止所有服务:
这个命令将停止所有运行中的 Weave MCP Server 实例和 MCP Inspector。./stop.sh all - 监控日志:
这个脚本可以实时显示所有 Weave MCP Server 服务的日志输出,方便您进行故障排查和监控。./tools/tail-logs.sh all
信息
分类
数据库与文件