← Explore all mcp servers

CLUSTER OPERATIONS / containers project

Kubernetes MCP Server

Exposes Kubernetes and OpenShift resource inspection and management using kubeconfig or in-cluster credentials.

“Kubernetes MCP Server”

01 / THE REASONING

Why this made the selection.

  • Supports generic Kubernetes resources, making its role broader than a fixed set of pod commands.
  • Documents toolsets, read-only configuration and a restricted service-account setup.

02 / THE REVIEW RECORD

What we actually inspected.

Source review has boundaries.
A clear record is more useful than a “safe” badge.

Material inspected

  • README.md (installation, capability and permission sections)
  • go.mod
  • cmd/kubernetes-mcp-server/main.go
  • LICENSE
  • pkg/http/http.go
  • docs/configuration.md

Our findings

  • The Go entrypoint and manifest establish the implementation language despite npx/uvx launchers.
  • HTTP authentication has dedicated OAuth/OIDC guidance; local kubeconfig access remains a separate credential boundary.
  • The current HTTP implementation serves Streamable HTTP at /mcp; legacy SSE was not established and is not listed.
  • Runtime restrictions are TOML settings. The shown command now requires an explicit configuration file rather than launching the write-capable default silently.

Not established by this review

  • Server startup, authentication and tool execution were not tested.

The review applies to the material and revision named here. A newer upstream release can change its behavior.

03 / PUT IT TO WORK

Connect a server deliberately.

Upstream setup instructions ↗

DOCUMENTED COMMAND

npx kubernetes-mcp-server@latest --config ./mcp-config.toml

Copying does not execute this command. It may retrieve a newer version than the reviewed source.

  1. Create mcp-config.toml containing read_only = true for exploration, and select a kubeconfig/service account restricted to the intended cluster resources. read_only and toolsets are TOML settings, not launch flags.
  2. Start the documented launcher with --config pointing to that file; use an absolute file path in client configurations when their working directory differs.
  3. For HTTP mode, explicitly set bind_address = "127.0.0.1" for local access or configure the documented OAuth/TLS and network controls before sharing the listener.

Before you start

  • Node.js for the launcher and Kubernetes/OpenShift access through kubeconfig or in-cluster configuration.
  • A prepared mcp-config.toml at the command’s path; its read_only = true setting is recommended for the shown exploration setup.

04 / FOLLOW THE EVIDENCE

The source trail.

Our notes are separate from the original resource.
Check upstream before adopting a new version.

  1. Official documentation ↗Checked

    https://github.com/containers/kubernetes-mcp-server/blob/6fd66fb432d393ad662714e7baad5bdce5369870/README.md

    Supports: summary, whySelected, bestFor, limitations, install, access, compatibility, transports

  2. https://github.com/containers/kubernetes-mcp-server/blob/6fd66fb432d393ad662714e7baad5bdce5369870/LICENSE

    Supports: license

  3. Implementation: go.mod ↗Checked

    https://github.com/containers/kubernetes-mcp-server/blob/6fd66fb432d393ad662714e7baad5bdce5369870/go.mod

    Supports: language, review

  4. https://github.com/containers/kubernetes-mcp-server/blob/6fd66fb432d393ad662714e7baad5bdce5369870/cmd/kubernetes-mcp-server/main.go

    Supports: language, review

  5. https://github.com/containers/kubernetes-mcp-server/blob/6fd66fb432d393ad662714e7baad5bdce5369870/pkg/http/http.go

    Supports: review, transports

  6. https://github.com/containers/kubernetes-mcp-server/blob/6fd66fb432d393ad662714e7baad5bdce5369870/docs/configuration.md

    Supports: review, limitations, transports, install, access