Home
Login

MCP-Server für Kubernetes-Clusterverwaltungsbefehle

MITTypeScript 0.8kFlux159mcp-server-kubernetes Last Updated: 2025-06-24

Kubernetes MCP Server – Projektdetails

Projektübersicht

Der Kubernetes MCP Server ist ein Model Content Protocol (MCP)-Server, der speziell für die Verwaltung von Kubernetes-Clustern entwickelt wurde. Er ermöglicht es KI-Agenten (wie Claude), über Befehle in natürlicher Sprache eine Verbindung zu Kubernetes-Clustern herzustellen und diese zu verwalten, wodurch die Komplexität der Container-Orchestrierung und des Clusterbetriebs erheblich vereinfacht wird.

Projektadresse: https://github.com/Flux159/mcp-server-kubernetes

Kernfunktionen

🎯 Cluster-Verbindung und -Verwaltung

  • Automatische Verbindung zum aktuell in der kubectl-Kontextkonfiguration konfigurierten Cluster
  • Unterstützung für verschiedene Kubernetes-Umgebungen (minikube, Rancher Desktop, GKE usw.)
  • Vollständige Kompatibilität mit bestehenden kubeconfig-Konfigurationen

📦 Pod- und Deployment-Verwaltung

  • Pod-Operationen: Erstellen, Beschreiben, Löschen von Pods
  • Deployment-Verwaltung: Auflisten aller Deployments, Aktualisieren der Replikatanzahl
  • Benutzerdefinierte Konfiguration: Unterstützung für die Erstellung benutzerdefinierter Pod- und Deployment-Konfigurationen
  • Log-Anzeige: Abrufen von Pod-Logs zur Fehlersuche (Unterstützung für Pod-, Deployment-, Job- und Label-Selektoren)

🌐 Service- und Netzwerkverwaltung

  • Service-Operationen: Erstellen, Beschreiben, Löschen, Aktualisieren von Services
  • Portweiterleitung: Unterstützung der Portweiterleitung für Pods oder Services
  • Netzwerkkonfiguration: Vollständige Unterstützung für die Kubernetes-Netzwerkverwaltung

🗂️ Ressourcen- und Konfigurationsverwaltung

  • Namespaces: Auflisten aller Namespaces, Erstellen neuer Namespaces
  • ConfigMaps: Erstellen, Abrufen, Aktualisieren, Löschen von Konfigurationszuordnungen
  • Knotenverwaltung: Auflisten und Beschreiben von Clusterknoten
  • Geplante Aufgaben: Erstellen, Auflisten und Beschreiben von CronJobs

⚙️ Helm-Integrationsunterstützung

  • Chart-Installation: Installieren von Helm-Charts mit benutzerdefinierten Werten
  • Versionsverwaltung: Unterstützung für Versionsspezifikationen und benutzerdefinierte Repositories
  • Release-Verwaltung: Deinstallieren und Aktualisieren bestehender Releases
  • Namespace-Unterstützung: Vollständige Namespace-Isolation

🔧 Erweiterte Funktionen

  • kubectl-Unterstützung: kubectl explain- und kubectl api-resources-Befehle
  • Ereignisüberwachung: Abrufen von Clusterereignisinformationen
  • Nicht-destruktiver Modus: Sicherheitsmodus, der nur Lese- und Erstellungs-/Aktualisierungsoperationen zulässt
  • Echtzeitüberwachung: Unterstützung der Echtzeitanzeige des Clusterstatus

Systemarchitektur

Architekturschema

Client (Claude/KI-Agent)
    ↓
StdioTransport (Kommunikationsübertragungsschicht)
    ↓
MCP Server (Protokollverarbeitung)
    ↓
Request Handler (Anfrage-Routing)
    ↓
KubernetesManager (K8s-Manager)
    ↓
Kubernetes API (Cluster-API)

Anfrageablauf

  1. Client-Anfrage: Der KI-Agent sendet eine Anfrage über STDIO
  2. Übertragungsschicht: StdioTransport leitet die Anfrage an den MCP-Server weiter
  3. Routing-Verarbeitung: Der Server leitet die Anfrage an den entsprechenden Handler weiter
  4. Tool-Ausführung: KubernetesManager führt die spezifischen K8s-Operationen aus
  5. API-Aufruf: Interaktion mit der Kubernetes-API
  6. Antwortrückgabe: Das Verarbeitungsergebnis wird schrittweise an den Client zurückgegeben

Installation und Konfiguration

Systemanforderungen

  • kubectl: Installiert und im PATH konfiguriert
  • kubeconfig: Gültige kubeconfig-Datei und Kontextkonfiguration
  • Kubernetes-Cluster: Zugänglicher Cluster (minikube, GKE, EKS usw.)
  • Helm v3: Optional, falls Helm-Funktionen verwendet werden sollen
  • Node.js: Laufzeitumgebung

Schnellinstallation

Installation über NPM (empfohlen)

# Globale Installation
npm install -g mcp-server-kubernetes

# Oder direkte Ausführung mit npx
npx mcp-server-kubernetes

Claude Desktop-Integration

Bearbeiten Sie die Datei claude_desktop_config.json:

{
  "mcpServers": {
    "kubernetes": {
      "command": "npx",
      "args": ["mcp-server-kubernetes"]
    }
  }
}

Verbindungsüberprüfung

Nach der Installation können Sie:

  1. Claude bitten, Ihre Pods aufzulisten
  2. Ein Test-Deployment erstellen
  3. Bei Fehlern zuerst kubectl get pods im Terminal ausführen, um die Verbindung zu überprüfen

Entwicklungsumgebung einrichten

Lokale Entwicklung

# Repository klonen
git clone https://github.com/Flux159/mcp-server-kubernetes.git
cd mcp-server-kubernetes

# Abhängigkeiten installieren (benötigt bun)
bun install

# Entwicklungsmodus starten (Überwachung von Dateiänderungen)
bun run dev

# Unit-Tests ausführen
bun run test

# Projekt erstellen
bun run build

Anwendungsfälle und Beispiele

🚀 Tägliche Betriebszenarien

  • "Liste den Status aller Pods auf" – Schnelle Überprüfung des Clusterzustands
  • "Erstelle ein nginx-Deployment mit 3 Replikaten" – Schnelle Anwendungsbereitstellung
  • "Zeige die Logs des fehlerhaften Pods im Namespace default an" – Fehlerbehebung
  • "Leite den Anwendungsport auf localhost:8080 weiter" – Lokales Debugging

📊 Überwachung und Debugging

  • "Zeige alle Ereignisse im Cluster an" – Überwachung der Clusteraktivität
  • "Beschreibe die Details des Knotens node-1" – Ressourcenanalyse
  • "Zeige die letzten CronJob-Ausführungen an" – Überwachung geplanter Aufgaben

🛠️ Anwendungsbereitstellung

  • "Installiere das Redis-Chart mit Helm" – Schnelle Bereitstellung von Middleware
  • "Aktualisiere die Anzahl der Replikate des web-app-Deployments auf 5" – Skalierungsvorgang
  • "Erstelle eine ConfigMap für die Produktionsumgebung" – Konfigurationsverwaltung

Erweiterte Konfiguration

Nicht-destruktiver Modus

Setzen Sie die Umgebungsvariable, um den Sicherheitsmodus zu aktivieren:

export ALLOW_ONLY_NON_DESTRUCTIVE_TOOLS=true

In diesem Modus sind nur Lese- und Erstellungs-/Aktualisierungsoperationen zulässig, Löschoperationen sind verboten.

SSE-Übertragungsprotokoll

Unterstützung für das Server-Sent Events-Übertragungsprotokoll. Detaillierte Konfigurationen finden Sie in der ADVANCED_README.md des Projekts.

Cluster-Authentifizierung

Unterstützung für verschiedene Kubernetes-Authentifizierungsmethoden:

  • Zertifikatsauthentifizierung
  • Token-Authentifizierung
  • OIDC-Authentifizierung
  • Cloud-Anbieter IAM-Integration

Technologiestack und Abhängigkeiten

Kerntechnologien

  • Laufzeit: Node.js + Bun
  • Protokoll: Model Content Protocol (MCP)
  • Kubernetes-Client: Offizieller Kubernetes JavaScript Client
  • Übertragungsschicht: STDIO Transport
  • Paketverwaltung: Helm v3

Hauptabhängigkeiten

  • @kubernetes/client-node: Offizieller Kubernetes JS-Client
  • @modelcontextprotocol/sdk: MCP-Protokoll-SDK
  • commander: Befehlszeilenparameter-Parsing
  • yaml: YAML-Datei Verarbeitung

Verwandte Projekte und Ökosystem

MCP-Ökosystem

  • mcp-chat: CLI-Chat-Client für den MCP-Server
  • MCP Inspector: MCP-Protokoll-Debugging-Tool
  • Claude Desktop: KI-Assistent-Desktop-Anwendung mit MCP-Unterstützung

Kubernetes-Toolchain

  • kubectl: Offizielles Befehlszeilentool
  • Helm: Paketmanager
  • minikube: Lokale Entwicklungsumgebung
  • Rancher Desktop: Desktop-Kubernetes-Umgebung

Anwendungsperspektiven und Wert

🎯 Steigerung der Betriebseffizienz

Die Bedienung von Kubernetes-Clustern in natürlicher Sprache reduziert die Lernkurve und erhöht die Betriebseffizienz. Auch Anfänger können komplexe Clusterverwaltungsaufgaben schnell erlernen.

🤖 Intelligenter Betrieb

In Kombination mit den intelligenten Analysefunktionen von KI-Agenten können folgende Ergebnisse erzielt werden:

  • Automatische Fehlerdiagnose
  • Intelligente Ressourcenempfehlungen
  • Vorausschauende Wartung
  • Automatisierte Bereitstellungsoptimierung

🔗 Nahtlose Integration

Vollständige Kompatibilität mit dem bestehenden Kubernetes-Ökosystem, ohne bestehende Arbeitsabläufe zu ändern. Die KI-gestützte Wartung kann schrittweise eingeführt werden.

📈 Zukünftige Entwicklungsrichtungen

  • Unterstützung für weitere Kubernetes-Ressourcentypen
  • Integration weiterer Cloud-nativer Tools
  • Verbesserung der Sicherheit und Zugriffskontrolle
  • Unterstützung der Multi-Cluster-Verwaltung
  • Grafische Benutzeroberfläche

Zusammenfassung

Das Kubernetes MCP Server-Projekt stellt einen innovativen Versuch dar, KI und Cloud-native Technologien zu kombinieren. Es vereinfacht die Komplexität der Kubernetes-Clusterverwaltung durch eine Schnittstelle in natürlicher Sprache und ermöglicht es dem Betriebspersonal, containerisierte Anwendungen intuitiver und effizienter zu verwalten.

Egal, ob Sie ein Kubernetes-Neuling oder ein erfahrener Betriebsexperte sind, dieses Tool kann Ihre Arbeitseffizienz erheblich steigern. Durch die Integration mit KI-Assistenten wie Claude eröffnet es neue Möglichkeiten für den intelligenten Betrieb und ist eine wertvolle Ergänzung der modernen DevOps-Toolchain.

Mit der Weiterentwicklung der Cloud-nativen Technologien und dem kontinuierlichen Fortschritt der KI-Technologien wird erwartet, dass diese Art von Tool in Zukunft eine immer wichtigere Rolle im IT-Betrieb spielen wird.

Star History Chart