Qdrant Neo4j Crawl4AI MCP服务器
   
生产就绪的代理RAG MCP服务器,结合了Qdrant矢量搜索、Neo4j知识图和Crawl4AI网络智能以及自主编排功能
🎯 这是什么?
这是一个 代理RAG(检索增强生成)MCP服务器 其通过单个模型上下文协议接口提供多个AI服务的智能、自主协调。它结合了:
- 矢量智能:通过Qdrant进行语义搜索和嵌入存储
- 图形智能:通过Neo4j实现知识图谱和记忆系统
- 网络智能:通过Crawl4AI进行智能网络爬行和内容提取
- 代理编排:自主查询路由和结果融合
- 生产准备就绪:企业安全、监控和部署模式
🏗️ 建筑
graph TB
Client[AI Assistant Client] --> Gateway[FastMCP Gateway]
subgraph "Qdrant Neo4j Crawl4AI MCP Server"
Gateway --> Router[Request Router]
Router --> Vector[Vector Service]
Router --> Graph[Graph Service]
Router --> Web[Web Intelligence Service]
Vector --> |mount: /vector| QdrantMCP[Qdrant MCP Server]
Graph --> |mount: /graph| Neo4jMCP[Neo4j Memory MCP]
Web --> |mount: /web| Crawl4AIMCP[Crawl4AI MCP Server]
end
subgraph "Data Layer"
QdrantMCP --> QdrantDB[(Qdrant Vector DB)]
Neo4jMCP --> Neo4jDB[(Neo4j Graph DB)]
Crawl4AIMCP --> WebSources[Web Data Sources]
end⚡ 技术栈
- FastMCP 2.0:服务器组成和MCP协议处理
- Python 3.11+:现代异步模式和类型安全
- Qdrant:用于语义搜索的矢量数据库
- Neo4j:用于知识表示的图形数据库
- Crawl4AI:网络智能和内容提取
- 码头工人:带有健康检查的容器化部署
🚀 快速开始
先决条件
- Python 3.11+
- uv(推荐)或pip
- Docker&Docker编写
安装
# Clone the repository
git clone https://github.com/BjornMelin/qdrant-neo4j-crawl4ai-mcp.git
cd qdrant-neo4j-crawl4ai-mcp
# Install dependencies
uv sync
# Set up environment
cp .env.example .env
# Edit .env with your configuration
# Run with Docker
docker-compose up -d
# Or run locally
uv run python -m qdrant_neo4j_crawl4ai_mcp配置
关键环境变量:
# Server Configuration
MCP_SERVER_HOST=localhost
MCP_SERVER_PORT=8000
JWT_SECRET_KEY=your-secure-secret-key
# Database Configuration
QDRANT_URL=http://localhost:6333
NEO4J_URI=bolt://localhost:7687
NEO4J_USER=neo4j
NEO4J_PASSWORD=password
# Security
RATE_LIMIT_PER_MINUTE=100
CORS_ORIGINS=https://your-domain.com💻 发展
测试
# Run all tests
uv run pytest
# Run with coverage
uv run pytest --cov=qdrant_neo4j_crawl4ai_mcp --cov-report=html
# Run specific test suite
uv run pytest tests/integration/代码质量
# Format code
uv run ruff format .
# Lint code
uv run ruff check . --fix
# Type checking
uv run mypy .📚 API文档
运行后,访问交互式API文档,网址为:
- Swagger用户界面:
- ReDoc:
示例用法
import asyncio
from qdrant_neo4j_crawl4ai_mcp.client import QdrantNeo4jCrawl4AIMCPClient
async def main():
client = QdrantNeo4jCrawl4AIMCPClient("http://localhost:8000")
# Vector search
results = await client.vector_search("artificial intelligence")
# Graph query
memories = await client.graph_query("MATCH (n:Memory) RETURN n LIMIT 10")
# Web crawling
content = await client.web_crawl("https://example.com")
asyncio.run(main())📦 部署
Docker部署
# Production build
docker build -t qdrant-neo4j-crawl4ai-mcp .
docker run -p 8000:8000 qdrant-neo4j-crawl4ai-mcp云部署
- 铁路:通过railway.app一键部署
- Fly.io:全球边缘部署
- 亚马逊云服务:使用CDK进行ECS/Lambda部署
📚 完整的文件
🚀 入门指南
📖 用户指南
🔧 技术参考
🚢 部署和运营
- 🚀 部署操作 -生产部署
- ☸️ Kubernetes指南 -容器编排
- **** -集装箱化部署
- ☁️ 云平台 -铁路、Fly.io等。
💻 发展与贡献
📝 示例和教程
有关详细的部署指南,请参阅 🚢 部署操作.
🔒 安全与合规
- JWT身份验证:使用刷新令牌进行基于令牌的安全身份验证
- 速率限制:Redis支持的分布式请求限制
- OWASP合规性:遵循API安全最佳实践和安全标题
- 输入验证:全面的基于Pydantic的请求净化
- 审计日志:使用结构化日志记录进行安全事件跟踪
- 企业安全: 完整的安全强化指南
📊 监测和可观察性
- 健康检查:多层
/health具有依赖性验证的端点 - 结构化日志记录:带有相关ID和上下文的JSON日志
- 普罗米修斯指标:定制业务和基础设施指标
- Grafana仪表板:用于监控的预构建仪表板
- 错误跟踪:用于错误报告的哨兵集成
- 分布式跟踪:跨服务请求流可视化
安装指南: 📊 监测和可观察性
🤝 贡献
我们欢迎捐款!请查看我们的 贡献指南 了解详情。
贡献者快速入门
# 1. Fork and clone the repository
git clone https://github.com/BjornMelin/qdrant-neo4j-crawl4ai-mcp.git
cd qdrant-neo4j-crawl4ai-mcp
# 2. Set up development environment
uv sync --dev
uv run pre-commit install
# 3. Run tests to verify setup
uv run pytest
# 4. Start development server
docker-compose up -d
uv run python -m qdrant_neo4j_crawl4ai_mcp详细设置: 💻 开发者指南
📄 许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
🎯 项目目标
该项目展示了:
- 现代Python模式异步编程、类型安全和当前的生态系统工具
- AI/ML集成:矢量数据库、知识图谱和网络智能
- 生产工程:安全、监控、测试和部署自动化
- 清洁建筑:具有清晰抽象的可组合服务
- DevOps卓越:容器编排、CI/CD和基础架构即代码
📧 联系
- 作者:\[您的姓名\]
- 电子邮件: \[your.email@example.com\]
- 领英:\[linkedin.com/in/yourprofile\]
- 投资组合:\[yourprise.com\]
______________________________________________________________________
内置于☕ 使用FastMCP 2.0、Qdrant、Neo4j和Web Intelligence
