k8s-pilot

k8s-pilot

10

k8s_pilot is a centralized control plane server designed to manage multiple Kubernetes clusters efficiently. It offers features like multi-cluster context switching, CRUD operations on Kubernetes resources, and enhanced management capabilities through MCP integration.

k8s-pilot-ci

smithery badge Verified on MseeP

The Central Pilot for Your Kubernetes Fleets ✈️✈️

k8s_pilot is a lightweight, centralized control plane server for managing multiple Kubernetes clusters at once.
With powerful tools and intuitive APIs, you can observe and control all your clusters from one cockpit.


πŸš€ Overview

  • πŸ”„ Supports multi-cluster context switching
  • πŸ”§ Enables CRUD operations on most common Kubernetes resources
  • βš™οΈ Powered by MCP for Claude AI and beyond

🧰 Prerequisites

  • Python 3.13 or higher
  • uv package manager
  • Access to Kubernetes clusters (~/.kube/config or in-cluster config)
# Install uv (if not installed)

# For MacOS
brew install uv

# For Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

Installation

# Clone the repository
git clone https://github.com/bourbonkk/k8s-pilot.git
cd k8s-pilot

# Launch with uv + MCP
uv run --with mcp[cli] mcp run k8s_pilot.py

Usage with Claude Desktop

Use this config to run k8s_pilot MCP server from within Claude:

{
  "mcpServers": {
    "k8s_pilot": {
      "command": "uv",
      "args": [
        "--directory",
        "<path-to-cloned-repo>/k8s-pilot",
        "run",
        "--with",
        "mcp[cli]",
        "mcp",
        "run",
        "k8s_pilot.py"
      ]
    }
  }
}

Replace with the actual directory where you cloned the repo.

Scenario

Create a Deployment using the nginx:latest image in the pypy namespace, and also create a Service that connects to it. deployα„‹α…ͺ ᄉα…₯바스ᄉᅒᆼᄉα…₯α†Ό(α„‹α…§α†Όα„‹α…₯

Key Features

Multi-Cluster Management

  • Seamlessly interact with multiple Kubernetes clusters
  • Perform context-aware operations
  • Easily switch between clusters via MCP prompts

Resource Control

  • View, create, update, delete:
    • Deployments, Services, Pods
    • ConfigMaps, Secrets, Ingresses
    • StatefulSets, DaemonSets
    • Roles, ClusterRoles
    • PersistentVolumes & Claims

Namespace Operations

  • Create/delete namespaces
  • List all resources in a namespace
  • Manage labels and resource quotas

Node Management

  • View node details and conditions
  • Cordon/uncordon, label/taint nodes
  • List pods per node

License

This project is licensed under the MIT License. See the file for details.