kubectl-mcp-server
Control your entire Kubernetes infrastructure through natural language conversations with AI.
Talk to your clusters like you talk to a DevOps expert. Debug crashed pods, optimize costs, deploy applications, audit security, manage Helm charts, and visualize dashboards, all through natural language.
Part of CNCF Landscape, Next to Terraform
______________________________________________________________________
安装
npx快速入门(推荐-零安装)
# Run directly without installation - works instantly!
npx -y kubectl-mcp-server
# Or install globally for faster startup
npm install -g kubectl-mcp-server或者用pip(Python)安装
# Standard installation
pip install kubectl-mcp-server
# With interactive UI dashboards (recommended)
pip install kubectl-mcp-server[ui]______________________________________________________________________
📑 目录
______________________________________________________________________
你能做什么?
只需用自然语言询问您的AI助手:
💬 “为什么我的吊舱要坠毁?”
- 通过日志、事件和资源分析进行即时崩溃诊断
- 确定根本原因并提出可操作的建议
💬 “部署一个包含3个副本的Redis集群”
- 使用最佳实践创建部署
- 配置服务、持久存储和运行状况检查
💬 “显示哪些Pod在浪费资源”
- 人工智能驱动的成本优化分析
- 具有潜在节约的资源建议
💬 “哪些服务无法访问数据库?”
- 使用DNS解析进行网络连接诊断
- 从入口到Pod的服务链跟踪
💬 “审核所有命名空间的安全性”
- RBAC权限分析
- 秘密安全扫描和pod安全策略
💬 “显示集群仪表板”
- 带有实时指标的交互式HTML仪表板
- 事件和资源使用的可视化时间线
253强大的工具 | 8个工作流提示 | 8数据资源 | 与所有主要的人工智能助手协同工作
为什么选择kubectl mcp服务器?
- 🚀 停止上下文切换 -直接从您的AI助手对话中管理Kubernetes
- 🧠 人工智能驱动的诊断 -获得智能故障排除,而不仅仅是原始数据
- 💰 内置成本优化 -识别浪费并获得可行的节约建议
- 🔒 企业就绪 -OAuth 2.1认证、RBAC验证、非破坏性模式、秘密屏蔽
- ⚡ 零学习曲线 -自然语言,而不是记忆kubectl命令
- 🌐 通用兼容性 -可与Claude、Cursor、Windsurf、Copilot和15多种其他AI工具配合使用
- 📊 视觉洞察力 -基于web的工具的交互式仪表板和浏览器自动化
- ☸️ 生产级 -与kMCP集群部署,216项测试通过,主动维护
从调试崩溃的Pod到优化集群成本,kubectl mcp服务器是您的AI驱动的DevOps伴侣。
现场演示
克劳德桌面版
光标AI
帆板运动
安装
npx快速入门(推荐-零安装)
# Run directly without installation - works instantly!
npx -y kubectl-mcp-server
# Or install globally for faster startup
npm install -g kubectl-mcp-server或者用pip(Python)安装
# Standard installation
pip install kubectl-mcp-server
# With interactive UI dashboards (recommended)
pip install kubectl-mcp-server[ui]从GitHub版本安装
# Install specific version directly from GitHub release (replace {VERSION} with desired version)
pip install https://github.com/rohitg00/kubectl-mcp-server/releases/download/v{VERSION}/kubectl_mcp_server-{VERSION}-py3-none-any.whl
# Example: Install v1.19.0
pip install https://github.com/rohitg00/kubectl-mcp-server/releases/download/v1.19.0/kubectl_mcp_server-1.19.0-py3-none-any.whl
# Or install latest from git
pip install git+https://github.com/rohitg00/kubectl-mcp-server.git先决条件
- Python 3.9+ (用于管道安装)
- Node.js 14+ (用于npx安装)
- kubectl 的 已安装并配置
- 访问Kubernetes集群
码头工人
# Pull from Docker Hub
docker pull rohitghumare64/kubectl-mcp-server:latest
# Or pull from GitHub Container Registry
docker pull ghcr.io/rohitg00/kubectl-mcp-server:latest
# Run with stdio transport
docker run -i -v $HOME/.kube:/root/.kube:ro rohitghumare64/kubectl-mcp-server:latest
# Run with HTTP transport
docker run -p 8000:8000 -v $HOME/.kube:/root/.kube:ro rohitghumare64/kubectl-mcp-server:latest --transport sse入门指南
1.测试服务器(可选)
在与您的AI助手集成之前,请验证安装:
# Check if kubectl is configured
kubectl cluster-info
# Test the MCP server directly
kubectl-mcp-server info
# List all available tools
kubectl-mcp-server tools
# Try calling a tool
kubectl-mcp-server call get_pods '{"namespace": "kube-system"}'2.连接到您的AI助手
选择您最喜欢的AI助手并添加配置:
使用AI助手快速设置
克劳德桌面版
添加 ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"kubernetes": {
"command": "npx",
"args": ["-y", "kubectl-mcp-server"]
}
}
}光标AI
添加 ~/.cursor/mcp.json:
{
"mcpServers": {
"kubernetes": {
"command": "npx",
"args": ["-y", "kubectl-mcp-server"]
}
}
}帆板运动
添加 ~/.config/windsurf/mcp.json:
{
"mcpServers": {
"kubernetes": {
"command": "npx",
"args": ["-y", "kubectl-mcp-server"]
}
}
}使用Python代替npx
{
"mcpServers": {
"kubernetes": {
"command": "python",
"args": ["-m", "kubectl_mcp_tool.mcp_server"],
"env": {
"KUBECONFIG": "/path/to/.kube/config"
}
}
}
}3.重新启动您的AI助手
添加配置后,重新启动AI助手 (GitHub复制品、克劳德代码、克劳德桌面、光标等) 加载MCP服务器。
4.尝试这些命令
与您的AI助手开始对话,并尝试以下操作:
故障排除:
"Show me all pods in the kube-system namespace"
"Why is the nginx-deployment pod crashing?"
"Diagnose network connectivity issues in the default namespace"部署:
"Create a deployment for nginx with 3 replicas"
"Scale my frontend deployment to 5 replicas"
"Roll back the api-server deployment to the previous version"成本与优化:
"Which pods are using the most resources?"
"Show me idle resources that are wasting money"
"Analyze cost optimization opportunities in the production namespace"安全:
"Audit RBAC permissions in all namespaces"
"Check for insecure secrets and configurations"
"Show me pods running with privileged access"赫尔姆:
"List all Helm releases in the cluster"
"Install Redis from the Bitnami chart repository"
"Show me the values for my nginx-ingress Helm release"多集群:
"List all available Kubernetes contexts"
"Switch to the production cluster context"
"Show me cluster information and version"MCP客户端兼容性
与无缝协作 所有兼容MCP的AI助手:
| 客户端 | 状态 | 客户端 | 状态 |
|---|---|---|---|
| 克劳德桌面 | ✅ 本地 | 克劳德代码 | ✅ 原住民 |
| 光标 | ✅ 原生 | 风帆 | ✅ 原住民 |
| GitHub副本 | ✅ 原生 | OpenAI Codex | ✅ 原住民 |
| Gemini CLI | ✅ 原住民 | 鹅 | ✅ 原住民 |
| Roo代码 | ✅ 本地 | 基洛代码 | ✅ 原住民 |
| 放大器 | ✅ 原住民 | Trae | ✅ 原住民 |
| OpenCode | ✅ 原生 | Kiro命令行界面 | ✅ 原住民 |
| 反重力 | ✅ 原生 | Clawdbot | ✅ 原住民 |
| Droid(工厂) | ✅ 本机 | 任何MCP客户端 | ✅ 兼容 |
所有支持的AI助手
克劳德代码
添加 ~/.config/claude-code/mcp.json:
{
"mcpServers": {
"kubernetes": {
"command": "npx",
"args": ["-y", "kubectl-mcp-server"]
}
}
}GitHub副本(VS代码)
添加到VS代码 settings.json:
{
"mcp": {
"servers": {
"kubernetes": {
"command": "npx",
"args": ["-y", "kubectl-mcp-server"]
}
}
}
}鹅
添加 ~/.config/goose/config.yaml:
extensions:
kubernetes:
command: npx
args:
- -y
- kubectl-mcp-serverGemini CLI
添加 ~/.gemini/settings.json:
{
"mcpServers": {
"kubernetes": {
"command": "npx",
"args": ["-y", "kubectl-mcp-server"]
}
}
}Roo代码/Kilo代码
添加 ~/.config/roo-code/mcp.json 或 ~/.config/kilo-code/mcp.json:
{
"mcpServers": {
"kubernetes": {
"command": "npx",
"args": ["-y", "kubectl-mcp-server"]
}
}
}完整功能集
253个用于完整Kubernetes管理的MCP工具
| 类别 | 工具 |
|---|---|
| 容器组 | get_pods, get_logs, get_pod_events, check_pod_health, exec_in_pod, cleanup_pods, get_pod_conditions, get_previous_logs |
| 部署 | get_deployments, create_deployment, scale_deployment, kubectl_rollout, restart_deployment |
| 工作量 | get_statefulsets, get_daemonsets, get_jobs, get_replicasets |
| 服务与网络 | get_services, get_ingress, get_endpoints, diagnose_network_connectivity, check_dns_resolution, trace_service_chain |
| 存储 | get_persistent_volumes, get_pvcs, get_storage_classes |
| 配置 | get_configmaps, get_secrets, get_resource_quotas, get_limit_ranges |
| 簇 | get_nodes, get_namespaces, get_cluster_info, get_cluster_version, health_check, get_node_metrics, get_pod_metrics |
| RBAC与安全 | get_rbac_roles, get_cluster_roles, get_service_accounts, audit_rbac_permissions, check_secrets_security, get_pod_security_info, get_admission_webhooks |
| CRD | get_crds, get_priority_classes |
| Helm发布 | helm_list, helm_status, helm_history, helm_get_values, helm_get_manifest, helm_get_notes, helm_get_hooks, helm_get_all |
| Helm图表 | helm_show_chart, helm_show_values, helm_show_readme, helm_show_crds, helm_show_all, helm_search_repo, helm_search_hub |
| Helm Repos | helm_repo_list, helm_repo_add, helm_repo_remove, helm_repo_update |
| Helm操作 | install_helm_chart, upgrade_helm_chart, uninstall_helm_chart, helm_rollback, helm_test, helm_template, helm_template_apply |
| Helm开发 | helm_create, helm_lint, helm_package, helm_pull, helm_dependency_list, helm_dependency_update, helm_dependency_build, helm_version, helm_env |
| 上下文 | get_current_context, switch_context, list_contexts, list_kubeconfig_contexts |
| 诊断 | diagnose_pod_crash, detect_pending_pods, get_evicted_pods, compare_namespaces |
| 运营 | kubectl_apply, kubectl_create, kubectl_describe, kubectl_patch, delete_resource, kubectl_cp, backup_resource, label_resource, annotate_resource, taint_node, wait_for_condition |
| 自动扩缩 | get_hpa, get_pdb |
| 成本优化 | get_resource_recommendations, get_idle_resources, get_resource_quotas_usage, get_cost_analysis, get_overprovisioned_resources, get_resource_trends, get_namespace_cost_allocation, optimize_resource_requests |
| 高级 | kubectl_generic, kubectl_explain, get_api_resources, port_forward, get_resource_usage, node_management |
| UI仪表板 | show_pod_logs_ui, show_pods_dashboard_ui, show_resource_yaml_ui, show_cluster_overview_ui, show_events_timeline_ui, render_k8s_dashboard_screenshot |
| GitOps(Flux/Argo) | gitops_apps_list, gitops_app_get, gitops_app_sync, gitops_app_status, gitops_sources_list, gitops_source_get, gitops_detect_engine |
| 证书管理器 | certs_list, certs_get, certs_issuers_list, certs_issuer_get, certs_renew, certs_status_explain, certs_challenges_list, certs_requests_list, certs_detect |
| 政策(Kyverno/看门人) | policy_list, policy_get, policy_violations_list, policy_explain_denial, policy_audit, policy_detect |
| 备份(Velero) | backup_list, backup_get, backup_create, backup_delete, restore_list, restore_create, restore_get, backup_locations_list, backup_schedules_list, backup_schedule_create, backup_detect |
| KEDA自动缩放 | keda_scaledobjects_list, keda_scaledobject_get, keda_scaledjobs_list, keda_triggerauths_list, keda_triggerauth_get, keda_hpa_list, keda_detect |
| 西里姆/哈勃 | cilium_policies_list, cilium_policy_get, cilium_endpoints_list, cilium_identities_list, cilium_nodes_list, cilium_status, hubble_flows_query, cilium_detect |
| Argo推出/标记器 | rollouts_list, rollout_get, rollout_status, rollout_promote, rollout_abort, rollout_retry, rollout_restart, analysis_runs_list, flagger_canaries_list, flagger_canary_get, rollouts_detect |
| 群集 API | capi_clusters_list, capi_cluster_get, capi_machines_list, capi_machine_get, capi_machinedeployments_list, capi_machinedeployment_scale, capi_machinesets_list, capi_machinehealthchecks_list, capi_clusterclasses_list, capi_cluster_kubeconfig, capi_detect |
| KubeVirt虚拟机 | kubevirt_vms_list, kubevirt_vm_get, kubevirt_vmis_list, kubevirt_vm_start, kubevirt_vm_stop, kubevirt_vm_restart, kubevirt_vm_pause, kubevirt_vm_unpause, kubevirt_vm_migrate, kubevirt_datasources_list, kubevirt_instancetypes_list, kubevirt_datavolumes_list, kubevirt_detect |
| Istio/Kiali | istio_virtualservices_list, istio_virtualservice_get, istio_destinationrules_list, istio_gateways_list, istio_peerauthentications_list, istio_authorizationpolicies_list, istio_proxy_status, istio_analyze, istio_sidecar_status, istio_detect |
| vCluster(风) | vind_detect_tool, vind_list_clusters_tool, vind_status_tool, vind_get_kubeconfig_tool, vind_logs_tool, vind_create_cluster_tool, vind_delete_cluster_tool, vind_pause_tool, vind_resume_tool, vind_connect_tool, vind_disconnect_tool, vind_upgrade_tool, vind_describe_tool, vind_platform_start_tool |
| kind(Docker中的K8s) | kind_detect_tool, kind_version_tool, kind_list_clusters_tool, kind_get_nodes_tool, kind_get_kubeconfig_tool, kind_export_logs_tool, kind_cluster_info_tool, kind_node_labels_tool, kind_create_cluster_tool, kind_delete_cluster_tool, kind_delete_all_clusters_tool, kind_load_image_tool, kind_load_image_archive_tool, kind_build_node_image_tool, kind_set_kubeconfig_tool |
MCP资源
将Kubernetes数据作为可浏览资源访问:
| 资源URI | 描述 |
|---|---|
kubeconfig://contexts | 列出所有可用的kubectl上下文 |
kubeconfig://current-context | 获取当前活动上下文 |
namespace://current | 获取当前命名空间 |
namespace://list | 列出所有命名空间 |
cluster://info | 获取集群信息 |
cluster://nodes | 获取详细的节点信息 |
cluster://version | 获取Kubernetes版本 |
cluster://api-resources | 列出可用的API资源 |
manifest://deployments/{ns}/{name} | 获取部署YAML |
manifest://services/{ns}/{name} | 获取服务YAML |
manifest://pods/{ns}/{name} | 获取pod YAML |
manifest://configmaps/{ns}/{name} | 获取ConfigMap YAML |
manifest://secrets/{ns}/{name} | 获取秘密YAML(数据掩码) |
manifest://ingresses/{ns}/{name} | 获取ingress YAML |
MCP提示
常见Kubernetes操作的预构建工作流提示:
| 提示 | 描述 |
|---|---|
troubleshoot_workload | Pod/部署的全面故障排除指南 |
deploy_application | 分步部署工作流程 |
security_audit | 安全扫描和RBAC分析工作流程 |
cost_optimization | 资源优化和成本分析工作流程 |
disaster_recovery | 备份和恢复计划工作流程 |
debug_networking | 服务和连接的网络调试 |
scale_application | HPA/VPA最佳实践扩展指南 |
upgrade_cluster | Kubernetes集群升级规划 |
关键能力
- 🤖 253强大的工具 -从Pod到安全的完整Kubernetes管理
- 🎯 8个AI工作流提示 -为常见操作预先构建的工作流程
- 📊 8 MCP资源 -可浏览的Kubernetes数据暴露
- 🎨 6个交互式仪表板 -用于可视化集群管理的HTML UI工具
- 🌐 26浏览器工具 -支持云提供商的Web自动化
- 🔄 107生态系统工具 -GitOps、证书管理器、策略、备份、KEDA、Cilium、推出、CAPI、KubeVirt、Istio、vCluster
- ⚡ 多运输 -stdio、SSE、HTTP、可流式传输HTTP
- 🔐 安全第一 -无损模式、秘密屏蔽、RBAC验证
- 🏥 高级诊断 -人工智能故障排除和成本优化
- ☸️ 多集群 -通过每个工具中的上下文参数定位任何集群
- 🎡 全头盔v3 -完整的图表生命周期管理
- 🔧 强大的CLI -Shell友好的工具发现和直接调用
- 🐳 云原生 -使用kMCP或kagent在集群中部署
使用CLI
内置的CLI允许您在没有AI助手的情况下探索和测试工具:
# List all tools with descriptions
kubectl-mcp-server tools -d
# Search for pod-related tools
kubectl-mcp-server grep "*pod*"
# Show specific tool schema
kubectl-mcp-server tools get_pods
# Call a tool directly
kubectl-mcp-server call get_pods '{"namespace": "kube-system"}'
# Pipe JSON from stdin
echo '{"namespace": "default"}' | kubectl-mcp-server call get_pods
# Check dependencies
kubectl-mcp-server doctor
# Show/switch Kubernetes context
kubectl-mcp-server context
kubectl-mcp-server context minikube
# List resources and prompts
kubectl-mcp-server resources
kubectl-mcp-server prompts
# Show server info
kubectl-mcp-server infoCLI功能
- 结构化错误:带有建议的可操作错误消息
- 彩色输出:人类可读,JSON模式用于脚本编写(
--json) - NO_COLOR支持:尊重
NO_COLOR环境变量 - Stdin支持:将JSON参数传输到命令
高级配置
运输方式
服务器支持多种传输协议:
# stdio (default) - Best for Claude Desktop, Cursor, Windsurf
kubectl-mcp-server
# or: python -m kubectl_mcp_tool.mcp_server
# SSE - Server-Sent Events for web clients
kubectl-mcp-server --transport sse --port 8000
# HTTP - Standard HTTP for REST clients
kubectl-mcp-server --transport http --port 8000
# streamable-http - For agentgateway integration
kubectl-mcp-server --transport streamable-http --port 8000运输选项:
--transport:从中选择stdio,sse,http,streamable-http(默认值:stdio)--host:绑定地址(默认值:0.0.0.0)--port:网络传输端口(默认值:8000)--disable-destructive(或--non-destructive):阻止破坏性操作(允许创建/更新、阻止删除)--read-only:阻止所有写入操作
环境变量
核心设置:
| 变量 | 描述 | 默认值 |
|---|---|---|
KUBECONFIG | kubeconfig文件的路径 | ~/.kube/config |
MCP_DEBUG | 启用详细日志记录 | false |
MCP_LOG_FILE | 日志文件路径 | 无(stdout) |
身份验证(企业):
| 变量 | 描述 | 默认值 |
|---|---|---|
MCP_AUTH_ENABLED | 启用OAuth 2.1身份验证 | false |
MCP_AUTH_ISSUER | OAuth 2.0授权服务器URL | - |
MCP_AUTH_JWKS_URI | JWKS端点URL | 自动导出 |
MCP_AUTH_AUDIENCE | 预期代币受众 | kubectl-mcp-server |
MCP_AUTH_REQUIRED_SCOPES | 所需的OAuth作用域 | mcp:tools |
浏览器自动化(可选):
| 变量 | 描述 | 默认值 |
|---|---|---|
MCP_BROWSER_ENABLED | 启用浏览器自动化工具 | false |
MCP_BROWSER_PROVIDER | 云提供商(浏览器外壳/浏览器使用) | 无 |
MCP_BROWSER_PROFILE | 持久配置文件路径 | 无 |
MCP_BROWSER_CDP_URL | 远程CDP WebSocket URL | 无 |
MCP_BROWSER_PROXY | 代理服务器URL | 无 |
可选:交互式仪表板(6个UI工具)
获得漂亮的HTML仪表板,用于可视化集群管理。
安装:
# Install with UI support
pip install kubectl-mcp-server[ui]6仪表板工具:
- 📊
show_pods_dashboard_ui-实时吊舱状态表 - 📝
show_pod_logs_ui-带搜索功能的交互式日志查看器 - 🎯
show_cluster_overview_ui-完整的集群仪表板 - ⚡
show_events_timeline_ui-带有过滤功能的事件时间线 - 📄
show_resource_yaml_ui-带语法高亮显示的YAML查看器 - 📸
render_k8s_dashboard_screenshot-将仪表板导出为PNG
特征:
- 🎨 为终端优化的黑暗主题(Catppuccin)
- 🔄 对于不兼容的客户端,可以优雅地回退到JSON
- 🖼️ 屏幕截图渲染,实现通用兼容性
- 🚀 零外部依赖
使用:Goose、LibreChat、Nanobot(完整的HTML用户界面)|克劳德桌面、光标、其他(JSON+截图)
可选:浏览器自动化(26个工具)
通过以下方式自动化基于web的Kubernetes操作 代理浏览器 整合。
快速设置:
# Install agent-browser
npm install -g agent-browser
agent-browser install
# Enable browser tools
export MCP_BROWSER_ENABLED=true
kubectl-mcp-server您可以做什么:
- 🌐 通过Ingress URL测试部署的应用程序
- 📸 屏幕截图Grafana、ArgoCD或任何K8s仪表板
- ☁️ 自动化云控制台操作(EKS、GKE、AKS)
- 🏥 健康检查web应用程序
- 📄 将监控仪表板导出为PDF
- 🔐 使用持久会话测试身份验证流
26可用工具: browser_open, browser_screenshot, browser_click, browser_fill, browser_test_ingress, browser_screenshot_grafana, browser_health_check,以及 19更多
高级功能:
- 云提供商:浏览器基础、浏览器使用
- 持久浏览器配置文件
- 远程CDP连接
- 会话管理
可选:kubectl mcp应用程序(8个交互式UI仪表板)
一个独立的npm包,使用MCP-ext-apps SDK为Kubernetes管理提供美观、交互式的UI仪表板。
安装:
# Via npm
npm install -g kubectl-mcp-app
# Or via npx (no install)
npx kubectl-mcp-appClaude桌面配置:
{
"mcpServers": {
"kubectl-app": {
"command": "npx",
"args": ["kubectl-mcp-app"]
}
}
}8交互式UI工具:
| 工具 | 说明 |
|---|---|
k8s-pods | 带有过滤、排序和状态指示器的交互式pod查看器 |
k8s-logs | 具有语法高亮显示和搜索功能的实时日志查看器 |
k8s-deploy | 带有部署状态、扩展和回滚的部署仪表板 |
k8s-helm | 带有升级/回滚操作的Helm发布管理器 |
k8s-cluster | 集群概述,包括节点健康和资源指标 |
k8s-cost | 带有废物检测和建议的成本分析仪 |
k8s-events | 具有类型过滤和分组功能的事件时间线 |
k8s-network | 显示服务/Pods/Ingress的网络拓扑图 |
特征:
- 🎨 暗/亮主题支持
- 📊 实时数据可视化
- 🖱️ 交互操作(缩放、重新启动、删除)
- 🔗 与kubectl mcp服务器无缝集成
更多信息:参见 kubectl mcp应用程序/README.md 获取完整文档。
企业版:OAuth 2.1身份验证
使用OAuth 2.1身份验证(RFC 9728)保护您的MCP服务器。
export MCP_AUTH_ENABLED=true
export MCP_AUTH_ISSUER=https://your-idp.example.com
export MCP_AUTH_AUDIENCE=kubectl-mcp-server
kubectl-mcp-server --transport http --port 8000支持的身份提供者:Okta、Auth0、Keycloak、微软Entra ID、谷歌OAuth和任何符合OIDC的提供商。
用例:多租户环境、合规要求、审计日志记录。
整合与生态系统
Docker MCP工具包
适用于 :
docker mcp server add kubectl-mcp-server mcp/kubectl-mcp-server:latest
docker mcp server configure kubectl-mcp-server --volume "$HOME/.kube:/root/.kube:ro"
docker mcp server enable kubectl-mcp-server
docker mcp client connect claude代理注册表
从集中式安装 代理注册表:
# Install arctl CLI
curl -fsSL https://raw.githubusercontent.com/agentregistry-dev/agentregistry/main/scripts/install.sh | bash
# Install kubectl-mcp-server
arctl mcp install io.github.rohitg00/kubectl-mcp-server可通过:PyPI(uvx),npm(npx(OCI)docker.io/rohitghumare64/kubectl-mcp-server)
代理网关
通过路由到多个MCP服务器 代理网关:
# Start with streamable-http
kubectl-mcp-server --transport streamable-http --port 8000
# Configure gateway
cat > gateway.yaml <<EOF
binds:
- port: 3000
listeners:
- routes:
- backends:
- mcp:
targets:
- name: kubectl-mcp-server
mcp:
host: http://localhost:8000/mcp
EOF
# Start gateway
agentgateway --config gateway.yaml将客户端连接到 http://localhost:3000/mcp 统一访问所有253个工具。
集群内部署
选项1:kMCP(推荐)
使用部署 kMCP -MCP服务器的控制平面:
# Install kMCP
curl -fsSL https://raw.githubusercontent.com/kagent-dev/kmcp/refs/heads/main/scripts/get-kmcp.sh | bash
kmcp install
# Deploy kubectl-mcp-server (easiest)
kmcp deploy package --deployment-name kubectl-mcp-server \
--manager npx --args kubectl-mcp-server
# Or with Docker image
kmcp deploy --file deploy/kmcp/kmcp.yaml --image rohitghumare64/kubectl-mcp-server:latest看 kMCP快速启动 了解详情。
选项2:标准Kubernetes
使用kubectl/kustomize进行部署:
# Using kustomize (recommended)
kubectl apply -k deploy/kubernetes/
# Or individual manifests
kubectl apply -f deploy/kubernetes/namespace.yaml
kubectl apply -f deploy/kubernetes/rbac.yaml
kubectl apply -f deploy/kubernetes/deployment.yaml
kubectl apply -f deploy/kubernetes/service.yaml
# Access via port-forward
kubectl port-forward -n kubectl-mcp svc/kubectl-mcp-server 8000:8000看 部署/ 所有清单和配置选项的目录。
选项3:kagent(人工智能代理框架)
与集成 凯根特 -CNCF Kubernetes原生AI代理框架:
# Install kagent
brew install kagent
kagent install --profile demo
# Register as ToolServer
kubectl apply -f deploy/kagent/toolserver-stdio.yaml
# Open dashboard
kagent dashboard您的AI代理现在可以访问所有253个Kubernetes工具。看 kagent快速入门.
建筑
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ AI Assistant │────▶│ MCP Server │────▶│ Kubernetes API │
│ (Claude/Cursor) │◀────│ (kubectl-mcp) │◀────│ (kubectl) │
└─────────────────┘ └──────────────────┘ └─────────────────┘MCP服务器实现 模型上下文协议,将自然语言请求转换为kubectl操作。
模块化结构
kubectl_mcp_tool/
├── mcp_server.py # Main server (FastMCP, transports)
├── tools/ # 253 MCP tools organized by category
│ ├── pods.py # Pod management & diagnostics
│ ├── deployments.py # Deployments, StatefulSets, DaemonSets
│ ├── core.py # Namespaces, ConfigMaps, Secrets
│ ├── cluster.py # Context/cluster management
│ ├── networking.py # Services, Ingress, NetworkPolicies
│ ├── storage.py # PVCs, StorageClasses, PVs
│ ├── security.py # RBAC, ServiceAccounts, PodSecurity
│ ├── helm.py # Complete Helm v3 operations
│ ├── operations.py # kubectl apply/patch/describe/etc
│ ├── diagnostics.py # Metrics, namespace comparison
│ ├── cost.py # Resource optimization & cost analysis
│ ├── ui.py # MCP-UI interactive dashboards
│ ├── gitops.py # GitOps (Flux/ArgoCD)
│ ├── certs.py # Cert-Manager
│ ├── policy.py # Policy (Kyverno/Gatekeeper)
│ ├── backup.py # Backup (Velero)
│ ├── keda.py # KEDA autoscaling
│ ├── cilium.py # Cilium/Hubble network observability
│ ├── rollouts.py # Argo Rollouts/Flagger
│ ├── capi.py # Cluster API
│ ├── kubevirt.py # KubeVirt VMs
│ ├── kiali.py # Istio/Kiali service mesh
│ └── vind.py # vCluster (virtual clusters)
├── resources/ # 8 MCP Resources for data exposure
├── prompts/ # 8 MCP Prompts for workflows
└── cli/ # CLI interface代理技能(人工智能编码代理的25项技能)
使用我们的Kubernetes专业知识扩展您的AI编码代理 代理技能 图书馆。技能提供了代理可以按需加载的专业知识和工作流程。
快速安装
# Copy all skills to Claude
cp -r kubernetes-skills/claude/* ~/.claude/skills/
# Or install specific skills
cp -r kubernetes-skills/claude/k8s-helm ~/.claude/skills/可用技能(25)
| 类别 | 技能 |
|---|---|
| 核心资源 | k8s核心、k8s网络、k8s存储 |
| 工作量 | k8s部署、k8s作战、k8s掌舵 |
| 可观测性 | k8s诊断、k8s故障排除、k8s事件 |
| 安全 | k8s安全、k8s策略、k8s证书 |
| GitOps | k8s陀螺、k8s推出 |
| 扩展 | k8s自动缩放、k8s成本、k8s备份 |
| 多集群 | k8s多集群、k8s capi、k8s-kubevirt、k8svind |
| 网络 | k8s服务网,k8s纤毛 |
| 工具 | k8s浏览器、k8s-cli |
转换为其他代理
使用 SkillKit 将技能转换为您首选的AI代理格式:
npm install -g skillkit
# Convert to Cursor format
skillkit translate kubernetes-skills/claude --to cursor --output .cursor/rules/
# Convert to Codex format
skillkit translate kubernetes-skills/claude --to codex --output ./支持的代理: Claude、Cursor、Codex、Gemini CLI、GitHub Copilot、Goose、Windsurf、Roo、Amp等。
看 kubernetes技能/README.md 获取完整文档。
多集群支持
通过自然语言无缝管理多个Kubernetes集群。 每个工具 支持可选 context 参数,用于在不切换上下文的情况下针对任何集群。
上下文参数(v1.15.0)
大多数kubectl支持的工具都接受可选 context 参数以针对特定集群。 注意:vCluster(vind)和kind工具通过其本地CLI运行,不接受 context 参数。
与您的AI助手交谈:
"List pods in the production cluster"
"Get deployments from staging context"
"Show logs from the api-pod in the dev cluster"
"Compare namespaces between production and staging clusters"带上下文的直接工具调用:
# Target a specific cluster context
kubectl-mcp-server call get_pods '{"namespace": "default", "context": "production"}'
# Get deployments from staging
kubectl-mcp-server call get_deployments '{"namespace": "app", "context": "staging"}'
# Install Helm chart to production cluster
kubectl-mcp-server call install_helm_chart '{"name": "redis", "chart": "bitnami/redis", "namespace": "cache", "context": "production"}'
# Compare resources across clusters
kubectl-mcp-server call compare_namespaces '{"namespace1": "prod-ns", "namespace2": "staging-ns", "context": "production"}'上下文管理
与您的AI助手交谈:
"List all available Kubernetes contexts"
"Switch to the production cluster"
"Show me details about the staging context"
"What's the current cluster I'm connected to?"或者直接使用CLI:
kubectl-mcp-server context # Show current context
kubectl-mcp-server context production # Switch context
kubectl-mcp-server call list_contexts_tool # List all contexts via MCP运作原理
- 如果
context如果省略,该工具将使用您当前的kubectl上下文 - 如果
context如果指定了,则该工具直接针对该集群 - 响应包括
"context": "production"或"context": "current"为清晰起见 - 适用于所有kubeconfig设置和方面
KUBECONFIG环境变量 - 无需为跨集群操作切换上下文
开发与测试
设置开发环境
# Clone the repository
git clone https://github.com/rohitg00/kubectl-mcp-server.git
cd kubectl-mcp-server
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install development dependencies
pip install -r requirements-dev.txt运行测试
# Run all tests
pytest tests/ -v
# Run specific test file
pytest tests/test_tools.py -v
# Run with coverage
pytest tests/ --cov=kubectl_mcp_tool --cov-report=html
# Run only unit tests
pytest tests/ -v -m unit测试结构
tests/
├── __init__.py # Test package
├── conftest.py # Shared fixtures and mocks
├── test_tools.py # Unit tests for 253 MCP tools
├── test_resources.py # Tests for 8 MCP Resources
├── test_prompts.py # Tests for 8 MCP Prompts
└── test_server.py # Server initialization tests234项测试涵盖:工具注册、资源暴露、提示生成、服务器初始化、非破坏性模式、秘密屏蔽、错误处理、传输方法、CLI命令、浏览器自动化和生态系统工具。
代码质量
# Format code
black kubectl_mcp_tool tests
# Sort imports
isort kubectl_mcp_tool tests
# Lint
flake8 kubectl_mcp_tool tests
# Type checking
mypy kubectl_mcp_tool贡献
我们❤️ 贡献!无论是错误报告、功能请求、文档改进还是代码贡献。
贡献方式:
- 🐛 通过以下方式报告错误
- 💡 建议功能或改进
- 📝 改进文档
- 🔧 提交拉取请求
- ⭐ 如果你觉得这个项目有用,就给它标上星号!
开发设置:参见 开发与测试 上面的部分。
在提交PR之前:
- 运行测试:
pytest tests/ -v - 格式代码:
black kubectl_mcp_tool tests - 检查绒毛:
flake8 kubectl_mcp_tool tests
支持与社区
许可证
MIT许可证-请参阅 许可证 了解详情。
链接和资源
软件包存储库:
- 🐍 PyPI包
- 📦
- 🐳
项目:
生态系统:
- 📚 模型上下文协议
- ☸️ Kubernetes文档
______________________________________________________________________
制作❤️ 面向Kubernetes和AI社区
如果 kubectl mcp服务器 让你的DevOps生活更轻松,给它一个⭐ 上 !

