Files
mcp_test/README.md
Jacquin Antoine d4bd89b33b maj du readme
2026-02-21 23:58:43 +01:00

3.3 KiB

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 :

  1. 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.
  2. 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]
  3. chroma-db :

    • [cite_start]Base de données vectorielle (ChromaDB) servant de backend au service chroma-mcp. [cite: 2]

🛠️ 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.