Nearly everything here reads: what is running, what its logs say, what the events recorded, how the config maps out. The only things it changes are namespaces and a deployment's replica count, which makes it a debugging companion rather than a deployment tool.
A FastMCP server built on the official Kubernetes Python client, exposing cluster management and inspection as MCP tools. Most of it reads: listing and describing pods, deployments, services, nodes, jobs, ingresses, volumes and events, and pulling pod logs. The writes are narrow — create and delete a namespace, and scale a deployment. Namespace is optional throughout, so calls work with or without one.
- Pods listed and described, and pod logs read
- Deployments listed and scaled
- Services, ingresses, DaemonSets, StatefulSets and ReplicaSets listed and read
- Namespaces listed, created and deleted
- Nodes listed and described
- ConfigMaps and Secrets listed and read
- Persistent volumes and claims listed, with detail on a claim
- Jobs and CronJobs listed and read
- Cluster events listed and read
Python with the fastmcp and kubernetes packages, kubectl configured, and access to a Kubernetes or OpenShift cluster through kubeconfig or in-cluster config. Started with python kube_mcp_server.py, it serves MCP over HTTP on every interface by default. It can read Secrets, so bind it to a service account scoped to what you want it to see.
