本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

连接到Kubernetes集群并对其进行管理。
什么是MCP服务器?
Kubernetes MCP服务器是一个Docker镜像,旨在提供连接和管理Kubernetes集群的能力。通过集成多种Kubernetes管理工具和命令,该镜像支持资源操作、集群监控、Helm图表管理等核心功能,适用于通过容器化方式安全高效地执行Kubernetes集群管理任务。
| 属性 | 详情 |
|---|---|
| Docker镜像 | mcp/kubernetes |
| 作者 | Flux159 |
| 代码仓库 | [***] |
| Dockerfile | [***] |
| 镜像构建方 | Docker Inc. |
| Docker Scout健康评分 | !Docker Scout Health Score |
| 验证签名 | COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/kubernetes --key [***] |
| 许可证 | MIT License |
| 服务器提供的工具 | 简要描述 |
|---|---|
cleanup | 清理所有受管理的资源 |
exec_in_pod | 在Kubernetes Pod或容器中执行命令并返回输出 |
explain_resource | 获取Kubernetes资源或字段的文档 |
install_helm_chart | 安装Helm图表,支持标准和基于模板的安装方式 |
kubectl_apply | 从字符串或文件应用Kubernetes YAML清单 |
kubectl_context | 管理Kubernetes上下文 - 列出、获取或设置当前上下文 |
kubectl_create | 使用多种方式(从文件或子命令)创建Kubernetes资源 |
kubectl_delete | 通过资源类型、名称、标签或清单文件删除Kubernetes资源 |
kubectl_describe | 通过资源类型、名称和可选命名空间描述Kubernetes资源 |
kubectl_generic | 使用提供的参数和标志执行任何kubectl命令 |
kubectl_get | 通过资源类型、名称和可选命名空间获取或列出Kubernetes资源 |
kubectl_logs | 从Pod、Deployment或Job等Kubernetes资源获取日志 |
kubectl_patch | 使用策略合并补丁、JSON合并补丁或JSON补丁更新资源的字段 |
kubectl_rollout | 管理资源的滚动更新(如Deployment、DaemonSet、StatefulSet) |
kubectl_scale | 扩展Kubernetes Deployment |
list_api_resources | 列出集群中可用的API资源 |
node_management | 通过cordon、drain和uncordon操作管理Kubernetes节点 |
ping | 验证对方是否仍响应且连接处于活动状态 |
port_forward | 将本地端口转发到Kubernetes资源上的端口 |
stop_port_forward | 停止端口转发进程 |
uninstall_helm_chart | 卸载Helm图表发布 |
upgrade_helm_chart | 升级现有Helm图表发布 |
通过Docker直接运行MCP服务器容器:
docker run -i --rm mcp/kubernetes
为使容器能够访问Kubernetes集群,需挂载本地Kubeconfig文件:
docker run -i --rm \ -v $HOME/.kube/config:/root/.kube/config \ mcp/kubernetes
创建docker-compose.yml文件:
version: '3' services: kubernetes-mcp: image: mcp/kubernetes volumes: - $HOME/.kube/config:/root/.kube/config stdin_open: true tty: true
运行容器:
docker-compose up -d
在MCP配置中集成该服务器:
{ "mcpServers": { "kubernetes": { "command": "docker", "args": [ "run", "-i", "--rm", "-v", "$HOME/.kube/config:/root/.kube/config", "mcp/kubernetes" ] } } }
cleanup清理所有受管理的资源
exec_in_pod在Kubernetes Pod或容器中执行命令并返回输出
| 参数 | 类型 | 描述 |
|---|---|---|
command | string | 要在Pod中执行的命令(字符串或参数数组) |
name | string | 要执行命令的Pod名称 |
container | string | 可选,容器名称(当Pod有多个容器时必填) |
context | string | 可选,Kubeconfig上下文(默认null) |
namespace | string | 可选,Kubernetes命名空间 |
shell | string | 可选,执行命令使用的Shell(如'/bin/sh') |
timeout | number | 可选,命令超时时间(毫秒,默认60000) |
explain_resource获取Kubernetes资源或字段的文档
| 参数 | 类型 | 描述 |
|---|---|---|
resource | string | 资源名称或字段路径(如'pods'或'pods.spec.containers') |
apiVersion | string | 可选,API版本(如'apps/v1') |
context | string | 可选,Kubeconfig上下文(默认null) |
output | string | 可选,输出格式(plaintext或plaintext-openapiv2) |
recursive | boolean | 可选,递归打印字段的子字段 |
此工具为只读,不会修改环境。
install_helm_chart安装Helm图表,支持标准和基于模板的安装方式
| 参数 | 类型 | 描述 |
|---|---|---|
chart | string | 图表名称(如'nginx')或图表目录路径 |
name | string | Helm发布名称 |
namespace | string | Kubernetes命名空间 |
context | string | 可选,Kubeconfig上下文(默认null) |
createNamespace | boolean | 可选,命名空间不存在时创建 |
repo | string | 可选,Helm仓库URL(使用本地图表时可选) |
useTemplate | boolean | 可选,使用helm template + kubectl apply替代helm install(绕过认证问题) |
values | object | 可选,覆盖图表默认值的自定义值 |
valuesFile | string | 可选,值文件路径(替代values对象) |
kubectl_apply从字符串或文件应用Kubernetes YAML清单
| 参数 | 类型 | 描述 |
|---|---|---|
context | string | 可选,Kubeconfig上下文(默认null) |
dryRun | boolean | 可选,仅验证资源,不实际执行操作 |
filename | string | 可选,要应用的YAML文件路径(二选一:manifest或filename) |
force | boolean | 可选,强制删除资源并绕过优雅删除 |
manifest | string | 可选,要应用的YAML清单字符串 |
namespace | string | 可选,Kubernetes命名空间 |
kubectl_context管理Kubernetes上下文 - 列出、获取或设置当前上下文
| 参数 | 类型 | 描述 |
|---|---|---|
operation | string | 要执行的操作:列出上下文、获取当前上下文或设置当前上下文 |
detailed | boolean | 可选,包含上下文的详细信息 |
name | string | 可选,要设置为当前的上下文名称(设置操作必填) |
output | string | 可选,输出格式 |
showCurrent | boolean | 可选,列出上下文时高亮当前活动上下文 |
此工具为只读,不会修改环境。
kubectl_create使用多种方式(从文件或子命令)创建Kubernetes资源
| 参数 | 类型 | 描述 |
|---|---|---|
annotations | array | 可选,应用于资源的注解(如["key1=value1", "key2=value2"]) |
command | array | 可选,容器中运行的命令 |
context | string | 可选,Kubeconfig上下文(默认null) |
dryRun | boolean | 可选,仅验证资源,不实际执行操作 |
filename | string | 可选,用于创建资源的YAML文件路径 |
fromFile | array | 可选,创建ConfigMap的文件路径(如["key1=/path/to/file1"]) |
fromLiteral | array | 可选,创建ConfigMap的键值对(如["key1=value1"]) |
image | string | 可选,Deployment中容器使用的镜像 |
labels | array | 可选,应用于资源的标签(如["key1=value1"]) |
manifest | string | 可选,用于创建资源的YAML清单字符串 |
name | string | 可选,要创建的资源名称 |
namespace | string | 可选,Kubernetes命名空间 |
output | string | 可选,输出格式(json|yaml|name等) |
port | number | 可选,容器暴露的端口 |
replicas | number | 可选,Deployment的副本数 |
resourceType | string | 可选,要创建的资源类型(namespace、configmap等) |
schedule | string | 可选,CronJob的调度表达式(如"*/5 * * * *") |
secretType | string | 可选,Secret类型(generic、docker-registry、tls) |
serviceType | string | 可选,Service类型(clusterip、nodeport等) |
suspend | boolean | 可选,是否暂停CronJob |
tcpPort | array | 可选,TCP服务的端口对(如["80:8080"]) |
validate | boolean | 可选,是否验证资源 schema 与服务器 schema |
kubectl_delete通过资源类型、名称、标签或清单文件删除Kubernetes资源
| 参数 | 类型 | 描述 |
|---|---|---|
name | string | 要删除的资源名称 |
namespace | string | Kubernetes命名空间 |
resourceType | string | 要删除的资源类型(如pods、deployments) |
allNamespaces | boolean | 可选,是否跨所有命名空间删除资源 |
context | string | 可选,Kubeconfig上下文(默认null) |
filename | string | 可选,用于删除资源的YAML文件路径 |
force | boolean | 可选,立即从API删除资源并绕过优雅删除 |
gracePeriodSeconds | number | 可选,资源优雅终止的秒数 |
labelSelector | string | 可选,删除匹配标签选择器的资源(如'app=nginx') |
manifest | string | 可选,定义要删除资源的YAML清单字符串 |
此工具可能执行破坏性更新。
kubectl_describe通过资源类型、名称和可选命名空间描述Kubernetes资源
| 参数 | 类型 | 描述 |
|---|---|---|
name | string | 要描述的资源名称 |
resourceType | string | 要描述的资源类型(如pods、deployments) |
allNamespaces | boolean | 可选,是否跨所有命名空间描述资源 |
context | string | 可选,Kubeconfig上下文(默认null) |
namespace | string | 可选,Kubernetes命名空间 |
此工具为只读,不会修改环境。
kubectl_generic执行任何kubectl命令,支持提供参数和标志
| 参数 | 类型 | 描述 |
|---|---|---|
command | string | 要执行的kubectl命令(如patch、rollout) |
args | array | 可选,额外命令参数 |
context | string | 可选,Kubeconfig上下文(默认null) |
flags | object | 可选,命令标志(键值对) |
name | string | 可选,资源名称 |
namespace | string | 可选,Kubernetes命名空间 |
outputFormat | string | 可选,输出格式(如json、yaml、wide) |
resourceType | string | 可选,资源类型(如pod、deployment) |
subCommand | string | 可选,子命令(如rollout的'history') |
此工具可能执行破坏性更新。
kubectl_get通过资源类型、名称和可选命名空间获取或列出Kubernetes资源
| 参数 | 类型 | 描述 |
|---|---|---|
name | string | 可选,资源名称(未提供则列出指定类型所有资源) |
namespace | string | Kubernetes命名空间 |
resourceType | string | 要获取的资源类型(如pods、deployments) |
allNamespaces | boolean | 可选,是否跨所有命名空间列出资源 |
context | string | 可选,Kubeconfig上下文(默认null) |
fieldSelector | string | 可选,按字段选择器筛选资源(如'metadata.name=my-pod') |
labelSelector | string | 可选,按标签选择器筛选资源(如'app=nginx') |
output | string | 可选,输出格式 |
sortBy | string | 可选,事件排序 |

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429