Back to MCP directory
publicPublicdnsLocal runtime

k8s-mcp-server

这是一个基于Kubernetes的模型控制协议(MCP)服务器项目,提供部署、Pod和服务等Kubernetes资源管理工具。

article

README

🚀 K8s MCP Server

本项目是一个用于 Kubernetes 操作的模型控制协议(MCP)服务器。它提供了管理部署、Pod、服务等的工具。

🚀 快速开始

✨ 主要特性

  • 提供管理 Kubernetes 资源的工具,如部署、Pod 和服务等。
  • 支持直接运行和 Docker 容器化部署两种方式。
  • 可与 GitHub Copilot 和 Claude Desktop 集成,提供代码建议和补全功能。

📦 安装指南

前提条件

  • Python 3.12 或更高版本
  • uv 包管理器
  • Minikube(用于本地 Kubernetes 开发)
  • Docker(可选,用于容器化部署)

运行 MCP 服务器

主要方法:直接运行
  1. 创建虚拟环境
    uv venv .venv
    
  2. 激活虚拟环境
    • 在 macOS/Linux 上:
      source .venv/bin/activate
      
    • 在 Windows 上:
      .venv\Scripts\activate
      
  3. 安装依赖项
    uv pip install -e .
    
  4. 运行服务器
    python src/main.py
    
替代方法:使用 Docker(可选)
  1. 拉取 Docker 镜像
    docker pull chinnareddy578/k8s-mcp-server
    
  2. 运行 Docker 容器
    docker run -it \
      -v ${HOME}/.kube:/root/.kube:ro \
      -v ${HOME}/.minikube:/root/.minikube:ro \
      chinnareddy578/k8s-mcp-server
    

💻 使用示例

与 MCP 客户端一起使用 MCP 服务器

GitHub Copilot
  1. 配置 GitHub Copilot
    • 打开你的 GitHub Copilot 设置。
    • 添加以下配置:
    {
        "servers": {
            "k8s-mcp-server": {
                "command": "python",
                "args": [
                    "src/main.py"
                ]
            }
        }
    }
    
    或者,如果你更喜欢使用 Docker:
    {
        "servers": {
            "k8s-mcp-server": {
                "command": "docker",
                "args": [
                    "run",
                    "-i",
                    "--rm",
                    "--init",
                    "-e", "PYTHONUNBUFFERED=1",
                    "-v", "${HOME}/.kube:/root/.kube:ro",
                    "-v", "${HOME}/.minikube:/root/.minikube:ro",
                    "chinnareddy578/k8s-mcp-server"
                ]
            }
        }
    }
    
  2. 使用 GitHub Copilot
    • GitHub Copilot 现在将使用 MCP 服务器进行代码建议和补全。
Claude Desktop
  1. 配置 Claude Desktop
    • 打开 Claude Desktop 设置。
    • 添加以下配置:
    {
        "mcpServers": {
            "k8s-mcp-server": {
                "command": "python",
                "args": [
                    "src/main.py"
                ]
            }
        }
    }
    
    或者,如果你更喜欢使用 Docker:
    {
        "mcpServers": {
            "k8s-mcp-server": {
                "command": "docker",
                "args": [
                    "run",
                    "-i",
                    "--rm",
                    "--init",
                    "-e", "PYTHONUNBUFFERED=1",
                    "-v", "${HOME}/.kube:/root/.kube:ro",
                    "-v", "${HOME}/.minikube:/root/.minikube:ro",
                    "chinnareddy578/k8s-mcp-server"
                ]
            }
        }
    }
    
  2. 使用 Claude Desktop
    • Claude Desktop 现在将使用 MCP 服务器进行代码建议和补全。

🔧 故障排除

  • Kubernetes 配置:确保 Minikube 正在运行,并且你的 kubeconfig 已正确设置:
    minikube status
    minikube kubectl -- get pods
    
  • 连接问题:如果使用 Docker,请确保容器正在运行并可以访问你的 Kubernetes 配置:
    docker ps
    
  • 工具未找到:验证工具是否已在你的 MCP 服务器中注册,并且名称完全匹配。

📄 许可证

本项目采用 MIT 许可证 - 有关详细信息,请参阅 LICENSE 文件。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client