返回 MCP 目录
public公开dns本地运行

mcp-qdrant-server-with-qdrant-db

一个集成Qdrant向量数据库和MCP服务器的系统,用于存储和检索代码片段,支持自然语言搜索和语义检索。

article

README

🚀 基于 MCP 协议的代码片段管理服务器与 Qdrant 向量数据库结合使用

本项目创新性地将 MCP(模型控制协议)服务器与 Qdrant 向量数据库深度融合,精心构建了一套专门用于高效存储和精准检索代码片段的强大系统。该系统能极大提升代码管理和搜索的效率,为开发者带来便捷的使用体验。

🚀 快速开始

先决条件

  • Docker 容器引擎
  • Docker Compose 服务编排工具

安装与运行

步骤 1:克隆代码仓库

git clone <repository-url>
cd <repository-name>

步骤 2:启动服务组件

docker-compose up -d

步骤 3:检查服务状态

docker-compose ps

服务访问地址

  • Qdrant 管理界面:http://localhost:6333/dashboard
  • MCP Server 接口:http://localhost:8000
  • 对于 cursor 等 AI 开发环境的配置,可参考如下 JSON 格式:
    "qdrant": {
      "url": "http://localhost:8000/sse"
    },

✨ 主要特性

  • 代码片段的保存与管理:方便开发者对代码片段进行有序存储和高效管理。
  • 基于自然语言的代码搜索:支持使用自然语言进行代码搜索,降低搜索门槛。
  • 通过语义搜索查找相关代码:利用语义搜索技术,精准定位相关代码。
  • 支持 Server - Sent Events(SSE)数据传输协议:确保数据传输的实时性和高效性。

📚 详细文档

系统架构

  • Qdrant:向量数据库服务器(端口:6333,6334)
  • MCP 服务器:代码片段管理服务器(端口:8000)
  • 嵌入式模型:默认使用 sentence - transformers/all - MiniLM - L6 - v2

MCP 工具集

Qdrant MCP 服务器提供了以下功能模块:

1. qdrant - store

  • 功能描述:将信息保存至 Qdrant 数据库
  • 输入参数
    • information(字符串):待存储的信息内容
    • metadata(JSON 格式):可选的元数据信息
  • 返回结果:存储确认消息

2. qdrant - find

  • 功能描述:在 Qdrant 数据库中搜索相关信息
  • 输入参数
    • query(字符串):用于执行搜索的查询语句
  • 返回结果:Qdrant 数据库中存储的信息,按独立消息格式呈现

环境变量配置

Qdrant 相关变量

  • RUST_LOG:设置运行时日志级别(默认值为 info)

MCP 服务器相关变量

  • QDRANT_URL:指定 Qdrant 服务的网络地址
  • COLLECTION_NAME:定义数据集合名称
  • EMBEDDING_MODEL:选择使用的嵌入式模型
  • TOOL_STORE_DESCRIPTION:存储功能的描述信息
  • TOOL_FIND_DESCRIPTION:搜索功能的描述信息

数据持久化

所有存储的数据将长期保存在 ./qdrant_storage 目录下。

服务管理操作

查看运行日志

docker-compose logs

停止服务运行

docker-compose down

⚠️ 重要提示

  • 定期备份重要数据以防止意外丢失。
  • 在生产环境中,请确保采取适当的安全防护措施。
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端