what is Kubernetes MCP Server?
Kubernetes MCP Server is a powerful and flexible implementation of the Model Context Protocol (MCP) server designed to work with Kubernetes and OpenShift environments.
how to use Kubernetes MCP Server?
To use the Kubernetes MCP Server, you can install it via npm using commands like npx kubernetes-mcp-server@latest
and configure it in your application settings.
key features of Kubernetes MCP Server?
- Automatic detection of changes in Kubernetes configuration.
- Support for CRUD operations on any Kubernetes resource.
- Pod-specific operations including listing, getting, deleting pods, and showing logs.
- Viewing Kubernetes events across namespaces.
use cases of Kubernetes MCP Server?
- Managing Kubernetes resources efficiently.
- Automating deployment diagnostics and fixes in OpenShift.
- Integrating with AI agents for enhanced Kubernetes management.
FAQ from Kubernetes MCP Server?
- Can Kubernetes MCP Server manage all Kubernetes resources?
Yes! It supports operations on any Kubernetes resource.
- Is Kubernetes MCP Server free to use?
Yes! It is open-source and available for free.
- How can I configure the Kubernetes MCP Server?
You can configure it using command line arguments or by modifying your application configuration files.
Kubernetes MCP Server
✨ Features | 🚀 Getting Started | 🎥 Demos | ⚙️ Configuration | 🧑💻 Development
https://github.com/user-attachments/assets/be2b67b3-fc1c-4d11-ae46-93deba8ed98e
✨ Features
A powerful and flexible Kubernetes Model Context Protocol (MCP) server implementation with support for OpenShift.
- ✅ Configuration:
- Automatically detect changes in the Kubernetes configuration and update the MCP server.
- View and manage the current Kubernetes
.kube/config
or in-cluster configuration.
- ✅ Generic Kubernetes Resources: Perform operations on any Kubernetes resource.
- Any CRUD operation (Create or Update, Get, List, Delete).
- ✅ Pods: Perform Pod-specific operations.
- List pods in all namespaces or in a specific namespace.
- Get a pod by name from the specified namespace.
- Delete a pod by name from the specified namespace.
- Show logs for a pod by name from the specified namespace.
- Run a container image in a pod and optionally expose it.
- ✅ Events: View Kubernetes events in all namespaces or in a specific namespace.
🚀 Getting Started
Claude Desktop
Using npx
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"
]
}
}
}
Goose CLI
Goose CLI is the easiest (and cheapest) way to get rolling with artificial intelligence (AI) agents.
Using npm
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
🎥 Demos
Diagnosing and automatically fixing an OpenShift Deployment
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
⚙️ Configuration
The Kubernetes MCP server can be configured using command line (CLI) arguments.
You can run the CLI executable either by using npx
or by downloading the latest release binary.
# Run the Kubernetes MCP server using npx (in case you have npm installed)
npx kubernetes-mcp-server@latest --help
# Run the Kubernetes MCP server using the latest release binary
./kubernetes-mcp-server --help
Configuration Options
Option | Description |
---|---|
--sse-port | Starts the MCP server in Server-Sent Event (SSE) mode and listens on the specified port. |
🧑💻 Development
Running with mcp-inspector
Compile the project and run the Kubernetes MCP server with mcp-inspector to inspect the MCP server.
# Compile the project
make build
# Run the Kubernetes MCP server with mcp-inspector
npx @modelcontextprotocol/inspector@latest $(pwd)/kubernetes-mcp-server