
MCP Kubernetes
A Model Context Protocol (MCP) server for executing Kubernetes commands from Claude Desktop or any MCP-compatible client.
Security
This MCP server executes kubectl commands directly on your machine, so it should only be used in trusted environments. It does not implement authentication or authorization controls by default.
go install github.com/BhagyaAmarasinghe/mcp-kubernetes@latestInstallation
You can install this tool directly using Go:
go install github.com/BhagyaAmarasinghe/mcp-kubernetes@latestUsage
Starting the server
Run the MCP Kubernetes server:
mcp-kubernetesBy default, the server runs using stdio transport. You can specify a different port for HTTP transport with the -port flag:
mcp-kubernetes -port 8080Using with Claude Desktop
- Configure Claude Desktop to use the MCP Kubernetes server by adding it to your
claude_desktop_config.json:
{
"mcpServers": {
"kubernetes": {
"command": "mcp-kubernetes"
}
}
}- You can now use Claude to execute Kubernetes commands, such as:
- "Show me the pods in the default namespace"
- "List all services across all namespaces"
- "Check the status of my deployment named my-app"
Available Commands
The MCP Kubernetes server supports the following MCP requests:
execute
Executes a kubectl command:
{
"command": "get pods -n default"
}get-contexts
Retrieves a list of available Kubernetes contexts:
{}current-context
Gets the current Kubernetes context:
{}set-context
Sets the current Kubernetes context:
{
"context": "minikube"
}Requirements
- Go 1.23 or higher
- kubectl installed and in your PATH
- A valid kubeconfig file
No common issues documented yet. If you hit a problem, the repository's GitHub Issues page is the best place to look.
Licensed under MITโ you can use, modify, and redistribute it under that license's terms.
License
MIT