Mcp Kubernetes Server

Mcp Kubernetes Server

🚀 Kubernetes MCP 服务器

这是一个轻量级的 MCP 服务器,它结合了自然语言处理和 API 来访问 Kubernetes 集群,巧妙地将 kubectl 命令与 Kubernetes Python 客户端进行了结合。

Kubernetes MCP Server

🚀 快速开始

本项目需满足以下前提条件:

  • Python 3.11+
  • 可访问的 Kubernetes 集群
  • 本地配置好的 kubectl
  • 已安装 UV

按如下步骤进行安装:

# 克隆仓库
git clone https://github.com/ductnn/mcp-kubernetes-server.git
cd mcp-kubernetes-server

# 创建虚拟环境
uv venv .venv

# 激活(Unix)
source .venv/bin/activate

# 安装依赖
uv pip install -r requirements.txt

✨ 主要特性

  • 自然语言接口:能够把 plain English 查询转换为 kubectl 命令。
    • 可列出所有命名空间中的 pod 和部署。
    • 若遇到不支持的查询,会回退到通用资源列表。
  • 完整的 CRUD 操作
    • 🆕 可通过 API 端点创建/删除命名空间、pod 和部署。
    • 🔍 能检查集群资源。
    • ✏️ 可修改标签、注释和部署配置。
    • 🗑️ 支持带有空闲期的优雅删除。
    • 📊 可调整部署规模。
  • 双执行模式
    • 集成 kubectl 命令。
    • 支持 Kubernetes 官方 Python 客户端(SDK)。
  • 高级功能
    • 命名空间验证(DNS - 1123 兼容)。
    • 标签过滤。
    • 空闲期控制。
    • 自动命令回退。
    • 资源管理(CPU,内存)。
    • 环境变量配置。

📦 安装指南

前提条件

  • Python 3.11+
  • 可用的 Kubernetes 集群访问
  • 当地配置好的 kubectl
  • 已安装 UV

安装步骤

# 克隆仓库
git clone https://github.com/ductnn/mcp-kubernetes-server.git
cd mcp-kubernetes-server

# 创建虚拟环境
uv venv .venv

# 激活(Unix)
source .venv/bin/activate

# 安装依赖
uv pip install -r requirements.txt

💻 使用示例

基础用法

自然语言处理

服务器支持基本的自然语言查询以列出资源:

# 列出所有 pod
result = nl_processor.process("Show me all pods")

# 列出所有部署
result = nl_processor.process("Show me all deployments")

# 带有命名空间的查询
result = nl_processor.process("Show me all resources", "kube-system")

API 端点操作

对于更复杂的操作,请使用专用 API 端点:

# 创建一个 pod
pod_service.create_pod(
name="my-pod",
namespace="default",
image="nginx:latest",
labels={"app": "my-app"}
)

# 创建一个部署
deployment_service.create_deployment(
name="my-deployment",
namespace="default",
image="nginx:latest",
replicas=3
)

# 删除命名空间
namespace_service.delete("my-namespace", force=True)

高级用法

服务器提供所有操作的 RESTful 端点:

  • /api/pods:列出所有 pod
  • /api/deployments:列出所有部署
  • /api/services:列出所有服务
  • /api/namespaces:列出所有命名空间
  • /api/resources:列出所有资源

📚 详细文档

与 AI 助手集成

配置如下:

# 配置路径
export PATH="/path/to/uv:$PATH"

测试

基本测试

# 安装依赖
pip install -r requirements.txt

# 运行测试
pytest tests/

详细说明

  • 自然语言处理:将用户查询转换为 Kubernetes 操作。
  • API 端点:提供 RESTful API 来管理 Kubernetes 资源。

📄 许可证

本项目遵循 MIT 许可证。

  • 0 关注
  • 0 收藏,11 浏览
  • system 提出于 2025-10-05 14:45

相似服务问题

相关AI产品