Qdrant Mcp Server

Qdrant Mcp Server

🚀 Qdrant MCP 服务器

Qdrant MCP 服务器是一个用于与 Qdrant 向量数据库交互的工具。它提供了管理向量、执行相似搜索的功能,还能借助 MCP(主控程序)框架自动实现文本到向量的嵌入。

🚀 快速开始

Qdrant MCP 服务器可以在本地运行,也可以通过 Docker 运行。以下是具体的操作步骤:

本地运行

  1. 安装包:
pip install -e .
  1. 运行服务器:
qdrant-mcp-server

Docker 运行

  1. 构建 Docker 镜像:
docker build -t qdrant-mcp-server .
  1. 运行容器:
docker run -p 8000:8000 --env QDRANT_HOST= --env QDRANT_PORT= --env QDRANT_VERIFY_SSL= qdrant-mcp-server

✨ 主要特性

  • 使用 FastEmbed 自动进行文本到向量的嵌入
  • 存储和检索带有向量搜索的文本内容
  • 通过环境变量配置默认集合
  • 根据内容进行文本相似度搜索
  • 使用优化模型高效嵌入

📦 安装指南

基于 .env.example 模板创建一个 .env 文件:

# Qdrant 连接设置
QDRANT_HOST=localhost
QDRANT_PORT=6333
QDRANT_API_KEY=
QDRANT_VERIFY_SSL=True  # 如果使用自签名证书,请设为 False

# 默认设置
DEFAULT_COLLECTION_NAME=default_collection
EMBEDDING_MODEL=BAAI/bge-small-en-v1.5

你可以将嵌入模型更改为任何受 FastEmbed 支持的模型。

💻 使用示例

基础用法

存储文本

await store_text(
text="What is the capital of France?",
metadata={"category": "geography", "type": "question"}
)

搜索相似文本

await search_similar_text(
query="What is Paris the capital of?",
limit=5
)

批量存储文本

await store_texts(
texts=["Paris is in France", "London is in England", "Berlin is in Germany"],
metadatas=[
{"category": "geography", "country": "France"},
{"category": "geography", "country": "England"},
{"category": "geography", "country": "Germany"}
]
)

高级用法

测试

此包包含一个测试套件,用于验证功能。要运行测试:

  1. 安装开发依赖项:
pip install -e ".[dev]"
  1. 运行测试:
cd tests
./run_tests.py

或者直接使用 pytest:

pytest -xvs tests/

使用自签名证书

如果您的 Qdrant 服务器使用自签名证书,请在 .env 文件或运行 Docker 容器时将 QDRANT_VERIFY_SSL=False。这会禁用 SSL 证书验证。

📚 详细文档

该服务器提供以下工具:

文本工具

  • store_text:将文本转换为嵌入向量并存储在数据库中
  • search_similar_text:将查询文本转换为嵌入,并查找相似的向量
  • store_texts:批量将多个文本转换为嵌入并存储

向量工具

  • search_vectors:在集合中搜索相似向量
  • upsert_vectors:将向量上传到集合
  • filter_search:使用元数据过滤器进行搜索

点工具

  • get_points:从集合中按 ID 获取点
  • delete_points:从集合中按 ID 删除点
  • count_points:计算集合中的点数
  • 0 关注
  • 0 收藏,20 浏览
  • system 提出于 2025-09-23 02:00

相似服务问题

相关AI产品