项目简介
这是一个符合 Model Context Protocol (MCP) 标准的应用后端服务,专门用于集成 Qdrant 向量数据库的搜索能力。它将 Qdrant 的向量搜索功能封装成一个可供大型语言模型 (LLM) 调用的工具,使 LLM 能够访问和检索存储在 Qdrant 中的知识。
主要功能点
- qdrantSearch 工具: 提供一个名为 'qdrantSearch' 的工具。LLM 客户端可以通过这个工具向指定的 Qdrant collection 发送搜索查询。
- 向量嵌入: 在执行搜索前,服务器会使用配置的外部嵌入服务(例如 OpenAI API)将用户的文本查询转换为向量嵌入。
- Qdrant 集成: 使用生成的向量嵌入在指定的 Qdrant collection 中执行相似度搜索。
- 结果返回: 将 Qdrant 返回的搜索结果(包含文档内容、URL 等)格式化后返回给 LLM 客户端。
安装步骤
您可以使用 'npx' 命令直接运行此服务器,无需进行全局安装。
npx qdrant-search-mcp-server
服务器将默认使用标准输入输出 (Stdio) 进行通信。
服务器配置
该 MCP 服务器需要通过环境变量或命令行参数进行配置。在使用支持 MCP 的客户端(如 Visual Studio Code MCP 扩展或 Claude)时,您需要在客户端的 MCP 设置文件中配置该服务器的启动方式和环境变量。
客户端 MCP 配置示例通常包含以下信息:
- 服务器名称 (server_name): 为此 MCP 服务器指定一个名称(例如 'qdrantSearch'),用于在客户端中引用。
- 启动命令 (command): 'npx'
- 启动参数 (args): 'qdrant-search-mcp-server'。如果需要指定 Qdrant collection,可以在参数中添加 '--collections=collection1,collection2,...'。
- 环境变量 (env): 配置连接 Qdrant 和嵌入服务所需的凭据和地址。常见的环境变量包括:
- 'QDRANT_URL': Qdrant 服务的地址 (例如 'https://qdrant.is.solo.io')
- 'QDRANT_API_KEY': 连接 Qdrant 可能需要的 API 密钥
- 'OPENAI_API_KEY': 连接 OpenAI 或兼容服务的 API 密钥
- 'OPENAI_ENDPOINT': OpenAI 或兼容服务的 API 地址 (例如 'https://api.openai.com/v1')
- 'OPENAI_MODEL': 用于生成嵌入的模型名称 (例如 'text-embedding-3-large')
这些配置信息应按照您的 MCP 客户端的要求,以 JSON 格式添加到客户端的配置文件中。请勿直接修改本项目代码来配置这些敏感信息。
基本使用方法
一旦服务器在 MCP 客户端中配置并启动,LLM 就可以通过调用服务器提供的 'qdrantSearch' 工具来执行搜索。
LLM 通过 MCP 协议向服务器发送一个 JSON-RPC 请求,请求中指定要调用的工具为 'qdrantSearch',并提供相应的参数。'qdrantSearch' 工具接受以下参数:
- 'query': (字符串) 要用于搜索的文本查询。
- 'collection': (字符串) 要搜索的 Qdrant collection 的名称。
- 'limit': (数字, 可选) 希望返回的最大搜索结果数量,默认为 4。
服务器执行搜索后,会将包含搜索结果的 JSON 字符串作为工具调用的返回值发送回 LLM 客户端。LLM 可以解析这些结果,并将其作为上下文信息用于生成响应。
信息
分类
AI与计算