Kube-Whisperer
Provides tools for managing Kubernetes clusters, including listing pods, getting pod status and logs, scaling and restarting deployments, creating namespaces, deploying YAML configurations, and creating local clusters using minikube or kind.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Kube-Whispererfind out why my apps are crashing"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
🚀 Kube-Whisperer
Autonomous AI Agent for Kubernetes Triage & Infrastructure Management
Kube-Whisperer is an experimental, fully autonomous AI agent built on the Model Context Protocol (MCP). It bridges the gap between Large Language Models and your Kubernetes clusters, allowing you to manage, debug, scale, and provision your infrastructure entirely through natural language conversations.
📖 Table of Contents
Related MCP server: Kubernetes MCP Server
🤖 What is Kube-Whisperer?
Managing Kubernetes can be complex and verbose. When a pod crashes, DevOps engineers typically run a series of commands (kubectl get pods, kubectl describe, kubectl logs) to triage the issue.
Kube-Whisperer automates this. Powered by a locally running LLM (e.g., Llama 3.1) and standard Kubernetes Python clients, Kube-Whisperer acts as a highly intelligent operator inside your cluster. You can ask it to "find out why my apps are crashing" or "spin up a new namespace and deploy this YAML file," and it will autonomously select the right tools, execute the API calls, and report back to you in plain English.
🏗️ Architecture Overview
The project is built around the Model Context Protocol (MCP), which provides a standardized way for AI models to interact with external tools and data sources.
MCP Server (
server.py): A Python-based server that securely interfaces with yourkubeconfigand the Kubernetes API. It exposes a strict set of predefined "tools" (e.g.,list_pods,deploy_yaml) and handles argument validation to prevent rogue commands.AI Agent CLI (
agent_cli.py): The conversational interface. It connects to the MCP Server overstdio, fetches the available tools, translates them into a schema that the LLM understands, and orchestrates the chat loop. The Agent evaluates your requests, decides which tools to call, and parses the JSON results back into natural language.
✨ Features & Capabilities
The agent is currently equipped with 13 core infrastructure tools:
🔍 Intelligent Triage
list_pods: Lists all pods in a namespace alongside their current lifecycle phase.get_pod_status: Deep dives into a specific pod, retrieving restart counts and failure conditions.get_pod_logs: Streams the tail logs from a failing container to diagnose application-level errors.
⚡ Self-Healing & Management
delete_pod: Forcefully restarts stuck pods by deleting them.list_deployments: Views deployment rollout status and replica health.scale_deployment: Dynamically scales replica sets up or down based on your instructions.restart_deployment: Triggers a zero-downtime rolling restart for a deployment.delete_deployment: Tears down deployments.list_services: Inspects cluster networking and exposed NodePorts/LoadBalancers.
🏗️ Infrastructure as Conversation
list_namespaces: Maps out the entire cluster's namespace landscape.create_namespace: Provisions new logical boundaries on the fly.deploy_yaml: Dynamically reads local YAML files and deploys them to a target namespace.create_cluster: Interacts with the host OS to spin up brand new local Kubernetes clusters using engines likeminikubeorkind!
📋 Prerequisites
Before running Kube-Whisperer, ensure you have the following installed:
Python 3.10+
Kubernetes Cluster: A local cluster (MicroK8s, Minikube, or Kind) or a remote cluster.
Kubeconfig: Your
~/.kube/configmust be properly configured and authenticated with your target cluster.Ollama / LLM Provider: An LLM endpoint compatible with the OpenAI spec (the CLI defaults to looking for a local instance).
🚀 Installation & Setup
Clone the Repository Navigate to your workspace and ensure you are in the
kube_whispererdirectory.Set up the Virtual Environment
python3 -m venv .venv source .venv/bin/activateInstall Dependencies Install the required packages from the
requirements.txtfile into your virtual environment:pip install -r requirements.txt
💬 Usage Guide
To start chatting with your cluster, simply run the Agent CLI:
.venv/bin/python agent_cli.pyUpon startup, the agent will initialize the connection to the MCP server, load the available tools, and present a Main Menu of its capabilities.
Example Interactions
Example 1: Triaging a Crash
You: "Are there any pods crashing in the broken-apps namespace?" Agent: (Calls
list_pods-> Callsget_pod_status-> Callsget_pod_logs) "I found a pod in CrashLoopBackOff. The logs indicate it ran out of memory. Would you like me to restart the deployment?"
Example 2: Deploying Infrastructure
You: "Deploy the kube-whisperer-web.yaml file into the nginx-webserver namespace." Agent: (Calls
deploy_yamlpassing the dynamic namespace) "I have successfully deployed the resources into the nginx-webserver namespace!"
Example 3: Cluster Management
You: "Spin up a new minikube cluster named testing-env." Agent: (Calls
create_cluster) "I've started the minikube provisioning process. The testing-env cluster is now coming online."
📁 Project Structure
agent_cli.py: The conversational AI frontend and reasoning loop.server.py: The MCP backend that interacts directly with the Kubernetes API.test_mcp.py: A utility script for testing MCP tool calls directly without the LLM.kube-whisperer-web.yaml: A sample enterprise-grade landing page configured as a Kubernetes ConfigMap and NGINX Deployment.oom-deployment.yaml: A sample crashing deployment used for testing the agent's triage capabilities.
Built with ❤️ and MCP.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/vijaypranesh/kube_whisperer'
If you have feedback or need assistance with the MCP directory API, please join our Discord server