k8s Pilot
A lightweight, centralized control plane for managing multiple Kubernetes clusters using kubeconfig or in-cluster configuration.
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
- π Readonly mode for safe cluster inspection
- βοΈ Powered by MCP for Claude AI and beyond
π§° Prerequisites
- Python 3.13 or higher
uvpackage manager- Access to Kubernetes clusters (
~/.kube/configor 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
Normal Mode (Full Access)
# Start with full read/write access
uv run --with mcp[cli] mcp run k8s_pilot.py
Readonly Mode (Safe Inspection)
# Start in readonly mode - only read operations allowed
uv run --with mcp[cli] python k8s_pilot.py --readonly
Command Line Options
# Show help
uv run --with mcp[cli] python k8s_pilot.py --help
Readonly Mode
The --readonly flag enables a safety mode that prevents any write operations to your Kubernetes clusters. This is perfect for:
- Cluster inspection without risk of accidental changes
- Audit scenarios where you need to view but not modify
- Learning environments where you want to explore safely
- Production monitoring with zero risk of modifications
Protected Operations (Blocked in Readonly Mode)
pod_create,pod_update,pod_deletedeployment_create,deployment_update,deployment_deleteservice_create,service_update,service_deleteconfigmap_create,configmap_update,configmap_deletesecret_create,secret_update,secret_deletenamespace_create,namespace_delete- All other create/update/delete operations
Allowed Operations (Always Available)
pod_list,pod_detail,pod_logsdeployment_list,deployment_getservice_list,service_getconfigmap_list,configmap_getsecret_list,secret_getnamespace_list,namespace_get- All other list/get operations
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"
]
}
}
}
For readonly mode, use this configuration:
{
"mcpServers": {
"k8s_pilot_readonly": {
"command": "uv",
"args": [
"--directory",
"<path-to-cloned-repo>/k8s-pilot",
"run",
"--with",
"mcp[cli]",
"python",
"k8s_pilot.py",
"--readonly"
]
}
}
}
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.
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 LICENSE file for details.
Related Servers
Google Play Store
Integrates with Google Play Store command-line tools, enabling AI assistants to manage apps via the Play Console API.
PayPal
The PayPal Model Context Protocol server allows you to integrate with PayPal APIs through function calling. This protocol supports various tools to interact with different PayPal services.
iFlytek Spark Agent
Invoke task chains on the iFlytek SparkAgent Platform.
CData Sage Cloud Accounting
A read-only MCP server for Sage Cloud Accounting, powered by the CData JDBC Driver.
CData LinkedIn Ads
MCP Server for LinkedIn Ads, powered by the CData JDBC Driver. Requires a separate license and configuration.
Seq MCP Server
Interact with Seq's API for logging and monitoring.
Salesforce MCP
Interact with Salesforce orgs securely and modularly using LLM-driven tools.
App Store Connect MCP Server
Interact with the App Store Connect API to manage apps, sales, and reports.
LuckyCola MCP
An open MCP service providing a standardized interface compatible with various MCP clients.
AWS SSO
Interact with AWS resources using Single Sign-On (SSO). Supports SSO login, listing accounts/roles, and executing AWS CLI commands.