Ops-GPT MCP Ecosystem 🚀
Ce dépôt contient une infrastructure de diagnostic et de base de connaissances SRE (Site Reliability Engineering) basée sur le protocole Model Context Protocol (MCP). L'objectif est de permettre à un orchestrateur LLM d'automatiser le diagnostic d'incidents système et la recherche de solutions passées.
🏗️ Architecture du Projet
Le projet est composé de trois services principaux interconnectés :
-
ops-gpt-mcp(Diagnostic Engine) :- Simulateur d'outils SRE (Inventory, Sockets, Metrics, Configs).
- Interface directe avec les fichiers de données brutes des hôtes cibles.
- Propulsé par
FastMCP.
-
chroma-mcp(Knowledge Base) :- Assistant de gestion d'historique d'incidents.
- [cite_start]Utilise ChromaDB pour la recherche vectorielle de solutions techniques. [cite: 2]
- [cite_start]Propulsé par
FastMCP. [cite: 2]
-
chroma-db:- [cite_start]Base de données vectorielle (ChromaDB) servant de backend au service
chroma-mcp. [cite: 2]
- [cite_start]Base de données vectorielle (ChromaDB) servant de backend au service
🛠️ Catalogue des Outils (Tools)
Diagnostics Système (ops-gpt-mcp)
list_services_with_config: Identifie les middlewares actifs avec configurations agrégées.get_rpm_inventory: Audit complet des paquets RPM et version du noyau.get_network_sockets: État détaillé des sockets d'écoute (ss -ntulop).get_system_metrics: Extraction des métriques CPU/RAM/IO (VictoriaMetrics).get_live_config: Lecture du contenu brut des fichiers de configuration spécifiques.
[cite_start]Base de Connaissances (chroma-mcp) [cite: 2]
- [cite_start]
find_incident_solution: Recherche vectorielle de solutions basées sur une erreur ou un log. [cite: 2] - [cite_start]
add_incident_report: Archivage d'un nouvel incident résolu dans la base. [cite: 2] - [cite_start]
list_all_incidents: Consultation de l'historique des entrées de la base. [cite: 2]
🚀 Déploiement
Prérequis
- Docker et Docker Compose.
- Structure de données attendue dans
./data/[hostname]/.
Lancement de la stack
Pour démarrer l'ensemble des services :
docker compose up -d --build
Vérification des serveurs
Les serveurs exposent des interfaces SSE sur les ports suivants :
- Ops-GPT MCP :
http://localhost:8081/sse - Chroma MCP :
http://localhost:8080/sse
📁 Structure des Données de Diagnostic
Le simulateur ops-gpt-mcp s'appuie sur une structure de fichiers spécifique pour fonctionner :
./data/
└── srv-rhel-prod-01/
├── rpm_inventory.txt
├── network_ss.txt
├── metrics_vm.txt
└── nginx_conf.txt
🔧 Technologies utilisées
- [cite_start]Langage : Python 3.11-slim [cite: 1]
- [cite_start]Protocol : Model Context Protocol (MCP) [cite: 2]
- [cite_start]Framework : FastMCP [cite: 2]
- [cite_start]Database : ChromaDB (Vector Store) [cite: 2]
- [cite_start]Server : Uvicorn (Transport SSE) [cite: 3]
📝 Configuration Git
Toute recherche ou stockage dans la base de données doit se faire en langue anglaise pour correspondre à la documentation technique majoritaire. Les solutions sont système-based afin de prioriser la restauration de service sans perte de données.