✨ Features | 🚀 Getting Started | 🎥 Demos | ⚙️ Configuration | 🛠️ Tools | 💬 Community | 🧑💻 Development
https://github.com/user-attachments/assets/be2b67b3-fc1c-4d11-ae46-93deba8ed98e
A powerful and flexible Kubernetes Model Context Protocol (MCP) server implementation with support for Kubernetes and OpenShift.
.kube/config or in-cluster configuration./stats endpoint for real-time statistics. See OTEL.md.Unlike other Kubernetes MCP server implementations, this IS NOT just a wrapper around kubectl or helm command-line tools.
It is a Go-based native implementation that interacts directly with the Kubernetes API server.
There is NO NEED for external dependencies or tools to be installed on the system. If you're using the native binaries you don't need to have Node or Python installed on your system.
Claude Code
Follow the dedicated Claude Code getting started guide in our user documentation.
For a secure production setup with dedicated ServiceAccount and read-only access, also review the Kubernetes setup guide.
If you have npm installed, this is the fastest way to get started with kubernetes-mcp-server on Claude Desktop.
Open your claude_desktop_config.json and add the mcp server to the list of mcpServers:
{
"mcpServers": {
"kubernetes": {
"command": "npx",
"args": ["-y", "kubernetes-mcp-server@latest"]
}
}
}
Install the Kubernetes MCP server extension in VS Code Insiders by pressing the following link:
Alternatively, you can install the extension manually by running the following command:
# For VS Code
code --add-mcp '{"name":"kubernetes","command":"npx","args":["kubernetes-mcp-server@latest"]}'
# For VS Code Insiders
code-insiders --add-mcp '{"name":"kubernetes","command":"npx","args":["kubernetes-mcp-server@latest"]}'
Install the Kubernetes MCP server extension in Cursor by pressing the following link:
Alternatively, you can install the extension manually by editing the mcp.json file:
{
"mcpServers": {
"kubernetes-mcp-server": {
"command": "npx",
"args": ["-y", "kubernetes-mcp-server@latest"]
}
}
}
Goose CLI is the easiest (and cheapest) way to get rolling with artificial intelligence (AI) agents.
If you have npm installed, this is the fastest way to get started with kubernetes-mcp-server.
Open your goose config.yaml and add the mcp server to the list of mcpServers:
extensions:
kubernetes:
command: npx
args:
- -y
- kubernetes-mcp-server@latest
Demo showcasing how Kubernetes MCP server is leveraged by Claude Desktop to automatically diagnose and fix a deployment in OpenShift without any user assistance.
https://github.com/user-attachments/assets/a576176d-a142-4c19-b9aa-a83dc4b8d941
In this demo, I walk you through the process of Vibe Coding a simple game using VS Code and how to leverage Podman MCP server and Kubernetes MCP server to deploy it to OpenShift.
In this demo, I'll show you how to set up Kubernetes MCP server in VS code just by clicking a link.
The Kubernetes MCP server can be configured using command line (CLI) arguments.
You can run the CLI executable either by using npx, uvx, or by downloading the latest release binary.
# Run the Kubernetes MCP server using npx (in case you have npm and node installed)
npx kubernetes-mcp-server@latest --help
# Run the Kubernetes MCP server using uvx (in case you have uv and python installed)
uvx kubernetes-mcp-server@latest --help
# Run the Kubernetes MCP server using the latest release binary
./kubernetes-mcp-server --help
| Option | Description |
|---|---|
--port |
Starts the MCP server in Streamable HTTP mode (path /mcp) and Server-Sent Event (SSE) (path /sse) mode and listens on the specified port . |
--log-level |
Sets the logging level (values from 0-9). Similar to kubectl logging levels. |
--config |
(Optional) Path to the main TOML configuration file. See Configuration Reference for details. |
--config-dir |
(Optional) Path to drop-in configuration directory. Files are loaded in lexical (alphabetical) order. Defaults to conf.d relative to the main config file if --config is specified. See Configuration Reference for details. |
--kubeconfig |
Path to the Kubernetes configuration file. If not provided, it will try to resolve the configuration (in-cluster, default location, etc.). |
--list-output |
Output format for resource list operations (one of: yaml, table) (default "table") |
--read-only |
If set, the MCP server will run in read-only mode, meaning it will not allow any write operations (create, update, delete) on the Kubernetes cluster. This is useful for debugging or inspecting the cluster without making changes. |
--disable-destructive |
If set, the MCP server will disable all destructive operations (delete, update, etc.) on the Kubernetes cluster. This is useful for debugging or inspecting the cluster without accidentally making changes. This option has no effect when --read-only is used. |
--stateless |
If set, the MCP server will run in stateless mode, disabling tool and prompt change notifications. This is useful for container deployments, load balancing, and serverless environments where maintaining client state is not desired. |
--toolsets |
Comma-separated list of toolsets to enable. Check the 🛠️ Tools and Functionalities section for more information. |
--disable-multi-cluster |
If set, the MCP server will disable multi-cluster support and will only use the current context from the kubeconfig file. This is useful if you want to restrict the MCP server to a single cluster. |
--cluster-provider |
Cluster provider strategy to use (one of: |
$ claude mcp add kubernetes-mcp-server \
-- python -m otcore.mcp_server <graph>