Kubernetes MCP Server
Manage Kubernetes and OpenShift clusters from an assistant through the cluster's API
Manage Google Kubernetes Engine clusters, workloads, logs and metrics from an MCP client
Official · Google Cloud Platform Go Local · stdio Cloud platformsDevOps and monitoring
35 popularity score ★ 169
Opens the app, which asks before it adds the server.
go install github.com/GoogleCloudPlatform/gke-mcp@latestclaude mcp add gke -- gke-mcp{
"mcpServers": {
"gke": {
"command": "gke-mcp",
"args": []
}
}
}{
"mcpServers": {
"gke": {
"command": "gke-mcp",
"args": []
}
}
}{
"servers": {
"gke": {
"type": "stdio",
"command": "gke-mcp",
"args": []
}
}
}[mcp_servers.gke]
command = "gke-mcp"
args = []gemini mcp add --scope user gke gke-mcpGKE_MCP_PROVIDER |
Optional: Model provider for generate_manifest: vertex-ai (default) or anthropic. |
|---|---|
GKE_MCP_MODEL |
Optional: Model used by generate_manifest; defaults to gemini-2.5-pro on Vertex AI. |
ANTHROPIC_API_KEY |
Optional: Needed for generate_manifest when the provider is anthropic. |
DK_API_KEY |
Optional: Developer Knowledge API key so generate_manifest can pull GKE docs; GEMINI_API_KEY is used if unset. |
DK_BASE_URL |
Optional: Override for the Developer Knowledge API address. |
GKE MCP Server is a Go binary from the GoogleCloudPlatform organisation that gives an MCP client hands-on access to Google Kubernetes Engine. It covers both layers of a GKE setup: the Google Cloud side (clusters, node pools, long-running operations, recommendations, release notes) and the Kubernetes side inside a cluster (getting, describing, applying, patching and deleting resources, reading pod logs, events and rollout status).
It also reaches the observability services around GKE: Cloud Logging queries in LQL with per-log-type schemas, Cloud Monitoring metrics through PromQL, and Cloud Trace. A generate_manifest tool runs its own small agent on Vertex AI Gemini by default (Anthropic can be chosen instead) to draft Kubernetes manifests, optionally grounded in Google's Developer Knowledge API. Besides tools it ships prompts and bundled context for cost questions, upgrade risk reports and checking clusters against GKE known issues.
It runs locally over stdio by default, or as a Streamable HTTP server bound to 127.0.0.1:8080. It can be added as a Gemini CLI extension, and the binary has install subcommands that write the config for Claude Desktop, Claude Code and Cursor. The source registers 38 tools; the README lists 28 of them.
The repository's own disclaimer calls it experimental, provided for education and experimentation, not an officially supported Google product and not for production use; Google Cloud's terms of service do not cover it.
| Runtime | Go |
|---|
A Go toolchain to build it with go install, or Linux or macOS for the install script. The gcloud CLI signed in to a Google Cloud project with GKE (it reads the default project and location from gcloud config). generate_manifest needs Vertex AI access in that project, or ANTHROPIC_API_KEY with GKE_MCP_PROVIDER=anthropic; documentation grounding needs a Developer Knowledge API key.
Its makers label it experimental, best-effort and not for production; it may change without notice. delete_cluster and delete_node_pool only appear when started with --enable-delete-tools. Works only with GKE clusters on Google Cloud, not other Kubernetes distributions. The quick install script is for Linux and macOS only. The HTTP mode has no built-in sign-in, so its docs warn against binding it to a non-loopback address without a firewall.
Suits engineers who already run GKE and use gcloud locally and want an assistant to inspect clusters, read logs and metrics, troubleshoot nodes and make changes, from Gemini CLI or another MCP client. Because it holds your own Google Cloud credentials and can create, patch and delete resources, it fits test and development projects better than production, which its makers also say. Teams on EKS, AKS or self-managed Kubernetes need a different server.
list_clustersget_clustercreate_clusterupdate_clusterdelete_clusterget_kubeconfigget_node_sos_reportlist_node_poolsget_node_poolcreate_node_poolupdate_node_pooldelete_node_poollist_operationsget_operationcancel_operationcluster_toolkit_downloadgke_deploygenerate_manifestquery_logsget_log_schemalist_monitored_resource_descriptorsquery_prometheusquery_traceslist_recommendationsget_k8s_changelogget_gke_release_notesget_k8s_resourcedescribe_k8s_resourcelist_k8s_api_resourceslist_k8s_eventsget_k8s_cluster_infoget_k8s_versionget_k8s_rollout_statusget_k8s_logscheck_k8s_authapply_k8s_manifestpatch_k8s_resourcedelete_k8s_resource