AI上下文检索系统

一个通过整合组织知识源(GitHub、内部文档、API)来标准化AI上下文共享,为企业开发工作流提供领域感知AI辅助的MCP服务器。

  • by kalpalathika
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 kalpalathika/MCP-Enhanced-Data-Retrieval-System

使用说明

增强型数据检索系统(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

设置

  1. 克隆项目并导航至项目目录:

    cd "MCP Enhanced Data Retrieval"
    
  2. 创建虚拟环境:

    python3 -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
  3. 安装依赖项:

    pip install -r requirements.txt
    
  4. 配置环境变量:

    cp .env.example .env
    # Edit .env with your credentials
    
  5. 运行服务器:

    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)毕业设计