
Mcp K8s Ro
io.github.your-koPublished by GitHub account your-kov1.2.2Updated Oct 30, 2026
Read-only Kubernetes MCP server: inspect resources, logs, events, and metrics. Secrets are masked.
Overview
Read-only Kubernetes MCP server that lets an assistant list and describe resources, read pod logs and events, and check CPU/memory usage.
- What you can do
- List and describe cluster resources, including any resource type and its full YAML
- Discover available resource types through the discovery API, optionally filtered by API group
- Read pod logs with container selection, tail lines and previous-container support
- List Kubernetes events for a namespace or the whole cluster, newest first
- Show CPU and memory usage per pod and per node, with percentages of allocatable capacity
- When to use it
- Useful for on-call and troubleshooting work where an assistant should inspect a cluster without any risk of changing it: checking pod status, restarts, logs, events and resource pressure. It fits teams that want a single pinned cluster context per server instance.
- Requirements
- Runs locally as a stdio process, either a pre-built binary or a Docker image. Needs a kubeconfig file, read from KUBECONFIG or defaulting to ~/.kube/config, with credentials for the target cluster. The metrics tools require metrics-server in the cluster. The macOS binary is unsigned and needs a Gatekeeper override.
Installation
In SourceWeft
- Open Mcp K8s Ro in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
[Main] [golangci-lint] [Link validation]
mcp-k8s-ro
A read-only MCP server that gives Claude access to Kubernetes clusters. Built in Go, it communicates over stdio using the MCP protocol.
Design
- Read-only — only
get,describe,logs, andtopstyle operations. No create, update, or delete. If a mutating operation is needed, the server prints the equivalentkubectlcommand for you to run manually. Safe to use while on-call at night: Claude can never accidentally mutate your cluster, even under prompt fatigue. - Secret-safe — secret values are masked before being sent to the model, so your secrets cannot leak due to misconfiguration or prompt injection.
- Token-efficient — responses include only relevant fields (name, status, restarts, etc.) rather than raw Kubernetes API objects, keeping context usage low.
- Cluster-aware — every response includes the active context and cluster name, so Claude always knows which cluster it is talking to.
- Context-pinned — the server locks to the active kubeconfig context at startup. Switching contexts in another terminal has no effect on the running server.
- No extra infra — runs as a local binary or Docker container, connects to whatever kubeconfig context is active at startup.
Redacted fields
Tools
Configuration
Usage with Claude
Docker (recommended)
Pinning a specific version (check the latest release ) is recommended for production use:
Binary
Download a pre-built binary from GitHub Releases:
macOS Gatekeeper: The binary is not code-signed, so macOS will block it. The
xattrcommand above removes the quarantine flag. Alternatively, go to System Settings → Privacy & Security and click "Allow Anyway" after the first blocked attempt. [img.png]
Or build from source:
Custom kubeconfig location
If your kubeconfig is not at ~/.kube/config, set the KUBECONFIG environment variable:
Single-cluster design
The server intentionally operates on one kubeconfig context and provides no tool to switch clusters at runtime. The reasons are:
- Prompt injection isolation — a malicious value in one cluster's resources (e.g. a pod annotation) cannot instruct Claude to pivot to a different cluster, including production.
- Explicit audit boundary — every tool response includes the context and cluster name, so there is never ambiguity about which cluster was queried.
To point the server at a different cluster, stop the server, switch context, and restart:
To work with multiple clusters simultaneously, register a separate server instance per cluster in your MCP config:
Claude will address each server by name and each instance only ever sees its own cluster.
MCP registry
This server is published on registry.modelcontextprotocol.io
Source: README.md at commit d083672
Tools
0Version history
2- v1.2.2LatestOct 30, 2026
- v1.2.1Sep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts