Multi Cluster Kubernetes MCP Server

An MCP (Model Context Protocol) server application for Kubernetes operations, providing a standardized API to interact with multiple Kubernetes

Local serverstdioPython

What is the Multi Cluster Kubernetes MCP server?

Connect Multi Cluster Kubernetes to Claude, Cursor or any other MCP client and it stops being a tab you switch to. An MCP (Model Context Protocol) server application for Kubernetes operations, providing a standardized API to interact with multiple Kubernetes clusters simultaneously using multiple kubeconfig files. The multi cluster kubernetes mcp server is what makes that connection.

What the server does

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 more -- all accessible through AI assistants like Claude Desktop.

Installation

@smithery/cli on npm is all you need. Most clients run it directly, so configuration is a few lines and a restart.

Available tools

The toolset is worth reading before you wire it up, because it tells you what the integration is really for:

  • 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

Credentials and setup notes

Configuration is passed through the environment: KUBECONFIG_DIR. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

  • Python 3.11 or higher - One or more kubeconfig files with valid cluster credentials - metrics-server installed in clusters for k8s_top_* and k8s_cluster_info tools

Worth knowing first

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch Multi Cluster Kubernetes.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

Where it fits

Among the cloud and infrastructure options, the useful question is rarely "what can it do" but "what does it cost you to run" — permissions, credentials, and how much of your context its toolset consumes. Multi Cluster Kubernetes's toolset — k8s_get_contexts, k8s_get_namespaces, k8s_create_ns and 11 more — is a fair guide to whether it matches your workflow. It is maintained by razvanmacovei; worth a glance at recent repository activity before you build anything load-bearing on it.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Available tools

ToolWhat it does
k8s_get_contextsList all available contexts across all kubeconfig files
k8s_get_namespacesList all namespaces in a cluster
k8s_create_nsCreate a new namespace with optional labels/annotations
k8s_delete_nsDelete a namespace (protects system namespaces)
k8s_get_nodesList all nodes with status, roles, capacity, and version
k8s_cluster_infoComprehensive cluster health summary (nodes, pods, deployments, warnings)
k8s_get_resourcesList resources of any kind (pods, deployments, services, ingress, etc.)
k8s_get_resourceGet the complete definition of a single resource
k8s_get_pod_logsGet pod logs with duration filtering and container selection
k8s_get_eventsList cluster events in a namespace, sorted by most recent
k8s_describeDetailed resource description similar to kubectl describe
k8s_apisList all available API groups and resources in the cluster
k8s_crdsList all Custom Resource Definitions with versions and scope
k8s_top_nodesDisplay node CPU/memory usage alongside capacity

How to install the Multi Cluster Kubernetes MCP server

{
  "mcpServers": {
    "k8s-multicluster": {
      "command": "npx",
      "args": ["-y", "@smithery/cli"],
      "env": {
        "KUBECONFIG_DIR": "your-value"
      }
    }
  }
}

Add to claude_desktop_config.json, then restart Claude Desktop.

Configuration

  • Python 3.11 or higher - One or more kubeconfig files with valid cluster credentials - metrics-server installed in clusters for k8s_top_* and k8s_cluster_info tools
VariableDescriptionRequired
KUBECONFIG_DIRFilesystem location the server is allowed to use.Optional

Example prompts to try

  • Use Multi Cluster Kubernetes to k8s get contexts.
  • Use Multi Cluster Kubernetes to k8s get namespaces.
  • Use Multi Cluster Kubernetes to k8s create ns.

Frequently asked questions

It connects Multi Cluster Kubernetes to MCP-compatible AI assistants such as Claude and Cursor, exposing 14 tools (k8s_get_contexts, k8s_get_namespaces, k8s_create_ns, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Multi Cluster Kubernetes directly.