configuration_contexts_listLABSCO SUMMARY
A native client for the Kubernetes API, not a wrapper around kubectl.
Because it speaks to the API server directly there is nothing to install alongside it and no command output to parse — results come back structured, and resources_list and resources_get reach any kind in the cluster rather than a curated subset. Everything a debugging session needs is present: pod logs, exec, kubelet-level node stats, and events filtered by field selector.
What it is
A Go MCP server that talks to the Kubernetes API server directly rather than shelling out to kubectl. It ships as a single native binary for Linux, macOS and Windows, and also as an npm package, a Python package and a container image. It reads your kubeconfig, picks up changes to it, and can address several clusters at once.
What you get
- Pods in full:
pods_list,pods_list_in_namespace,pods_get,pods_log,pods_exec,pods_top,pods_run,pods_delete - Any resource at all by apiVersion and kind, CRDs included —
resources_list,resources_get,resources_create_or_update,resources_delete,resources_scale - The cluster's own account of what went wrong:
events_listnarrowed by field selector,nodes_logstraight from the kubelet,nodes_stats_summaryfor CPU, memory, filesystem and network per node, pod and container - Namespaces and OpenShift projects —
namespaces_list,projects_list - Kubeconfig without leaving the conversation:
configuration_view,configuration_contexts_list,targets_list - Optional toolsets behind
--toolsets:helmforhelm_install,helm_listandhelm_uninstall, plustekton,kubevirt,kiali,netobservandkcp - Two switches worth setting deliberately:
--read-onlyblocks every write,--disable-destructivekeeps creates but blocks deletes and updates - Sensitive values — tokens, keys, passwords, cloud credentials — redacted out of the log messages sent to clients
Requirements
Access to a Kubernetes cluster. That is the whole list: no account, no key, and no external CLI, because the binary speaks to the API server itself. Run it with npx -y kubernetes-mcp-server@latest, uvx kubernetes-mcp-server@latest, the release binary, or the ghcr.io/containers/kubernetes-mcp-server image with your kubeconfig mounted and KUBECONFIG pointed at it. --port switches from stdio to Streamable HTTP on /mcp; longer-lived setups go in a TOML config file, reloadable on SIGHUP, where you can also deny whole resource kinds such as Secret. The config and core toolsets are on by default and everything else is opt-in.
Setup effort
One command — npx -y kubernetes-mcp-server@latest
USE CASES
Working out why a deployment is unhealthy
Read the pods in the namespace, pull the failing container's logs, then check the warnings the cluster recorded.
Finding what is eating a node
Compare per-pod consumption against the kubelet's own summary for the node it runs on.
Inspecting a custom resource nobody documented
List by apiVersion and kind, then read one instance in full.
Giving an agent a look but not a lever
Start it read-only, so the same tools answer questions and none of them change the cluster.
Checking what a Helm release actually installed
List the releases in the namespace, then read the resources they created.
53 tools
Listed in project docs. Your client may show a different list.
targets_listconfiguration_viewevents_listnamespaces_listprojects_listnodes_lognodes_stats_summarynodes_toppods_listpods_list_in_namespacepods_getpods_deletepods_toppods_execpods_logpods_runresources_listresources_getresources_create_or_updateresources_deleteresources_scalehelm_installhelm_listhelm_uninstallkcp_workspaces_listkcp_workspace_describekiali_get_mesh_traffic_graphkiali_get_mesh_statuskiali_manage_istio_config_readkiali_manage_istio_configkiali_list_mesh_clusterskiali_get_resource_detailskiali_list_traceskiali_get_trace_detailskiali_get_pod_performancekiali_get_logskiali_get_metricsvm_clonevm_createvm_guest_infovm_lifecyclevm_create_from_templatevm_troubleshootnetobserv_list_flowsnetobserv_get_flow_metricsnetobserv_export_flowstekton_pipeline_starttekton_pipelinerun_lifecycletekton_pipelinerun_logstekton_task_starttekton_taskrun_restarttekton_taskrun_logsBEFORE YOU INSTALL
What to know first
Tools you get
53 tools named in the project's documentation.
Requires
- npx on PATH
- Access to a Kubernetes cluster — a kubeconfig at the default location or passed with --kubeconfig, or in-cluster configuration
INSTALLATION
Connect your client
Server setup
npx -y kubernetes-mcp-server@latestMCP Clients
Claude Desktop
{
"mcpServers": {
"kubernetes": {
"command": "npx",
"args": [
"-y",
"kubernetes-mcp-server@latest"
]
}
}
}VS Code
code --add-mcp '{"name":"kubernetes","command":"npx","args":["kubernetes-mcp-server@latest"]}'VS Code Insiders
code-insiders --add-mcp '{"name":"kubernetes","command":"npx","args":["kubernetes-mcp-server@latest"]}'Cursor
{
"mcpServers": {
"kubernetes-mcp-server": {
"command": "npx",
"args": [
"-y",
"kubernetes-mcp-server@latest"
]
}
}
}