MCP Server that enables AI assistants to interact with Kubernetes clusters via kubectl operations.
10K+
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 |
| Attribute | Details |
|---|---|
| Dockerfile | https://github.com/rohitg00/kubectl-mcp-server/blob/14f9c138a7efd80a2bbb83e7ecfcdbe259f6e598/Dockerfile |
| Commit | 14f9c138a7efd80a2bbb83e7ecfcdbe259f6e598 |
| 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_healthCheck the health status of a pod.
| Parameters | Type | Description |
|---|---|---|
pod_name | string | |
namespace | stringoptional |
create_deploymentCreate a new deployment.
| Parameters | Type | Description |
|---|---|---|
image | string | |
name | string | |
replicas | integer | |
namespace | stringoptional |
delete_resourceDelete a Kubernetes resource.
| Parameters | Type | Description |
|---|---|---|
name | string | |
resource_type | string | |
namespace | stringoptional |
get_api_resourcesList Kubernetes API resources.
get_cluster_rolesGet all cluster-wide RBAC roles.
get_configmapsGet all ConfigMaps in the specified namespace.
| Parameters | Type | Description |
|---|---|---|
namespace | stringoptional |
get_current_contextGet current kubeconfig context.
get_deploymentsGet all deployments in the specified namespace.
| Parameters | Type | Description |
|---|---|---|
namespace | stringoptional |
get_eventsGet all events in the specified namespace.
| Parameters | Type | Description |
|---|---|---|
namespace | stringoptional |
get_logsGet logs from a pod.
| Parameters | Type | Description |
|---|---|---|
pod_name | string | |
container | stringoptional | |
namespace | stringoptional | |
tail | stringoptional |
get_namespacesGet all Kubernetes namespaces.
get_nodesGet all nodes in the cluster.
get_pod_eventsGet events for a specific pod.
| Parameters | Type | Description |
|---|---|---|
pod_name | string | |
namespace | stringoptional |
get_podsGet all pods in the specified namespace.
| Parameters | Type | Description |
|---|---|---|
namespace | stringoptional |
get_rbac_rolesGet all RBAC roles in the specified namespace.
| Parameters | Type | Description |
|---|---|---|
namespace | stringoptional |
get_resource_usageGet resource usage statistics via kubectl top.
| Parameters | Type | Description |
|---|---|---|
namespace | stringoptional |
get_secretsGet all Secrets in the specified namespace.
| Parameters | Type | Description |
|---|---|---|
namespace | stringoptional |
get_servicesGet all services in the specified namespace.
| Parameters | Type | Description |
|---|---|---|
namespace | stringoptional |
health_checkCheck cluster health by pinging the API server.
install_helm_chartInstall a Helm chart.
| Parameters | Type | Description |
|---|---|---|
chart | string | |
name | string | |
namespace | string | |
repo | stringoptional | |
values | stringoptional |
kubectl_explainExplain a Kubernetes resource using kubectl explain.
| Parameters | Type | Description |
|---|---|---|
resource | string |
port_forwardForward local port to pod port.
| Parameters | Type | Description |
|---|---|---|
local_port | integer | |
pod_name | string | |
pod_port | integer | |
namespace | stringoptional |
scale_deploymentScale a deployment.
| Parameters | Type | Description |
|---|---|---|
name | string | |
replicas | integer | |
namespace | stringoptional |
switch_contextSwitch current kubeconfig context.
| Parameters | Type | Description |
|---|---|---|
context_name | string |
uninstall_helm_chartUninstall a Helm release.
| Parameters | Type | Description |
|---|---|---|
name | string | |
namespace | string |
upgrade_helm_chartUpgrade a Helm release.
| Parameters | Type | Description |
|---|---|---|
chart | string | |
name | string | |
namespace | string | |
repo | stringoptional | |
values | stringoptional |
{
"mcpServers": {
"kubectl-mcp-server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-v",
"/local-directory:/local-directory",
"mcp/kubectl-mcp-server"
]
}
}
}