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
poetry 进行依赖管理,确保依赖的一致性。使用 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()
在开发和部署过程中,可根据不同需求进行操作:
poetry install
poetry run pytest --cov=qdrant_mcp_server --cov-report=term-missing
poetry run black .
poetry run isort .
poetry run mypy .
poetry build
pip install dist/*.whl
python -m qdrant_mcp_server.main --server-type fastmcp
src/qdrant_mcp_server/
├── fastapi_server.py # FastAPI服务器实现
├── fastmcp_server.py # FastMCP服务器实现
└── config.py # 配置管理模块