An MCP (Model Context Protocol) server for managing multiple Kubernetes clusters simultaneously. Provides 60+ tools covering cluster operations, resource management, monitoring, RBAC, storage…
Multi Cluster Kubernetes MCP Server is an MCP project maintained in the razvanmacovei/k8s-multicluster-mcp repository. The maintainer describes its purpose as “An MCP (Model Context Protocol) server for managing multiple Kubernetes clusters simultaneously. Provides 60+ tools covering cluster operations, resource management, monitoring, RBAC, storage, networking, and…”. Read the project documentation for the complete scope.
The project provides a local client configuration using python3. Follow the repository’s build and installation steps before copying it, and replace example paths with the paths on your own computer.
The example declares KUBECONFIG_DIR. Secret-looking values have been replaced with placeholders. Required and optional labels are shown only when the documentation states them.
Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.
Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.
| Tool | What it does |
|---|---|
| k8s_get_contexts | List all available contexts across all kubeconfig files |
| k8s_get_namespaces | List all namespaces in a cluster |
| k8s_create_ns | Create a new namespace with optional labels/annotations |
| k8s_delete_ns | Delete a namespace (protects system namespaces) |
| k8s_get_nodes | List all nodes with status, roles, capacity, and version |
| k8s_cluster_info | Comprehensive cluster health summary (nodes, pods, deployments, warnings) |
| k8s_get_resources | List resources of any kind (pods, deployments, services, ingress, etc.) |
| k8s_get_resource | Get the complete definition of a single resource |
| k8s_get_pod_logs | Get pod logs with duration filtering and container selection |
| k8s_get_events | List cluster events in a namespace, sorted by most recent |
| k8s_describe | Detailed resource description similar to kubectl describe |
| k8s_apis | List all available API groups and resources in the cluster |
| k8s_crds | List all Custom Resource Definitions with versions and scope |
| k8s_top_nodes | Display node CPU/memory usage alongside capacity |
| k8s_top_pods | Display pod/container CPU/memory usage |
| k8s_diagnose_application | Comprehensive app diagnostics with issue detection and recommendations |
| k8s_rollout_status | Get rollout status for deployment/statefulset/daemonset |
| k8s_rollout_history | Get revision history |
| k8s_rollout_undo | Roll back to a previous revision |
| k8s_rollout_restart | Trigger a rolling restart |
| k8s_rollout_pause | Pause an in-progress rollout |
| k8s_rollout_resume | Resume a paused rollout |
| k8s_scale_resource | Scale deployment/statefulset/replicaset to N replicas |
| k8s_autoscale_resource | Configure Horizontal Pod Autoscaler (HPA) |
| k8s_update_resources | Update CPU/memory requests and limits for a container |
| k8s_create_resource | Create a resource from YAML/JSON content |
| k8s_apply_resource | Apply configuration (create or update, like kubectl apply) |
| k8s_delete_resource | Delete any resource type with optional force/grace period |
| k8s_patch_resource | Update specific fields with strategic merge patch |
| k8s_label_resource | Add or update labels on a resource |
| k8s_annotate_resource | Add or update annotations on a resource |
| k8s_expose_resource | Expose a deployment/pod as a new Service |
| k8s_run_pod | Create and run a pod with a specified image |
| k8s_set_resources_for_container | Set resource limits/requests for containers |
| k8s_cordon_node | Mark a node as unschedulable |
| k8s_uncordon_node | Mark a node as schedulable |
| k8s_drain_node | Drain a node by evicting pods (for maintenance) |
| k8s_taint_node | Add taints to a node |
| k8s_untaint_node | Remove taints from a node |
| k8s_pod_exec | Execute a command in a container (supports quoted arguments) |
| k8s_list_secret | List secrets with metadata (values hidden for security) |
| k8s_get_secret_detail | Get a secret; optionally decode values |
| k8s_create_secret_resource | Create a new secret (auto base64-encodes values) |
| k8s_list_configmap | List ConfigMaps with their key names |
| k8s_get_configmap_detail | Get a ConfigMap with full data contents |
| k8s_create_configmap_resource | Create a new ConfigMap |
| k8s_get_roles | List RBAC Roles with permission rules |
| k8s_get_clusterroles | List RBAC ClusterRoles |
| k8s_get_rolebindings | List RoleBindings (who has what role) |
| k8s_get_clusterrolebindings | List ClusterRoleBindings |
| k8s_get_service_accounts | List ServiceAccounts |
| k8s_get_pvcs | List PersistentVolumeClaims with status, capacity, and storage class |
| k8s_get_pvs | List PersistentVolumes with capacity and bound claims |
| k8s_get_storage_classes | List StorageClasses with provisioner and default status |
| k8s_get_network_policies | List NetworkPolicies with pod selectors and rule counts |
| k8s_get_jobs | List Jobs with completion status and timing |
| k8s_get_cronjobs | List CronJobs with schedule, suspend status, and last run |
{
"mcpServers": {
"kubernetes": {
"command": "python3",
"args": [
"/path/to/k8s-multicluster-mcp/app.py"
],
"env": {
"KUBECONFIG_DIR": "/path/to/your/kubeconfigs"
}
}
}
}From the project documentation. Replace placeholders and example paths before connecting.
| Variable | Description | Required |
|---|---|---|
| KUBECONFIG_DIR | Declared in the maintainer’s client configuration. | Check documentation |
Stop letting your assistant hallucinate n8n node parameters — this server hands it the real schemas, templates and validation.
AWS Labs' official server suite — current AWS docs, CDK guidance, cost analysis and service tools.
Cloud browsers for AI agents — automation sessions that run in Browserbase's fleet, not on your machine.
Workers, KV, R2 and D1 by conversation — Cloudflare's official remote servers for building and observability.
Dashboards, Prometheus and Loki queries, incidents and alerts — observability by conversation.
kubectl with a conversational interface — inspect pods, read logs, diagnose clusters and manage workloads.