增强型数据检索系统(MCP版)
一个MCP(模型上下文协议)服务器,通过整合组织知识源(如GitHub、内部文档、APIs)来标准化AI上下文共享,从而为企业开发工作流程提供具备领域感知能力的AI辅助。
项目概述
该系统实现了模型上下文协议,以提供:
- 跨组织知识源的标准化AI上下文共享
- GitHub仓库与OAuth 2.1认证的集成
- 使用嵌入进行基于向量的语义搜索
- 优化了1500个标记的上下文分块,以实现低于500毫秒的首字等待时间(TTFT)
- 带有2秒超时的并行检索策略
- 使用FastAPI实现可流式传输的HTTP传输
建筑学
AI Applications
↓
Authentication (OAuth 2.1 + RBAC)
↓
MCP Client
↓
MCP Protocol (JSON-RPC + HTTP)
↓
MCP Server
• Multi-threaded parallel retrieval
• 1500-token chunking
↓
Knowledge Tiers (Public, Internal, Restricted)
↓
Data Sources: GitHub | Docs
Vector Storage: Embeddings特点/功能
- MCP协议合规性基于可流式传输的HTTP的JSON-RPC 2.0
- GitHub 集成仓库数据检索与情境化处理
- 向量嵌入使用ChromaDB和Sentence Transformers进行语义搜索
- 上下文优化1500个标记的分块处理与并行检索
- OAuth 2.1 安全性用于GitHub访问的安全认证
- 演出响应时间低于500毫秒,检索超时设置为2秒
项目结构
.
├── src/
│ ├── server/ # MCP server core and FastAPI app
│ ├── auth/ # OAuth 2.1 authentication
│ ├── github/ # GitHub API integration
│ ├── vector/ # Vector database and embeddings
│ └── utils/ # Utilities and helpers
├── tests/ # Test suite
├── config/ # Configuration files
├── data/ # Data storage (vector DB, cache)
├── logs/ # Application logs
├── requirements.txt # Python dependencies
└── .env.example # Environment variables template
设置
- 克隆项目并导航至项目目录:
cd "MCP Enhanced Data Retrieval"- 创建虚拟环境:
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- 安装依赖项:
pip install -r requirements.txt- 配置环境变量:
cp .env.example .env
# Edit .env with your credentials- 运行服务器:
uvicorn src.server.main:app --reload里程碑1的目标
- ✅ MCP协议分析及通信流程评估
- ✅ 企业知识集成的高水平架构设计
- 具有GitHub集成功能的MCP服务器
- 🔄 OAuth 2.1 认证实现
- 🔄 1500个标记(token)上下文分块机制
- 🔄 基于向量的语义搜索
成功标准
- 功能齐全的MCP服务器,能够检索并上下文化GitHub仓库信息
- 用于安全访问GitHub的OAuth 2.1认证
- 1500个标记的上下文分块处理,保持低于500毫秒的首字节响应时间(TTFT)
- 并行检索,超时设置为2秒
- 基于向量的语义搜索以查找相关内容
技术
- MCP SDK(MCP软件开发工具包)Anthropic MCP Python SDK
- 网络框架使用可流式传输的HTTP传输的FastAPI
- GitHub APIPyGithub
- 认证OAuth 2.1(authlib)
- 向量数据库ChromaDB(音译可为“科罗姆数据库”,但具体翻译可能需根据上下文或品牌官方译名调整)
- 嵌入(表示)句子变换器(all-MiniLM-L6-v2)
- 令牌处理tiktoken(注:这是一个专有名词,通常指的是一个用于计算文本中token数量的库或工具,直接翻译为“tiktoken”即可,无需额外解释其含义)
作者
卡拉帕拉蒂卡·拉玛努贾姆 导师:托马斯·金斯曼博士 罗切斯特理工学院
许可证
学术项目 - 理工学院(RIT)毕业设计
