使用说明
项目简介
Qdrant MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的后端应用,它充当 LLM 客户端与 Qdrant 向量数据库之间的桥梁。该服务器通过 MCP 协议向客户端暴露了一系列工具,用于管理 Qdrant 中的集合(collections)、向量(vectors)和点(points),从而使 LLM 应用能够方便地利用 Qdrant 的向量检索能力。
主要功能点
- 集合管理:支持创建、列出、获取和删除 Qdrant 数据库中的集合。
- 向量操作:支持向指定集合上传向量数据,并根据向量相似度进行检索。
- 数据过滤:支持基于元数据过滤器进行向量检索,实现更精确的搜索。
- 点数据管理:支持根据ID获取和删除集合中的特定数据点,以及统计数据点数量。
安装步骤
-
安装 Python 包: 确保你的环境中安装了 Python 和 pip。在项目根目录下打开终端,运行以下命令安装:
pip install -e . -
配置环境变量: 复制 '.env.example' 文件并重命名为 '.env',根据你的 Qdrant 数据库配置修改 '.env' 文件中的以下变量:
QDRANT_HOST=localhost # Qdrant 服务器地址 QDRANT_PORT=6333 # Qdrant 服务器端口 QDRANT_API_KEY= # Qdrant API 密钥 (如果需要)
服务器配置
MCP 客户端需要配置以下 JSON 信息以连接到 Qdrant MCP 服务器。请注意,这里的 'command' 和 'args' 是用于启动服务器的命令,客户端本身并不直接使用这些命令,而是通过 MCP 协议与已运行的服务器通信。
{ "server_name": "qdrant_mcp_server", "command": "qdrant-mcp-server", "args": [], "transport": "stdio" }
配置参数说明:
- 'server_name': 服务器名称,可以自定义,用于在客户端标识该服务器。
- 'command': 启动 Qdrant MCP 服务器的命令。在安装步骤完成后,可以直接使用 'qdrant-mcp-server' 命令启动服务器。
- 'args': 启动命令的参数,本服务器默认情况下不需要额外的启动参数,所以为空列表 '[]'。
- 'transport': 传输协议,默认为 'stdio',表示使用标准输入输出进行通信。
Docker 部署配置 (可选):
如果使用 Docker 部署,MCP 客户端的服务器配置 'command' 可以保持不变,但需要在运行 Docker 容器时正确设置环境变量。
基本使用方法
-
启动服务器: 在安装并配置完成后,打开终端,运行以下命令启动 Qdrant MCP 服务器:
qdrant-mcp-server或者使用 Docker 启动:
docker run -p 8000:8000 --env QDRANT_HOST=<your-qdrant-host> --env QDRANT_PORT=<your-qdrant-port> --env QDRANT_API_KEY=<your-api-key> qdrant-mcp-server服务器启动后,将监听 MCP 客户端的请求。
-
配置 MCP 客户端: 在你的 MCP 客户端应用中,根据上述 “服务器配置” 部分的信息,配置连接到 Qdrant MCP 服务器。客户端需要能够发送符合 MCP 协议的 JSON-RPC 请求,以调用服务器提供的工具。
-
使用工具: 通过 MCP 客户端,你可以调用服务器提供的各种工具,例如:
- 使用 'list_collections' 工具列出所有集合。
- 使用 'create_collection' 工具创建新的集合。
- 使用 'search_vectors' 工具在指定集合中进行向量检索。
- 更多工具请参考仓库 'README.md' 或代码中的工具定义。
客户端发送的请求会通过 MCP 协议发送到服务器,服务器执行相应的 Qdrant 操作后,将结果以 MCP 响应格式返回给客户端。
注意: 本服务器主要作为后端服务,需要配合 MCP 客户端才能发挥作用。你需要使用支持 MCP 协议的 LLM 应用或客户端框架来与之交互,才能体验其提供的向量数据库访问能力。
信息
分类
数据库与文件