MCP Server that enables AI assistants to interact with Kubernetes clusters via kubectl operations.
1.0K
26 Tools
Version 4.43 or later needs to be installed to add the server automatically
Use cases
About
MCP Server that enables AI assistants to interact with Kubernetes clusters via kubectl operations.
Attribute | Details |
---|---|
Docker Image | mcp/kubectl-mcp-server |
Author | rohitg00 |
Repository | https://github.com/rohitg00/kubectl-mcp-server |
Dockerfile | https://github.com/rohitg00/kubectl-mcp-server/blob/main/Dockerfile |
Docker Image built by | Docker Inc. |
Docker Scout Health Score | |
Verify Signature | COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/kubectl-mcp-server --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub |
Licence | MIT License |
Tools provided by this Server | Short Description |
---|---|
check_pod_health | Check the health status of a pod. |
create_deployment | Create a new deployment. |
delete_resource | Delete a Kubernetes resource. |
get_api_resources | List Kubernetes API resources. |
get_cluster_roles | Get all cluster-wide RBAC roles. |
get_configmaps | Get all ConfigMaps in the specified namespace. |
get_current_context | Get current kubeconfig context. |
get_deployments | Get all deployments in the specified namespace. |
get_events | Get all events in the specified namespace. |
get_logs | Get logs from a pod. |
get_namespaces | Get all Kubernetes namespaces. |
get_nodes | Get all nodes in the cluster. |
get_pod_events | Get events for a specific pod. |
get_pods | Get all pods in the specified namespace. |
get_rbac_roles | Get all RBAC roles in the specified namespace. |
get_resource_usage | Get resource usage statistics via kubectl top. |
get_secrets | Get all Secrets in the specified namespace. |
get_services | Get all services in the specified namespace. |
health_check | Check cluster health by pinging the API server. |
install_helm_chart | Install a Helm chart. |
kubectl_explain | Explain a Kubernetes resource using kubectl explain. |
port_forward | Forward local port to pod port. |
scale_deployment | Scale a deployment. |
switch_context | Switch current kubeconfig context. |
uninstall_helm_chart | Uninstall a Helm release. |
upgrade_helm_chart | Upgrade a Helm release. |
check_pod_health
Check the health status of a pod.
Parameters | Type | Description |
---|---|---|
pod_name | string | |
namespace | string optional |
create_deployment
Create a new deployment.
Parameters | Type | Description |
---|---|---|
image | string | |
name | string | |
replicas | integer | |
namespace | string optional |
delete_resource
Delete a Kubernetes resource.
Parameters | Type | Description |
---|---|---|
name | string | |
resource_type | string | |
namespace | string optional |
get_api_resources
List Kubernetes API resources.
get_cluster_roles
Get all cluster-wide RBAC roles.
get_configmaps
Get all ConfigMaps in the specified namespace.
Parameters | Type | Description |
---|---|---|
namespace | string optional |
get_current_context
Get current kubeconfig context.
get_deployments
Get all deployments in the specified namespace.
Parameters | Type | Description |
---|---|---|
namespace | string optional |
get_events
Get all events in the specified namespace.
Parameters | Type | Description |
---|---|---|
namespace | string optional |
get_logs
Get logs from a pod.
Parameters | Type | Description |
---|---|---|
pod_name | string | |
container | string optional | |
namespace | string optional | |
tail | string optional |
get_namespaces
Get all Kubernetes namespaces.
get_nodes
Get all nodes in the cluster.
get_pod_events
Get events for a specific pod.
Parameters | Type | Description |
---|---|---|
pod_name | string | |
namespace | string optional |
get_pods
Get all pods in the specified namespace.
Parameters | Type | Description |
---|---|---|
namespace | string optional |
get_rbac_roles
Get all RBAC roles in the specified namespace.
Parameters | Type | Description |
---|---|---|
namespace | string optional |
get_resource_usage
Get resource usage statistics via kubectl top.
Parameters | Type | Description |
---|---|---|
namespace | string optional |
get_secrets
Get all Secrets in the specified namespace.
Parameters | Type | Description |
---|---|---|
namespace | string optional |
get_services
Get all services in the specified namespace.
Parameters | Type | Description |
---|---|---|
namespace | string optional |
health_check
Check cluster health by pinging the API server.
install_helm_chart
Install a Helm chart.
Parameters | Type | Description |
---|---|---|
chart | string | |
name | string | |
namespace | string | |
repo | string optional | |
values | string optional |
kubectl_explain
Explain a Kubernetes resource using kubectl explain.
Parameters | Type | Description |
---|---|---|
resource | string |
port_forward
Forward local port to pod port.
Parameters | Type | Description |
---|---|---|
local_port | integer | |
pod_name | string | |
pod_port | integer | |
namespace | string optional |
scale_deployment
Scale a deployment.
Parameters | Type | Description |
---|---|---|
name | string | |
replicas | integer | |
namespace | string optional |
switch_context
Switch current kubeconfig context.
Parameters | Type | Description |
---|---|---|
context_name | string |
uninstall_helm_chart
Uninstall a Helm release.
Parameters | Type | Description |
---|---|---|
name | string | |
namespace | string |
upgrade_helm_chart
Upgrade a Helm release.
Parameters | Type | Description |
---|---|---|
chart | string | |
name | string | |
namespace | string | |
repo | string optional | |
values | string optional |
{
"mcpServers": {
"kubectl-mcp-server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-v",
"/local-directory:/local-directory",
"mcp/kubectl-mcp-server"
]
}
}
}
Manual installation
You can install the MCP server using:
Installation for