mcpField
K
K8s Mcp Server

K8s Mcp Server

Local
github.com/chinnareddy578Cloud & Infra2Updated 71w ago

About K8s Mcp Server

K8s Mcp Server is an MCP server for Kubernetes operations, aimed at users managing cluster resources. It provides tools for deployments, pods, services, and more, and can run directly with Python or in Docker.

Key features

  1. 01Manage deployments, pods, and services
  2. 02Run directly with Python
  3. 03Optional Docker deployment

Use cases

  1. 01Operate Kubernetes resources through an MCP client
  2. 02Run the server in a Docker container

MCP support

Exposes Kubernetes operation tools to MCP clients, including GitHub Copilot and Claude Desktop.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"k8s-mcp-server-chinnareddy578": {
"command": "npx",
"args": [
"-y",
"mcp-remote"
]
}
}
}
Run commandnpx -y mcp-remote

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmmcp-remote

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

K8s MCP Server

This project is a Model Control Protocol (MCP) server for Kubernetes operations. It provides tools for managing deployments, pods, services, and more.

Prerequisites

  • Python 3.12 or higher
  • uv package manager
  • Minikube (for local Kubernetes development)
  • Docker (optional, for containerized deployment)

Running the MCP Server

Primary Method: Running Directly
  1. Create a virtual environment:

    uv venv .venv
    
  2. Activate the virtual environment:

    • On macOS/Linux:
      source .venv/bin/activate
      
    • On Windows:
      .venv\Scripts\activate
      
  3. Install dependencies:

    uv pip install -e .
    
  4. Run the server:

    python src/main.py
    
Alternative Method: Using Docker (Optional)
  1. Pull the Docker image:

    docker pull chinnareddy578/k8s-mcp-server
    
  2. Run the Docker container:

    docker run -it \
      -v ${HOME}/.kube:/root/.kube:ro \
      -v ${HOME}/.minikube:/root/.minikube:ro \
      chinnareddy578/k8s-mcp-server
    

Using the MCP Server with MCP Clients

GitHub Copilot
  1. Configure GitHub Copilot:

    • Open your GitHub Copilot settings.
    • Add the following configuration:
    {
        "servers": {
            "k8s-mcp-server": {
                "command": "python",
                "args": [
                    "src/main.py"
                ]
            }
        }
    }
    

    Alternatively, if you prefer using 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. Use GitHub Copilot:

    • GitHub Copilot will now use the MCP server for code suggestions and completions.
Claude Desktop
  1. Configure Claude Desktop:

    • Open Claude Desktop settings.
    • Add the following configuration:
    {
        "mcpServers": {
            "k8s-mcp-server": {
                "command": "python",
                "args": [
                    "src/main.py"
                ]
            }
        }
    }
    

    Alternatively, if you prefer using 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. Use Claude Desktop:

    • Claude Desktop will now use the MCP server for code suggestions and completions.

Troubleshooting

  • Kubernetes Configuration: Make sure Minikube is running and your kubeconfig is properly set up:

    minikube status
    minikube kubectl -- get pods
    
  • Connection Issues: If using Docker, ensure the container is running and has access to your Kubernetes configuration:

    docker ps
    
  • Tool Not Found: Verify that the tool is registered in your MCP server and the name matches exactly.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.