Provides tools for monitoring and analyzing Kubernetes cluster alerts through Karma Alert dashboard, including listing alerts by cluster, filtering by severity and state, and retrieving detailed alert information.
🚨 Karma MCP Server
Bring AI-powered intelligence to your Kubernetes alerts. Karma MCP Server enables Claude to directly interact with your Karma Alert Dashboard, providing natural language queries, analysis, and management of Prometheus/Alertmanager alerts.
🌟 What is This?
Karma MCP Server is a bridge that connects Claude Desktop (or any MCP-compatible client) to your Karma Alert Dashboard. This allows you to:
- 🗣️ Ask questions in natural language about your alerts: "How many critical alerts are there in production?"
- 🔍 Search and filter across multiple Kubernetes clusters simultaneously
- 📊 Get instant insights about alert patterns and trends
- 🚀 Accelerate incident response with AI-powered alert analysis
- 🔄 Automate routine checks without leaving your conversation
Example Interactions with Claude
🎯 Key Features
Core Alert Management
- ✅ Real-time alert listing with severity, state, and cluster information
- ✅ Multi-cluster support - search across all your Kubernetes clusters at once
- ✅ Smart filtering by cluster, namespace, severity, and alert state
- ✅ Detailed alert inspection with annotations, labels, and runbook links
- ✅ Statistical summaries showing alert distribution and trends
Advanced Search Capabilities
- 🔍 Container-based search - Find alerts by container name across clusters
- 🔍 Alert name search - Search specific alerts across your entire infrastructure
- 🔍 Cross-cluster analysis - Compare alert patterns between environments
Integration Features
- 🌐 REST API for HTTP-based integrations
- 🔄 MCP Protocol support for AI assistants
- 🐳 Docker support with multi-architecture images
- ☸️ Kubernetes-ready with Helm charts included
📦 Installation
Quick Start with Claude Desktop
- Install via UV (recommended)
- Configure Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json
:
- Connect to your Karma instance
- Restart Claude Desktop and start asking about your alerts!
Docker Installation
Kubernetes Installation
🛠️ Available MCP Tools
The following tools are available for Claude to use:
Tool | Description | Example Query |
---|---|---|
check_karma | Verify Karma connectivity | "Is Karma accessible?" |
list_alerts | List all active alerts | "Show me all alerts" |
get_alerts_summary | Statistical summary by severity/state | "Give me an alert summary" |
get_alert_details | Detailed info about specific alert | "Details about KubePodCrashLooping" |
list_clusters | List all K8s clusters with counts | "Which clusters have alerts?" |
list_alerts_by_cluster | Filter by cluster | "Show teddy-prod alerts" |
search_alerts_by_container | Search by container name | "Find nginx container alerts" |
get_alert_details_multi_cluster | Search alert across clusters | "Find OOMKilled in all clusters" |
list_active_alerts | Show only active alerts | "What's currently firing?" |
list_suppressed_alerts | Show silenced/inhibited | "What alerts are suppressed?" |
list_silences | List active silences | "Show all silences in teddy-prod" |
create_silence | Create alert silence | "Silence KubePodCrashLooping for 2h" |
delete_silence | Delete/expire silence | "Remove silence abc123" |
🔌 REST API Endpoints
If you prefer HTTP integration:
🧪 Testing
🔧 Development
Setting up the development environment
Project Structure
📊 Real-World Use Cases
Daily Operations
- Morning standup: "Show me all critical alerts from the last 24 hours"
- Shift handover: "Summarize current active alerts by cluster"
- Quick checks: "Are there any database-related alerts?"
Incident Response
- Investigation: "Find all alerts related to the payment service"
- Pattern detection: "Show me crash loops in the API namespace"
- Impact analysis: "Which clusters are affected by high CPU throttling?"
Capacity Planning
- Resource issues: "List all OOM killed containers this week"
- Scaling decisions: "Show pods with high memory pressure"
- Performance: "Find all high latency alerts"
🤝 Contributing
We welcome contributions! Please see our Contributing Guide for details.
Areas we'd love help with:
- 🔕 Alert silencing/acknowledgment features
- 📈 Historical trending and analytics
- 🔐 Authentication support for secured Karma instances
- 🌍 Additional language support for alert descriptions
- 📱 Slack/Teams notification integrations
📝 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Karma Alert Dashboard - The excellent alert dashboard that makes this possible
- Model Context Protocol - Anthropic's protocol for AI tool integration
- FastMCP - Simplified MCP server development
- The Kubernetes and Prometheus communities for their amazing monitoring ecosystem
📚 Documentation
🚀 Roadmap
- Core alert querying and filtering
- Multi-cluster search capabilities
- Docker and Kubernetes support
- CI/CD with GitHub Actions
- Alert silencing and acknowledgment
- Historical data and trending
- Grafana integration
- Alert correlation and root cause analysis
- Natural language alert rules generation
Need help? Open an issue or reach out on GitHub Discussions
Like this project? Give it a ⭐ on GitHub!
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Enables Claude to interact with Karma Alert dashboard to monitor and analyze Kubernetes alerts. Provides tools to check alert status, filter by cluster/severity, get detailed alert information, and analyze alert statistics and trends.