Qdrant_mcpserver

Qdrant_mcpserver

🚀 Qdrant MCP Server

Qdrant MCP Server 是一个支持快速API和FastMCP协议的知识图谱操作双协议服务器,为Qdrant提供服务访问,可通过灵活的配置满足不同场景下的知识图谱操作需求。

🚀 快速开始

安装依赖

使用 poetry 进行依赖管理:

poetry install

启动服务器

# 启动FastAPI服务器,默认端口8000
python -m qdrant_mcp_server.main --server-type fastapi

# 或者启动MCP服务器,默认端口9000
python -m qdrant_mcp_server.main --server-type fastmcp

✨ 主要特性

  1. 灵活的服务器选择
    • 可通过命令行参数指定使用 FastAPI 或 FastMCP 服务器。
    • 两个服务器共享配置和 Qdrant 客户端,拥有统一的端点定义。
  2. 全面文档支持
    • 提供详细的文件结构说明,方便开发者了解项目架构。
    • 包含安装使用指南、环境变量参考以及开发流程说明。
  3. 生产环境就绪
    • 使用 poetry 进行依赖管理,确保依赖的一致性。
    • 支持通过环境变量进行配置,方便在不同环境中部署。
    • 提供了构建和部署说明,便于在生产环境中使用。
  4. 维护良好的结构
    • 各模块职责分离明确,提高代码的可维护性。
    • 核心功能可复用,减少代码冗余。
    • 遵循规范的开发流程,保证代码质量。

📦 安装指南

使用 poetry 进行依赖管理,只需执行以下命令即可完成依赖安装:

poetry install

💻 使用示例

基础用法

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():
"""运行FastAPI服务器"""
print(f"正在启动FastAPI服务器,端口为 {settings.port}")
uvicorn.run(
fastapi_app,
host="0.0.0.0",
port=settings.port,
log_level="info"
)

def run_fastmcp():
"""运行FastMCP服务器"""
print(f"正在启动FastMCP服务器,端口为 {settings.mcp_port}")
fastmcp_app.run(port=settings.mcp_port)

if __name__ == "__main__":
parser = argparse.ArgumentParser(description="运行Qdrant MCP Server")
parser.add_argument(
"--server-type",
choices=["fastapi", "fastmcp"],
default="fastmcp",
help="要运行的服务器类型(默认:fastmcp)"
)
args = parser.parse_args()

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

高级用法

在开发和部署过程中,可根据不同需求进行操作:

开发流程

  1. 创建虚拟环境并安装依赖:
poetry install
  1. 运行测试:
poetry run pytest --cov=qdrant_mcp_server --cov-report=term-missing
  1. 格式检查:
poetry run black .
poetry run isort .
  1. 类型检查:
poetry run mypy .

部署指南

  1. 构建生产包:
poetry build
  1. 系统范围安装:
pip install dist/*.whl
  1. 作为服务运行:
python -m qdrant_mcp_server.main --server-type fastmcp

📚 详细文档

项目结构

src/qdrant_mcp_server/
├── fastapi_server.py       # FastAPI服务器实现
├── fastmcp_server.py      # FastMCP服务器实现
└── config.py              # 配置管理模块

核心功能模块

  1. FastAPI 服务器
    • 提供 RESTful API 接口,支持 JSON 请求和响应。
    • 内置于 uvicorn Web 服务器。
  2. FastMCP 服务器
    • 实现 MCP 协议栈,支持远程过程调用 (RPC)。
    • 基于 asyncio 进行异步处理。
  3. 配置管理
    • 采用统一的环境变量配置,可自动获取端口和地址。
    • 支持日志级别的动态调整。
  • 0 关注
  • 0 收藏,33 浏览
  • system 提出于 2025-09-19 11:45

相似服务问题

相关AI产品