Build a read-only Kubernetes MCP server, connect Claude Code to it, and prove the agent can investigate your cluster but cannot change it — no mutating tool exists, and the same credential is denied on a direct write.
This lab connects an AI agent to a real cluster. Before wiring anything together, confirm each moving part is present so a later failure is unambiguous.
kubectl version --client -o yaml | head -n 4kubectl get nodesnode --versionclaude --versionYou need a reachable cluster (kubectl get nodes returns Ready nodes), Node.js to run the MCP server, and the Claude Code CLI to consume it.
Verifying now means any problem later is about the code you write, not the environment.
kubectl shows a client version, 'kubectl get nodes' lists at least one Ready node, node prints v18 or newer, and claude prints its version.