本项目实现了基于 Golang 的 MCP 服务器与 Kubernetes 的连接,支持列出和切换多个 Kubernetes 集群配置,还可通过指定允许的上下文增强安全性,同时提供了多种安装和使用方式,方便灵活配置。
KUBECONFIG 环境变量,可以灵活指定 Kubernetes 配置文件路径。--allowed-contexts 选项,限制用户可访问的 Kubernetes 上下文范围。npm install -g @strowk/mcp-k8s
然后检查版本是否正确输出:
mcp-k8s --version
在 claude_desktop_config.json 中添加以下配置:
{
"mcpServers": {
"mcp_k8s": {
"command": "mcp-k8s",
"args": []
}
}
}
从 GitHub 发布页面 下载对应平台的最新版本,解压后将可执行文件添加到 PATH 环境变量中。
在 claude_desktop_config.json 中添加以下配置:
{
"mcpServers": {
"mcp_k8s": {
"command": "mcp-k8s-go",
"args": []
}
}
}
如果你已经安装了 Golang,可以执行以下命令进行编译和安装:
go get github.com/strowk/mcp-k8s-go
go install github.com/strowk/mcp-k8s-go
然后在 claude_desktop_config.json 中添加以下配置:
{
"mcpServers": {
"mcp_k8s_go": {
"command": "mcp-k8s-go",
"args": []
}
}
}
从版本 0.3.1-beta.2 开始,镜像已发布到 Docker Hub,并支持多平台(linux/amd64 和 linux/arm64)。 运行示例:
docker run -i -v ~/.kube/config:/home/nonroot/.kube/config --rm mcpk8s/server:latest
在 Windows 系统中,可能需要将路径调整为类似 //c/Users/ 的格式。
对于 Claude 配置:
{
"mcpServers": {
"mcp_k8s_go": {
"command": "docker",
"args": [
"run",
"-i",
"-v",
"~/.kube/config:/home/nonroot/.kube/config",
"--rm",
"mcpk8s/server:latest"
]
}
}
}
| 属性 | 详情 |
|---|---|
KUBECONFIG |
指定 Kubernetes 配置文件路径(可选,默认为 ~/.kube/config) |
| 属性 | 详情 |
|---|---|
--allowed-contexts= |
逗号分隔的允许访问的 Kubernetes 上下文列表。如果不指定,则所有上下文均可访问。 |
--help |
显示帮助信息 |
--version |
显示版本信息 |