Skip to main content
Glama
dockndevai

mcp-kubernetes

by dockndevai

mcp-kubernetes

CI License: MIT

A Model Context Protocol server for Kubernetes. It lets an MCP-capable client (Claude Desktop, Claude Code, etc.) inspect and operate Kubernetes clusters across multiple contexts — with behaviour controlled entirely by flags.

The design goal is safe by default: it starts read-only, can be scoped to an allowlist of namespaces and contexts, protects system namespaces from mutation, and gates the dangerous operations (delete, apply, exec) behind explicit opt-ins.

Features

  • Multi-cluster — every tool accepts an optional context; scope which contexts are usable with an allowlist.

  • Access modesread-onlyread-writeadmin, layered so a mode never exposes tools above its level.

  • Security flags — namespace allowlist, protected namespaces, context allowlist, plus independent opt-ins for delete / apply / exec, dry-run, and JSON audit logging (see below).

  • Standard auth — uses your kube-config (or in-cluster service account). No credentials are stored by the server.

Related MCP server: k8s-mcp-go

Security model

Concern

Flag

Default

Effect

What can the server do at all?

K8S_MODE

read-only

read-only exposes only reads; read-write adds mutations; admin adds destructive tools. Tools above the mode are never registered.

Which namespaces are in scope?

K8S_NAMESPACE_ALLOWLIST

(all)

When set, any operation on a namespace outside the list is refused.

Which namespaces are read-only forever?

K8S_PROTECTED_NAMESPACES

kube-system,kube-public,kube-node-lease

Can be read but never mutated or deleted, regardless of mode.

Which clusters are reachable?

K8S_CONTEXT_ALLOWLIST

(all)

When set, only these kube-config contexts may be targeted.

Can it delete?

K8S_ALLOW_DELETE

false

delete_resource needs this and admin mode.

Can it apply manifests?

K8S_ALLOW_APPLY

false

apply_manifest needs this and read-write mode.

Can it exec into pods?

K8S_ALLOW_EXEC

false

exec_in_pod needs this and admin mode; the tool isn't even registered otherwise.

Preview without touching the cluster

K8S_DRY_RUN

false

Write/admin tools validate + log intent, then return without calling the API.

Audit trail

K8S_AUDIT_LOG

true

Emits a JSON line to stderr per guarded operation (ALLOW / DENY / DRY_RUN).

The layers are independent — e.g. admin mode with all three opt-ins false can restart and scale deployments but can neither delete resources nor exec into pods.

Tools

Read (read-only+): list_contexts, list_namespaces, list_pods, get_pod, get_pod_logs, list_deployments, list_services, list_nodes, list_events, get_resource

Write (read-write+): scale_deployment, restart_deployment, set_deployment_image, create_namespace, apply_manifest (needs K8S_ALLOW_APPLY)

Admin (admin): delete_resource (needs K8S_ALLOW_DELETE), exec_in_pod (needs K8S_ALLOW_EXEC)

Use with your MCP client

Works with Claude Code, Claude Desktop, Cursor, OpenAI Codex CLI, Windsurf, VS Code (Copilot), and any other MCP client — see docs/CLIENTS.md for per-client setup.

Install

npm install
npm run build

Run with Claude Desktop / Claude Code

Add to your MCP client configuration:

{
  "mcpServers": {
    "kubernetes": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-kubernetes/dist/index.js"],
      "env": {
        "KUBECONFIG_PATH": "/Users/you/.kube/config",
        "K8S_MODE": "read-only",
        "K8S_CONTEXT_ALLOWLIST": "staging",
        "K8S_NAMESPACE_ALLOWLIST": "app,web"
      }
    }
  }
}

Bump K8S_MODE to read-write for scaling/restarts, and to admin (plus the relevant K8S_ALLOW_* flag) only when you intend to allow deletes or exec.

Develop

npm run dev        # watch mode
npm test           # unit tests for the security policy
npm run typecheck

Publishing

This server ships a server.json for the official MCP registry and an mcpName for npm ownership validation. See PUBLISHING.md for publishing to npm and listing on the MCP registry, Smithery, Glama, Cursor, and PulseMCP.

License

MIT

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables interaction with multiple Kubernetes clusters simultaneously, providing comprehensive tools for cluster management, resource operations, and diagnostics across different environments.
  • A
    license
    Not graded
    quality
    A
    maintenance
    Safe, read-only-by-default Kubernetes access for AI agents via MCP. Provides explicit readonly, readwrite, and dangerous permission modes, plus MCPB bundles for desktop clients.
    2
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    An MCP server for generating Kubernetes manifests (deployments, services, configmaps, secrets, ingresses, namespaces) and performing kubectl operations like apply, delete, get, describe, logs, and exec.
    MIT

View all related MCP servers

Related MCP Connectors

  • Managed Keycloak from any MCP client: clusters, realms, apps, SSO, users, domains, audit events.

  • Remote MCP for A2A caller identity, scope policy, verdict receipts, and audit history.

  • Remote MCP for Copilot CLI switch gate MCP, structured receipts, audit logs, and reviewer-ready evid

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dockndevai/mcp-kubernetes'

If you have feedback or need assistance with the MCP directory API, please join our Discord server