Kubectl MCP 工具
Kubernetes 的模型上下文协议 (MCP) 服务器,使 Claude、Cursor 等 AI 助手能够通过自然语言与 Kubernetes 集群进行交互。
🎥 现场演示 - 与 Claude 一起观看kubectl-mcp-tool
实际操作!
🎥 现场演示 - 使用 Cursor 观看kubectl-mcp-tool
实际操作!
🎥 现场演示 - 观看kubectl-mcp-tool
与 Windsurf 的实际操作!
特征
核心 Kubernetes 操作
- [x] 连接到 Kubernetes 集群
- [x] 列出和管理 Pod、服务、部署和节点
- [x] 创建、删除和描述 Pod 和其他资源
- [x] 获取 pod 日志和 Kubernetes 事件
- [x] 支持 Helm v3 操作(安装、升级、卸载)
- [x] kubectl explain 和 api-resources 支持
- [x] 为下一个命令选择命名空间(内存持久性)
- [x] 端口转发至 Pod
- [x] 扩展部署和状态集
- [x] 在容器中执行命令
- [x] 管理 ConfigMap 和 Secrets
- [x] 回滚部署到以前的版本
- [x] Ingress 和 NetworkPolicy 管理
- [x] 集群之间的上下文切换
自然语言处理
- [x] 处理 kubectl 操作的自然语言查询
- [x] 具有先前操作记忆的上下文感知命令
- [x] 对 Kubernetes 概念的人性化解释
- [x] 根据意图构建智能命令
- [x] 当没有专用工具可用时,回退到 kubectl
- [x] 模拟数据支持离线/测试场景
- [x] 命名空间感知查询处理
监控
- [x] 集群健康监控
- [x] 资源利用率跟踪
- [x] Pod 状态和健康检查
- [x] 事件监控和警报
- [x] 节点容量及分配分析
- [x] 历史业绩追踪
- [x] 通过 kubectl top 统计资源使用情况
- [x] 容器就绪和活跃度跟踪
安全
- [x] RBAC 验证和确认
- [x] 安全上下文审计
- [x] 与 Kubernetes API 的安全连接
- [x] 凭证管理
- [x] 网络政策评估
- [x] 容器安全扫描
- [x] 安全最佳实践执行
- [x] 角色和 ClusterRole 管理
- [x] ServiceAccount创建与绑定
- [x] PodSecurityPolicy分析
- [x] RBAC 权限审计
- [x] 安全上下文验证
诊断
- [x] 集群诊断和故障排除
- [x] 配置验证
- [x] 错误分析及恢复建议
- [x] 连接状态监控
- [x] 日志分析和模式检测
- [x] 资源约束识别
- [x] Pod 健康检查诊断
- [x] 常见错误模式识别
- [x] 资源验证错误配置
- [x] 详细的活性和就绪探测验证
高级功能
- [x] 支持多种传输协议(stdio、SSE)
- [x] 与多个AI助手集成
- [x] 可扩展的工具框架
- [x] 自定义资源定义支持
- [x] 跨命名空间操作
- [x] 对多个资源进行批量操作
- [x] 智能资源关系映射
- [x] 错误解释及恢复建议
- [x] 卷管理和识别
建筑学
模型上下文协议 (MCP) 集成
Kubectl MCP 工具实现了模型上下文协议 (MCP) ,使 AI 助手能够通过标准化接口与 Kubernetes 集群交互。该架构包括:
- MCP 服务器:兼容 MCP 客户端(AI 助手)请求的服务器
- 工具注册表:将 Kubernetes 操作注册为具有模式的 MCP 工具
- 传输层:支持 stdio、SSE 和 HTTP 传输方法
- 核心操作:将工具调用转换为 Kubernetes API 操作
- 响应格式化程序:将 Kubernetes 响应转换为符合 MCP 的响应
请求流程
双模式操作
该工具有两种运行模式:
- CLI 模式:直接命令行界面执行 Kubernetes 操作
- 服务器模式:作为 MCP 服务器运行,处理来自 AI 助手的请求
安装
有关详细安装说明,请参阅安装指南。
您可以直接从 PyPI 安装 kubectl-mcp-tool:
对于特定版本:
该软件包可在 PyPI 上获得: https://pypi.org/project/kubectl-mcp-tool/1.1.1/
先决条件
- Python 3.9+
- 安装并配置 kubectl CLI
- 访问 Kubernetes 集群
- pip(Python 包管理器)
全局安装
本地开发安装
验证安装
安装后,验证该工具是否正常工作:
注意:此工具旨在用作 AI 助手连接的 MCP 服务器,而非直接替代 kubectl。主要可用的命令是kubectl-mcp serve
,用于启动 MCP 服务器。
与人工智能助手一起使用
使用 MCP 服务器
MCP 服务器 ( kubectl_mcp_tool.mcp_server
) 是基于 FastMCP SDK 构建的强大实现,可增强不同 AI 助手之间的兼容性:
注意:如果您在 MCP Server 实现中遇到任何错误,可以通过将配置中的
kubectl_mcp_tool.mcp_server
替换为kubectl_mcp_tool.minimal_wrapper
来回退到使用最小包装器。最小包装器以更简单的实现方式提供基本功能。
- 直接配置
- 关键环境变量
MCP_LOG_FILE
:日志文件路径(建议避免标准输出污染)MCP_DEBUG
:设置为“1”以进行详细日志记录MCP_TEST_MOCK_MODE
:设置为“1”以使用模拟数据而不是真实集群KUBECONFIG
:Kubernetes 配置文件的路径KUBECTL_MCP_LOG_LEVEL
:设置为“DEBUG”、“INFO”、“WARNING”或“ERROR”
- 测试 MCP 服务器您可以使用以下方式测试服务器是否正常工作:这将尝试连接到服务器并执行 ping 命令。或者,您可以直接使用以下命令运行服务器:
克劳德桌面
将以下内容添加到 Claude Desktop 配置的~/.config/claude/mcp.json
(Windows: %APPDATA%\Claude\mcp.json
):
光标人工智能
通过添加新的全局 MCP 服务器,将以下内容添加到 MCP 下的 Cursor AI 设置中:
将此配置保存到~/.cursor/mcp.json
以进行全局设置。
注意:将
/path/to/your/.kube/config
替换为 kubeconfig 文件的实际路径。在大多数系统上,该路径为~/.kube/config
。
风帆冲浪
将以下内容添加到 Windsurf 配置的~/.config/windsurf/mcp.json
(Windows: %APPDATA%\WindSurf\mcp.json
):
自动配置
要自动配置所有支持的 AI 助手,请运行提供的安装脚本:
该脚本将:
- 安装所需的依赖项
- 为 Claude、Cursor 和 WindSurf 创建配置文件
- 设置正确的路径和环境变量
- 测试您的 Kubernetes 连接
先决条件
- kubectl 已安装并位于您的 PATH 中
- 有效的 kubeconfig 文件
- 访问 Kubernetes 集群
- Helm v3(可选,用于 Helm 操作)
示例
列出 Pod
部署应用程序
检查 Pod 日志
端口转发
发展
项目结构
MCP 服务器工具
MCP 服务器实现( kubectl_mcp_tool.mcp_server
)提供了一套全面的工具,可供 AI 助手使用与 Kubernetes 集群进行交互:
核心 Kubernetes 资源管理
- get_pods - 获取指定命名空间中的所有 pod
- get_namespaces - 获取所有 Kubernetes 命名空间
- get_services - 获取指定命名空间中的所有服务
- get_nodes - 获取集群中的所有节点
- get_configmaps - 获取指定命名空间中的所有 ConfigMap
- get_secrets - 获取指定命名空间中的所有 Secret
- get_deployments - 获取指定命名空间中的所有部署
- **create_deployment-**创建新的部署
- delete_resource - 删除 Kubernetes 资源
- get_api_resources - 列出 Kubernetes API 资源
- kubectl_explain - 使用 kubectl explain 解释 Kubernetes 资源
Helm 操作
- install_helm_chart - 安装 Helm 图表
- Upgrade_helm_chart - 升级 Helm 版本
- uninstall_helm_chart - 卸载 Helm 版本
安全运营
- get_rbac_roles - 获取指定命名空间中的所有 RBAC 角色
- get_cluster_roles - 获取所有集群范围的 RBAC 角色
监控和诊断
- get_events - 获取指定命名空间中的所有事件
- get_resource_usage - 通过 kubectl top 获取资源使用情况统计信息
- health_check - 通过 ping API 服务器检查集群健康状况
- get_pod_events - 获取特定 pod 的事件
- check_pod_health - 检查 pod 的健康状态
- get_logs - 从 pod 获取日志
集群管理
- switch_context - 切换当前 kubeconfig 上下文
- get_current_context - 获取当前 kubeconfig 上下文
- port_forward - 将本地端口转发到 pod 端口
- scale_deployment - 扩展部署
所有工具都返回包含成功/错误信息和相关详细信息的结构化数据,使 AI 助手能够轻松处理和理解响应。
贡献
欢迎贡献代码!欢迎提交 Pull 请求。
- 分叉存储库
- 创建你的功能分支(
git checkout -b feature/amazing-feature
) - 提交您的更改(
git commit -m 'Add some amazing feature'
) - 推送到分支(
git push origin feature/amazing-feature
) - 打开拉取请求
执照
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
模型上下文协议服务器,使 AI 助手能够通过自然语言与 Kubernetes 集群交互,支持核心 Kubernetes 操作、监控、安全和诊断。
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server that enables AI assistants to interact with Coolify instances through natural language, allowing management of servers, applications, databases, and deployments.Last updated -852TypeScript
- -securityAlicense-qualityAn MCP server that enables interaction with Kubernetes/Minikube clusters through natural language, allowing AI agents like Codename Goose to manage Kubernetes resources via the Model Context Protocol.Last updated -PythonMIT License
- -securityFlicense-qualityA gateway for Generative AI systems to interact with multiple Kubernetes clusters through Model Context Protocol, enabling comprehensive Kubernetes resource operations and multi-cluster management.Last updated -241TypeScript
Kong Konnect MCP Serverofficial
AsecurityAlicenseAqualityA Model Context Protocol server enabling AI assistants to interact with Kong Konnect's API Gateway, providing tools to query analytics data, inspect configurations, and manage control planes through natural language.Last updated -1022TypeScriptApache 2.0