kubernetes-mcp (Stonepusher/kubernetes-mcp) is an MCP server listed on the M8ven Trust Index. It scores 59 out of 100, grade D. It declares 89 tools. No publisher has claimed this listing.
MCP server that gives AI assistants full access to Kubernetes clusters and Helm, exposing 73 tools for managing pods, deployments, services, configs, secrets, logs, exec, port-forwarding, Helm lifecycle, and more.
Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.
How we verified
Verified is a snapshot. Live keeps it current, and builds your track record.
⚡ Connect GitHub → continuous verification on every pushwhy connect →Who stands behind it
Stonepusher
Source: Glama
Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →
Install from
The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.
These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.
k8s_list_jobsList Jobs in a namespace
k8s_get_jobGet details of a specific Job
k8s_list_cronjobsList CronJobs in a namespace
k8s_get_cronjobGet details of a specific CronJob
k8s_suspend_cronjobSuspend a CronJob to prevent it from scheduling new Jobs
k8s_resume_cronjobResume a suspended CronJob to allow it to schedule new Jobs again
k8s_list_contextsList all kubeconfig contexts and identify the current active context
k8s_use_contextSwitch the active kubeconfig context
k8s_list_crdsList all CustomResourceDefinitions in the cluster
k8s_get_crdGet details of a specific CustomResourceDefinition
k8s_execExecute a command in a running pod container
k8s_copy_fileCopy files between a pod and the local filesystem using kubectl cp
helm_listList Helm releases
helm_installInstall a Helm chart
helm_upgradeUpgrade (or install) a Helm release
helm_rollbackRollback a Helm release to a previous revision
helm_uninstallUninstall a Helm release
helm_get_valuesGet values for an installed Helm release
helm_show_chart_valuesShow default values for a Helm chart (before installation)
helm_repo_addAdd a Helm chart repository
helm_repo_updateUpdate Helm chart repositories (helm repo update)
helm_historyGet revision history of a Helm release
k8s_list_hpasList HorizontalPodAutoscalers in a namespace
k8s_get_hpaGet details of a specific HorizontalPodAutoscaler
k8s_list_ingressesList Ingresses in a namespace
k8s_get_ingressGet details of a specific Ingress
k8s_list_namespacesList all Kubernetes namespaces in the cluster
k8s_list_podsList pods in a namespace
k8s_get_podGet details of a specific pod
k8s_list_deploymentsList deployments in a namespace
k8s_get_deploymentGet details of a specific deployment
k8s_scale_deploymentScale a deployment to a specific number of replicas
k8s_list_servicesList services in a namespace
k8s_get_serviceGet details of a specific service
k8s_list_configmapsList ConfigMaps in a namespace
k8s_get_configmapGet details of a specific ConfigMap including its data
k8s_list_secretsList Secrets in a namespace (names and types only, not values)
k8s_get_secretGet a Secret by name (values are base64-encoded as stored in Kubernetes)
k8s_get_eventsGet events in a namespace, optionally filtered by involved object name
k8s_get_pod_logsGet logs from a pod container
k8s_apply_manifestApply a Kubernetes manifest (YAML or JSON) using kubectl apply -f -
k8s_delete_resourceDelete a Kubernetes resource by type and name without needing a manifest
k8s_delete_manifestDelete Kubernetes resources defined in a manifest using kubectl delete -f -
k8s_top_nodesShow CPU and memory usage for all nodes (requires metrics-server)
k8s_top_podsShow CPU and memory usage for pods (requires metrics-server)
k8s_list_network_policiesList NetworkPolicies in a namespace
k8s_get_network_policyGet full details of a specific NetworkPolicy
k8s_list_nodesList all nodes in the cluster with status, roles, and version info
k8s_get_nodeGet full details of a specific node
k8s_cordon_nodeCordon a node to prevent new pods from being scheduled on it
k8s_uncordon_nodeUncordon a node to allow pods to be scheduled on it again
k8s_label_nodeAdd, update, or remove labels on a node. Use "key=value" to set and "key-" to remove.
k8s_taint_nodeAdd or remove taints on a node. Use "key=value:Effect" to add and "key:Effect-" to remove.
k8s_drain_nodeDrain a node by evicting all pods (cordons the node first)
k8s_list_pod_disruption_budgetsList PodDisruptionBudgets in a namespace
k8s_get_pod_disruption_budgetGet full details of a specific PodDisruptionBudget
k8s_port_forward_startStart a port-forward tunnel to a pod
k8s_port_forward_stopStop an active port-forward tunnel
k8s_port_forward_listList all active port-forward sessions
k8s_list_resource_quotasList ResourceQuotas in a namespace
k8s_get_resource_quotaGet full details of a specific ResourceQuota
k8s_list_limit_rangesList LimitRanges in a namespace
k8s_get_limit_rangeGet full details of a specific LimitRange
k8s_list_cluster_rolesList all ClusterRoles in the cluster
k8s_get_cluster_roleGet details of a specific ClusterRole
k8s_list_cluster_role_bindingsList all ClusterRoleBindings in the cluster
k8s_get_cluster_role_bindingGet details of a specific ClusterRoleBinding
k8s_list_rolesList Roles in a namespace
k8s_get_roleGet details of a specific Role
k8s_list_role_bindingsList RoleBindings in a namespace
k8s_get_role_bindingGet details of a specific RoleBinding
k8s_rollout_restartTrigger a rolling restart of a Deployment, DaemonSet, or StatefulSet
k8s_rollout_statusCheck the rollout status of a Deployment, DaemonSet, or StatefulSet
k8s_set_imageUpdate the container image for a Deployment, DaemonSet, or StatefulSet
k8s_rollout_undoRoll back a Deployment, DaemonSet, or StatefulSet to a previous revision
k8s_list_service_accountsList ServiceAccounts in a namespace
k8s_get_service_accountGet full details of a specific ServiceAccount
k8s_list_persistent_volumesList all PersistentVolumes in the cluster (cluster-scoped)
k8s_get_persistent_volumeGet details of a specific PersistentVolume
k8s_list_persistent_volume_claimsList PersistentVolumeClaims in a namespace
k8s_get_persistent_volume_claimGet details of a specific PersistentVolumeClaim
k8s_list_storage_classesList all StorageClasses in the cluster
k8s_get_storage_classGet full details of a specific StorageClass
k8s_list_daemonsetsList DaemonSets in a namespace
k8s_get_daemonsetGet details of a specific DaemonSet
k8s_list_statefulsetsList StatefulSets in a namespace
k8s_get_statefulsetGet details of a specific StatefulSet
k8s_list_replicasetsList ReplicaSets in a namespace (useful for inspecting deployment rollout history)
k8s_get_replicasetGet full details of a specific ReplicaSet
Disclosed vulnerabilities in this server's declared npm dependencies (via OSV). Whether each is reachable depends on the installed versions.
js-yaml: YAML merge-key chains can force quadratic CPU consumption
JS-YAML: Quadratic CPU consumption in !!omap resolution (3.x and 4.x) — CVE-2026-59870 fix not backported
JS-YAML: Quadratic-complexity DoS in merge key handling via repeated aliases
esbuild allows arbitrary file read when running the development server on Windows
Tool annotations
No tools have read-only/destructive annotations
Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.
All four hints declared on every tool
89/89 tools missing one or more hints — k8s_list_jobs (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); k8s_get_job (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); k8s_list_cronjobs (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +86 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.
For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.
Destructive tools are labelled
2 tools perform destructive updates without destructiveHint — helm_install deletes at line 18 (fs.unlink(filePath)); helm_upgrade deletes at line 18 (fs.unlink(filePath))
Add destructiveHint:true to any tool whose handler calls .delete(), .upsert(), .update(), unlink, rm, DELETE, DROP, REPLACE INTO, or any operation that overwrites existing data.
License file
No license file
Add a LICENSE file (MIT, Apache-2.0, etc.).
Production dependencies are patched
0 critical, 2 high severity in production deps — js-yaml@4.1.1 (high), js-yaml@4.1.1 (high)
Run npm audit fix, or upgrade the affected packages to a non-vulnerable version.
Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.
[](https://m8ven.ai/mcp/stonepusher/kubernetes-mcp)?variant=verified from the URL.Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.
https://m8ven.ai/api/mcp/tool-check