Kubernetes MCP 服务器添加福利群:解决AI开发者的「MCP实战痛点」✨ 功能 | 🚀 入门 | 🎥 演示 | ⚙️ 配置 | 🛠️ 工具 | 🧑💻 开发
https://github.com/user-attachments/assets/be2b67b3-fc1c-4d11-ae46-93deba8ed98e
一个强大且灵活的 Kubernetes 模型上下文协议 (MCP) 服务器实现,支持 Kubernetes 和 OpenShift。
.kube/config 或集群内配置。与其他 Kubernetes MCP 服务器实现不同,这 不是 仅仅围绕 kubectl 或 helm 命令行工具的包装器。
它是一个 基于 Go 的原生实现,直接与 Kubernetes API 服务器交互。
无需 在系统上安装外部依赖或工具。 如果您使用原生二进制文件,则不需要在系统上安装 Node 或 Python。
如果您已安装 npm,这是在 Claude Desktop 上快速启动 kubernetes-mcp-server 的最快方法。
打开您的 claude_desktop_config.json 并将 mcp 服务器添加到 mcpServers 列表中:
{
"mcpServers": {
"kubernetes": {
"command": "npx",
"args": [
"-y",
"kubernetes-mcp-server@latest"
]
}
}
}

在 VS Code Insiders 中安装 Kubernetes MCP 服务器扩展,点击以下链接:
或者,您可以通过运行以下命令手动安装扩展:
# 对于 VS Code
code --add-mcp '{"name":"kubernetes","command":"npx","args":["kubernetes-mcp-server@latest"]}'
# 对于 VS Code Insiders
code-insiders --add-mcp '{"name":"kubernetes","command":"npx","args":["kubernetes-mcp-server@latest"]}'

Goose CLI 是启动人工智能 (AI) 代理的最简单(且最便宜)的方式。
如果您已安装 npm,这是快速启动 kubernetes-mcp-server 的最快方法。
打开您的 goose config.yaml 并将 mcp 服务器添加到 mcpServers 列表中:
extensions:
kubernetes:
command: npx
args:
- -y
- kubernetes-mcp-server@latest

演示展示 Kubernetes MCP 服务器如何被 Claude Desktop 利用,自动诊断并修复 OpenShift 中的部署,无需用户干预。
https://github.com/user-attachments/assets/a576176d-a142-4c19-b9aa-a83dc4b8d941
在这个演示中,我将带您了解如何使用 VS Code 进行 Vibe Coding 一个简单的游戏,并如何利用 Podman MCP 服务器 和 Kubernetes MCP 服务器将其部署到 OpenShift。
在这个演示中,我将向您展示如何通过点击链接在 VS Code 中设置 Kubernetes MCP 服务器。
Kubernetes MCP 服务器可以使用命令行 (CLI) 参数进行配置。
您可以通过使用 npx、uvx 或下载 最新发布的二进制文件 来运行 CLI 可执行文件。
# 使用 npx 运行 Kubernetes MCP 服务器(如果您已安装 npm 和 node)
npx kubernetes-mcp-server@latest --help

# 使用 uvx 运行 Kubernetes MCP 服务器(如果您已安装 uv 和 python)
uvx kubernetes-mcp-server@latest --help

# 使用最新发布的二进制文件运行 Kubernetes MCP 服务器
./kubernetes-mcp-server --help

| 选项 | 描述 |
|---|---|
--sse-port |
以服务器发送事件 (SSE) 模式启动 MCP 服务器,并在指定端口上监听。 |
--log-level |
设置日志级别(值 从 0-9)。类似于 kubectl 日志级别。 |
--kubeconfig |
Kubernetes 配置文件的路径。如果未提供,将尝试解析配置(集群内、默认位置等)。 |
--read-only |
如果设置,MCP 服务器将以只读模式运行,意味着它不允许在 Kubernetes 集群上执行任何写操作(创建、更新、删除)。这对于调试或检查集群而不进行更改非常有用。 |
--disable-destructive |
如果设置,MCP 服务器将禁用所有破坏性操作(删除、更新等)在 Kubernetes 集群上。这对于调试或检查集群而不意外进行更改非常有用。此选项在使用 --read-only 时无效。 |
configuration_view获取当前 Kubernetes 配置内容作为 kubeconfig YAML
参数:
minified (boolean, 可选, 默认: true)
true,仅保留当前上下文和相关配置部分false,返回所有上下文、集群、认证信息和用户events_list列出当前集群中所有命名空间中的所有 Kubernetes 事件
参数:
namespace (string, 可选)
helm_install在当前或提供的命名空间中安装 Helm chart,并提供名称和 chart
参数:
chart (string, 必需)
./my-chart.tgz 或 https://example.com/my-chart.tgzvalues (object, 可选)
{"key": "value"}name (string, 可选)
namespace (string, 可选)
helm_list列出当前或提供的命名空间中的所有 Helm 发布(如果指定,则列出所有命名空间中的发布)
参数:
namespace (string, 可选)
all_namespaces (boolean, 可选)
true,将列出所有命名空间中的 Helm 发布false,将列出指定命名空间中的 Helm 发布helm_uninstall在当前或提供的命名空间中卸载 Helm 发布,并提供名称
参数:
name (string, 必需)
namespace (string, 可选)
namespaces_list列出当前集群中的所有 Kubernetes 命名空间
参数: 无
pods_delete删除当前或提供的命名空间中的 Kubernetes Pod,并提供名称
参数:
name (string, 必需)
namespace (string, 必需)
pods_exec在当前或提供的命名空间中执行命令,并提供名称和命令
参数:
command (string[], 必需)
["ls", "-l", "/tmp"]name (string, 必需)
namespace (string, 必需)
container (string, 可选)
pods_get获取当前或提供的命名空间中的 Kubernetes Pod,并提供名称
参数:
name (string, 必需)
namespace (string, 必需)
pods_list列出当前集群中所有命名空间中的所有 Kubernetes Pod
参数:
labelSelector (string, 可选)
pods_list_in_namespace列出当前集群中指定命名空间中的所有 Kubernetes Pod
参数:
namespace (string, 必需)
labelSelector (string, 可选)
pods_log获取当前或提供的命名空间中的 Kubernetes Pod 日志,并提供名称
参数:
name (string, 必需)
namespace (string, 必需)
container (string, 可选)
pods_run在当前或提供的命名空间中运行 Kubernetes Pod,并提供容器镜像和可选名称
参数:
image (string, 必需)
namespace (string, 必需)
name (string, 可选)
port (number, 可选)
projects_list列出当前集群中的所有 OpenShift 项目
resources_create_or_update通过提供资源的 YAML 或 JSON 表示,在当前集群中创建或更新 Kubernetes 资源
参数:
resource (string, 必需)
常见的 apiVersion 和 kind 包括:
resources_delete删除当前集群中的 Kubernetes 资源
参数:
apiVersion (string, 必需)
v1,apps/v1,networking.k8s.io/v1)kind (string, 必需)
Pod,Service,Deployment,Ingress)name (string, 必需)
namespace (string, 可选)
resources_get获取当前集群中的 Kubernetes 资源
参数:
apiVersion (string, 必需)
v1,apps/v1,networking.k8s.io/v1)kind (string, 必需)
Pod,Service,Deployment,Ingress)name (string, 必需)
namespace (string, 可选)
resources_list列出当前集群中的 Kubernetes 资源和对象
参数:
apiVersion (string, 必需)
v1,apps/v1,networking.k8s.io/v1)kind (string, 必需)
Pod,Service,Deployment,Ingress)namespace (string, 可选)
labelSelector (string, 可选)
编译项目并使用 mcp-inspector 运行 Kubernetes MCP 服务器以检查 MCP 服务器。
# 编译项目
make build
# 使用 mcp-inspector 运行 Kubernetes MCP 服务器
npx @modelcontextprotocol/inspector@latest $(pwd)/kubernetes-mcp-server
