使用说明
项目简介
Kubectl MCP Server (kubectl-mcp-tool) 是一个实现了 Model Context Protocol (MCP) 的服务器,它充当 AI 助手(如 Claude、Cursor、Windsurf 等 MCP 客户端)与 Kubernetes 集群之间的桥梁。通过标准化的 MCP 协议,该服务器允许 AI 助手以自然语言安全地执行 Kubernetes 操作,例如资源管理、状态监控、安全审计和问题诊断等。
主要功能点
- 核心 Kubernetes 操作: 支持连接 Kubernetes 集群,列出、管理和操作 Pod、Service、Deployment 等资源,获取日志和事件,支持 Helm v3 操作,以及 kubectl explain 和 api-resources 等高级功能。
- 自然语言处理: 能够处理自然语言查询,将其转换为 kubectl 命令,实现上下文感知的 Kubernetes 操作。
- 监控与诊断: 提供集群健康监控、资源利用率跟踪、Pod 状态检查、事件监控和告警、以及资源配置验证等功能,帮助用户诊断和解决 Kubernetes 集群问题。
- 安全性: 实施 RBAC 验证、安全上下文审计、安全连接 Kubernetes API、凭证管理和网络策略评估等安全措施。
- 多协议支持: 支持 Stdio 和 SSE 等多种传输协议,方便与不同的 MCP 客户端集成。
安装步骤
-
前提条件:
- Python 3.9+
- kubectl 命令行工具已安装并配置
- 可以访问 Kubernetes 集群
- pip (Python 包管理器)
-
安装 Kubectl MCP Server: 使用 pip 从 PyPI 安装 kubectl-mcp-tool:
pip install kubectl-mcp-tool -
验证安装: 安装完成后,可以通过以下命令检查工具是否正确安装:
kubectl-mcp --help
服务器配置
MCP 服务器需要配置在 MCP 客户端中,以便客户端能够连接并使用服务器提供的 Kubernetes 功能。以下是一些常见 MCP 客户端的配置示例,您需要根据您使用的客户端类型进行配置。
Claude Desktop 配置示例:
{ "mcpServers": { "kubernetes": { "command": "python", "args": ["-m", "kubectl_mcp_tool.cli", "serve", "--transport", "stdio"] } } }
- 'kubernetes': 服务器名称,可以自定义。
- 'command': 启动服务器的命令,这里使用 'python' 解释器。
- 'args': 传递给 'kubectl-mcp_tool.cli' 的参数:
- 'serve': 指定运行 MCP 服务器模式。
- '--transport', 'stdio': 指定使用 Stdio 传输协议。
Cursor AI 配置示例:
{ "tools": [ { "name": "kubectl-mcp", "command": "python", "args": ["-m", "kubectl_mcp_tool.cli", "serve", "--transport", "stdio"], "description": "A tool for interacting with Kubernetes clusters." } ] }
- 'name': 工具名称,在 Cursor AI 中用于识别该工具,可以自定义。
- 'command': 启动服务器的命令,这里使用 'python' 解释器。
- 'args': 传递给 'kubectl-mcp_tool.cli' 的参数,与 Claude 示例相同。
- 'description': 工具描述,用于在 Cursor AI 中显示工具的用途。
Windsurf 配置示例:
{ "extensions": [ { "name": "kubectl-mcp", "description": "Kubernetes operations using MCP", "exec": { "command": "python", "args": ["-m", "kubectl_mcp_tool.cli", "serve", "--transport", "stdio"] } } ] }
- 'name': 扩展名称,在 Windsurf 中用于识别扩展,可以自定义。
- 'description': 扩展描述,用于在 Windsurf 中显示扩展的用途。
- 'exec': 执行配置,包含 'command' 和 'args' 参数,与 Claude 和 Cursor 示例相同。
基本使用方法
-
启动 MCP 服务器: 根据您选择的传输协议(stdio 或 sse)和客户端配置,启动 kubectl-mcp-tool 服务器。通常,服务器会在后台运行,监听来自 MCP 客户端的请求。
-
在 AI 助手中使用: 在配置好 MCP 服务器后,您可以在支持 MCP 协议的 AI 助手中使用自然语言指令与 Kubernetes 集群进行交互。例如,在 Claude 中,您可以直接提问 "List all pods in my cluster"。AI 助手会将您的自然语言指令转换为 MCP 请求,发送给 Kubectl MCP Server,服务器执行相应的 kubectl 命令并将结果返回给 AI 助手。
请参考仓库的 README 文档和集成指南获取更详细的使用说明和高级配置选项。
信息
分类
开发者工具