Token导航 LogoToken导航TokenDH.com
qdrant mcpserver logo
数据服务stdio官方级别未说明来源级核验

qdrant mcpserver

MCP Server

支持FastAPI和FastMCP双协议的Qdrant知识图谱操作服务器,提供节点增删改查和语义搜索功能。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
知识图谱Python搜索向量数据库

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

davidwynter

提供方

davidwynter

最后核验

2026/5/17 20:19

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install dist/*.whl

详细介绍

用于Qdrant访问即服务的FastAPI客户端和MCPServer客户端

文件main.py是入口点,命令行参数选择要运行的服务器。

main.py

import argparse
import uvicorn
from fastapi_server import app as fastapi_app
from fastmcp_server import app as fastmcp_app
from config import settings

def run_fastapi():
    """Run the FastAPI server"""
    print(f"Starting FastAPI server on port {settings.port}")
    uvicorn.run(
        fastapi_app,
        host="0.0.0.0",
        port=settings.port,
        log_level="info"
    )

def run_fastmcp():
    """Run the FastMCP server"""
    print(f"Starting FastMCP server on port {settings.mcp_port}")
    fastmcp_app.run(port=settings.mcp_port)

if __name__ == "__main__":
    parser = argparse.ArgumentParser(description="Run Qdrant MCP Server")
    parser.add_argument(
        "--server-type",
        choices=["fastapi", "fastmcp"],
        default="fastmcp",
        help="Type of server to run (default: fastmcp)"
    )
    args = parser.parse_args()

    if args.server_type == "fastapi":
        run_fastapi()
    else:
        run_fastmcp()

Qdrant MCP服务器

用于Qdrant知识图操作的双协议服务器,支持FastAPI和FastMCP协议。

项目结构

src/qdrant_mcpserver/
├── __init__.py
├── config.py          # Configuration settings
├── qdrant_client.py   # Qdrant operations
├── fastapi_server.py  # FastAPI implementation
├── fastmcp_server.py  # FastMCP implementation
└── main.py            # CLI entry point

文件描述

config.py

  • 加载环境变量
  • 包含以下设置:

- Qdrant连接(URL,API密钥) - OpenAI API密钥 - 集合名称 - 服务器端口

  • 使用pydantic进行验证

qdrant_client.py

  • 执行核心Qdrant操作:

- 馆藏管理 - 节点追加/删除 - 矢量搜索

  • 通过OpenAI处理嵌入生成
  • 为两种服务器类型提供服务层

fastapi_server.py

  • FastAPI实现包括:

- RESTful端点 - CORS中间件 - OpenAPI文档

  • 终点:

- POST/节点/升级 - POST/节点/搜索 - 删除/节点 - GET/健康

fastmcp_server.py

  • FastMCP实施包括:

- MCP协议合规性 - 身份验证支持 - 标准化响应格式

  • 与FastAPI相同的端点,但具有MCP信封

main.py

  • CLI入口点:

- 服务器类型选择(--服务器类型) - 统一日志记录 - 端口配置

  • 运行FastAPI或FastMCP服务器

安装

  1. 安装诗歌(如果未安装):
curl -sSL https://install.python-poetry.org | python3 -
  1. 克隆存储库:
git clone https://github.com/your-repo/qdrant-mcpserver.git
cd qdrant-mcpserver
  1. 安装依赖项:
poetry install
  1. 配置环境:
cp .env.example .env
# Edit .env with your actual values

用法

运行服务器

# Run FastMCP server (default)
poetry run python -m qdrant_mcpserver.main

# Run FastAPI server
poetry run python -m qdrant_mcpserver.main --server-type fastapi

环境变量

变量必填描述
QDRANT_URLQDRANT服务器URL
QDRANT_API_KEYQDRANT API密钥
OPENAI_API_KEYOPENAI API密钥
集合名称默认值:“知识图”
PORTFastAPI端口(默认值:8000)
MCP_PORTFastMCP端口(默认值:8080)
MCP_SECRET身份验证密钥

API终点

两台服务器提供相同的端点:

  • POST /nodes/upsert -更新知识图节点
  • POST /nodes/search -跨节点语义搜索
  • DELETE /nodes -按ID删除节点
  • GET /health -健康检查

发展

代码格式化

这些命令确保了代码风格的一致性:

# Formats code according to Black's style guide (PEP 8 compliant)
poetry run black .

正确组织导入(将标准库、第三方库、本地库分组)

诗歌运行isort。格式代码:

poetry run black .
poetry run isort .

测试

使用pytest进行全面的测试覆盖。测试文件应反映主代码结构:

设置测试

poetry install --with test
poetry run pytest --cov --cov-report=html
# Run all tests
poetry run pytest -v

# Run with coverage report
poetry run pytest --cov=qdrant_mcpserver --cov-report=term-missing
Setup tests (one time):

类型检查:

poetry run mypy .

部署

构建生产包:

poetry build

在系统范围内安装:

pip install dist/*.whl

作为服务运行:

python -m qdrant_mcpserver.main --server-type fastmcp

主要特点:

  1. 灵活的服务器选择:

- CLI参数在FastAPI和FastMCP之间进行选择 - 共享配置和Qdrant客户端 - 两者端点一致

  1. 综合文档:

- 清晰的文件结构说明 - 安装和使用说明 - 环境变量引用 - 开发工作流程

  1. 生产准备就绪:

- 依赖管理诗 - 通过环境变量进行配置 - 构建和部署说明

  1. 可维护结构:

- 关注点分离 - 共享核心功能 - 明确的开发实践

该实现允许您在服务器协议之间切换,同时保持相同的底层Qdrant操作。

目录标签

目录标签

知识图谱Python搜索向量数据库本地部署双协议支持语义搜索RESTAPI

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP