Kubernetes模型控制协议服务器

K8s MCP Server是一个用于Kubernetes操作的模型控制协议服务器,提供管理部署、Pod、服务等工具,适用于Kubernetes开发和自动化场景。

  • by surukanti
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 chinnareddy578/k8s-mcp-server

使用说明

K8s MCP服务器

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

先决条件

  • 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副本:

    • 打开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服务器进行代码建议和完成。

克劳德桌面

  1. 配置Claude桌面:

    • 打开克劳德桌面设置。
    • 添加以下配置:
    {
        "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现在将使用MCP服务器进行代码建议和完成。

故障排除

  • Kubernetes配置: 确保Minikube正在运行,并且您的kubeconfig设置正确:

    minikube status
    minikube kubectl -- get pods
    
  • 连接问题: 如果使用Docker,请确保容器正在运行并且可以访问Kubernetes配置:

    docker ps
    
  • 未找到工具: 验证该工具是否已在MCP服务器中注册,并且名称是否完全匹配。

许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。