K8gentS — Kubernetes RCA MCP Server

K8gentS — Kubernetes RCA MCP Server

JDoornink
1 звёзд
K8gentS — диагностический агент для Kubernetes. Он подключает языковую модель (Google Gemini) к событиям кластера в реальном времени. Основная сложность проекта — не в интеграции с Kubernetes, а в доверии к недетерминированной системе. Традиционная observability строится на гарантиях: одинаковые запросы дают одинаковые ответы. LLM нарушает этот контракт. Один и тот же сбой может объясняться тремя разными способами. K8gentS не пытается сделать LLM предсказуемым. Он строит жесткие границы вокруг процесса диагностики: Результат: вы используете сильные стороны LLM — анализ и логику, но не даёте нейросети доступ к kubectl apply. Цель проекта — сократить MTTR на диагностируемых отказах без потери контроля.

Характеристики

Общее

  • СтатусСообщество
  • РазработчикJDoornink

Технологии

  • Языки
    Python
  • Транспорт
    stdio

Описание

Возможности

  • Отслеживает события (Event Stream) кластера Kubernetes в реальном времени.
  • Автоматически запускает анализ корневых причин (RCA) при Warning-событиях.
  • Формирует топ-3 гипотезы. Рассчитывает оценку уверенности (confidence score) для каждой.
  • Отправляет гипотезы и шаги по исправлению в Slack.
  • Поддерживает Human-in-the-Loop: исправление не выполняется без подтверждения оператором.
  • Выполняет исправления в изолированном Kubernetes Job с защитой OPA Gatekeeper.
  • Контролирует зону поражения на уровне API-сервера, независимо от RBAC.
  • Интегрируется с любым MCP-клиентом через транспорт stdio.

Как подключить

Установите пакет K8gentS:

pip install k8gents

Добавьте сервер в конфигурацию вашего MCP-клиента. Пример для Claude Desktop:

{ "mcpServers": { "k8gents": { "command": "python", "args": ["-m", "k8gents_mcp"] } } }

Перезапустите клиент, чтобы сервер подключился.

Примеры запросов

  • «Проанализируй Warning-события в кластере и покажи коренные причины сбоев».
  • «Найди топ-3 гипотезы для CrashLoopBackOff пода api-gateway».
  • «Отправь гипотезу по сбою базы данных в Slack и дождись моего подтверждения».
  • «Проверь, будет ли это изменение заблокировано OPA Gatekeeper?».

Технические детали

  • Язык: Python
  • Транспорт: stdio
  • Лицензия: смотрите в репозитории проекта
  • Совместимость: любой MCP-клиент (Claude Desktop, VS Code, JetBrains и другие)

Поделиться