DocOps MCP助理
通过MCP服务器处理文档的AI助手(Git+Confluence+Vectorstore) *Gradio应用程序+3 MCP服务器+演示存储库。*
关于项目
DocOps MCP Assistant 这是一个基于技术的人工智能代理。 MCP(模型上下文协议). 代理与 外部MCP服务器负责各种职能(见下表)。
MCP服务器功能 | ------------------------- | ------------------------------------------------------------------- | | Git MCP服务器 –读取Markdown文件,列出目录,搜索代码/码头› | 汇流MCP服务器 –搜索页面,创建页面(布局),获取内容→ | 矢量MCP服务器 搜索现成的文档向量索引(JSONL数据库)。
客户部分实现于 格拉迪奥代理:Python。
关键能力
- AI-文档搜索 (Git+矢量库)
- 通过MCP处理Confluence (搜索、起草页面)
- 通过MCP进行Git导航 --list_files、read_file
- LLM上下文响应 从文件
- 全套测试 对于MCP服务器和UI/代理
- 自动生成演示存储库 (
seed_demo_data.py)(为演示添加了功能) - Docker Compose启动整个系统
- 生成文件 dev/test/workflow任务
🧩 建筑
┌───────────────────────┐
│ Gradio UI │
│ (app/main.py) │
└───────────┬───────────┘
│ вызывает
┌───────────▼───────────┐
│ DocOpsAgent │
│ (app/agent/*) │
└───────────┬───────────┘
│ через MCP Client
┌───────────▼─────────────┐
│ MCP Client Layer │
│ (git / conf / vector) │
└───────────┬─────────────┘
вызывает MCP-серверы
│
─────────────────────────────────────
│ Git MCP Server (localhost:8760)
│ Confluence MCP Server (localhost:8761)
│ Vector MCP Server (localhost:8762)
─────────────────────────────────────要求
- python 3.10+
- 点
- OpenAI API密钥
- Windows/macOS/Linux
安装和启动
通过BAT文件:
双击文件 run_all.bat.
通过SH脚本:
- 做脚本
run.sh执行:
chmod +x run_all.sh- 运行脚本:
./run_all.sh使用Docker Compose
运行命令:
docker compose up --build通过makefile(Linux/macOS)
如果有GNU Make,请依次执行:
make dev # запуск UI + seed
make mcp # запустить MCP-серверы
make test # запустить pytest测试
在项目根中运行命令:
pytest -q项目结构
app/ # Основное приложение (UI + агент + клиент MCP)
agent/ # Логика ИИ-агента
agent.py # Главный класс DocOpsAgent (интеграция MCP + LLM)
prompts.py # Системные промпты и шаблоны
workflows.py # Основные рабочие процессы: QA по документам и др.
ui/ # Gradio-интерфейс
callbacks.py # Функции-обработчики событий UI
components.py # Компоненты интерфейса (кнопки, поля, layout-элементы)
layout.py # Высокоуровневый layout Gradio-приложения
config/ # Конфигурация (проектная и глобальная)
projects.yaml # Список доступных проектов (demo_repos)
settings.py # Pydantic-настройки + .env параметры
core/ # Базовые внутренние механизмы
llm.py # Обертка над OpenAI API (LLM-клиент)
logging.py # Инициализация логирования
models.py # Pydantic-модели, общие типы данных
storage.py # Локальное хранилище (если нужно расширение)
mcp_client/ # Клиентская часть, взаимодействие с MCP-серверами
client.py # Управление подключениями к MCP
confluence_tools.py # Высокоуровневые операции MCP Confluence
git_tools.py # Высокоуровневые операции MCP Git
vector_tools.py # Высокоуровневые операции MCP Vector Store
mcp-servers/ # Серверная часть MCP (3 отдельных сервиса)
git-mcp-server/
mcp_git/
github_client.py # Чтение/поиск файлов в demo репозиториях
server.py # Git MCP Server — реализация MCP протокола
utils.py # Вспомогательные функции
tests/
test_git_server.py # Тесты Git MCP сервера
confluence-mcp-server/
mcp_confluence/
api_client.py # HTTP-клиент для mock Confluence API
server.py # Confluence MCP Server
utils.py # Утилиты
tests/
test_confluence_server.py # Тесты Confluence MCP сервера
vector-mcp-server/
mcp_vector/
server.py # Vector MCP Server
store.py # Хранилище
tests/
test_vector_server.py # Тесты Vector MCP сервера
scripts/ # Скрипты для разработки
dev_tools.py # Служебные инструменты/утилиты
run_app.py # Альтернативный запуск UI
seed_demo_data.py # Генерация demo_data/ (Markdown-файлы)
seed_projects.py # Генерация projects.yaml для демо
tests/ # Интеграционные тесты
test_agent_flows.py # Тесты логики агента
test_mcp_integration.py # Тесты интеграции MCP клиентов
test_ui_smoke.py # Смоук Gradio UI
# demo_data — динамически создается seed-скриптами
demo_data/
demo_repos/
docops-saas/ # Демо-проект: документация SaaS-платформы
airport-food/ # Демо-проект: документация сервиса доставкиhealth-check端点
Gradio服务器提供Fastapi Endpoint:
GET /health返回:
{"status": "ok"}UI查询示例
在接口中:
"Как работает биллинг в DocOps-SaaS?"助理:
- 在Git中搜索相关文件
- 搜索VectorStore
- 将片段传输到LLM
- 形成详细答案
在UI的底部显示“源”。
将来可以添加什么
- 改进文件的自动建议
- 自动索引Git存储库
许可证
麻省理工学院
*如果有启动问题,测试等。写在Issues上。欢迎建设性的馈电和池要求!*
