Kubernetes MCP Server
https://github.com/user-attachments/assets/89df70b0-65d1-461c-b4ab-84b2087136fa
Un servidor Model Context Protocol (MCP) que proporciona accés segur i només de lectura als recursos de Kubernetes per a depuració i inspecció. Construït amb la seguretat en ment, ofereix visibilitat completa del clúster sense capacitats de modificació.
Característiques
- 🔒 Seguretat només de lectura: Inspecciona els recursos de Kubernetes de manera segura sense capacitats de modificació
- 🎯 Suport CRD: Funciona sense problemes amb qualsevol Custom Resource Definition del teu clúster
- 🌐 Suport Multi-Cluster: Canvia entre diferents contextos de Kubernetes sense interrupcions
- 🔍 Descoberta intel·ligent: Troba recursos per substring del grup d'API (p. ex. "flux" per FluxCD, "argo" per ArgoCD)
- ⚡ Alt rendiment: Consultes drecament eficients amb filtratge i paginació
- 🛠️ Conjunt d'eines complet:
list_resources: Llista i filtra recursos de Kubernetes amb opcions avançadesdescribe_resource: Obté informació detallada sobre recursos específicsget_pod_logs: Recupera logs de pod amb capacitats de filtratge sofisticadeslist_events: Llista i filtra esdeveniments de Kubernetes per a depuració i monitoritzaciólist_contexts: Llista tots els contextos disponibles de Kubernetes des del kubeconfig
🚀 Inici ràpid
Requisits previos
- Accés a un clúster de Kubernetes amb un fitxer kubeconfig vàlid
- Go 1.24+ (per construir des de la font)
Opcions d'instal·lació
Opció 1: Instal·lar amb Go (Recomanat)
go install github.com/kkb0318/kubernetes-mcp@latest
El binari estarà disponible a $GOPATH/bin/kubernetes-mcp (o $HOME/go/bin/kubernetes-mcp si GOPATH no està configurat).
Opció 2: Construir des de la font
git clone https://github.com/kkb0318/kubernetes-mcp.git
cd kubernetes-mcp
go build -o kubernetes-mcp .
⚙️ Configuració
Configuració del servidor MCP
Afegeix el servidor a la teva configuració MCP:
Configuració Bàsica
Utilitza ~/.kube/config automàticament:
{
"mcpServers": {
"kubernetes": {
"command": "/path/to/kubernetes-mcp"
}
}
}
Configuració personalitzada de Kubeconfig
{
"mcpServers": {
"kubernetes": {
"command": "/path/to/kubernetes-mcp",
"env": {
"KUBECONFIG": "/path/to/your/kubeconfig"
}
}
}
}
Nota: Substitueix
/path/to/kubernetes-mcpamb el camí real del teu binari.
Ús independent
# Kubeconfig per defecte (~/.kube/config)
./kubernetes-mcp
# Camí personalitzat de kubeconfig
KUBECONFIG=/path/to/your/kubeconfig ./kubernetes-mcp
Important: Assegura't de tenir permisos de lectura adequats per als recursos de Kubernetes que vols inspeccionar.
🛠️ Eines disponibles
list_resources
Llista i filtra recursos de Kubernetes amb capacitats avançades.
| Paràmetre | Tipus | Descripció |
|---|---|---|
context | opcional | Nom del context de Kubernetes del kubeconfig (deixa buit per al context actual) |
kind | obligatori | Tipus de recurs (Pod, Deployment, Service, etc.) o "all" per a descobriment |
groupFilter | opcional | Filtra per substring del grup d'API per recursos específics del projecte |
namespace | opcional | Namespace objectiu (per defecte tots els namespaces) |
labelSelector | opcional | Filtra per etiquetes (p. ex. "app=nginx") |
fieldSelector | opcional | Filtra per camps (p. ex. "metadata.name=my-pod") |
limit | opcional | Nombre màxim de resultats a retornar |
# Exemple de llistat de recursos
describe_resource
Obté informació detallada sobre recursos específics.
| Paràmetre | Tipus | Descripció |
|---|---|---|
context | opcional | Nom del context de Kubernetes del kubeconfig (deixa buit per al context actual) |
kind | obligatori | Tipus de recurs (Pod, Deployment, Service, etc.) |
name | obligatori | Nom del recurs a descriure |
# Exemple de descripció de recurs
get_pod_logs
Recupera logs de pod amb capacitats de filtratge sofisticades.
| Paràmetre | Tipus | Descripció |
|---|---|---|
context | opcional | Nom del context de Kubernetes del kubeconfig (deixa buit per al context actual) |
namespace | opcional | Namespace objectiu (per defecte tots els namespaces) |
pod | obligatori | Nom del pod per al qual obtenir logs |
container | opcional | Nom del contenidor dins del pod (si s'aplica) |
tail | opcional | Nombre de línies finals a mostrar |
sinceSeconds | opcional | Fil
Relacionats a Servei en núvol - MCP Servers segurs |




