An AI-DevOps MCP server (multi-cluster, read-only by default). Exposes read-only DevOps tools over the Model Context Protocol (MCP) so an LLM (e.g. Claude) can inspect live environments in natural language — across multiple clusters — plus a guarded, audited write tool and a Slack notifier.
KubeWhisper has 7 tools with clear verb-noun naming (list_clusters, resolve_cluster, k8s_get_resources, prometheus_query, github_actions_runs, scale_deployment, send_slack_message). All tools have descriptions (10 - 200 chars, within baseline). Input schemas are present with type definitions and parameter descriptions. However, output schemas are NOT documented, responses are free-text strings rather than structured objects. Error handling is minimal; no recovery guidance or actionable error messages. The scale_deployment tool has a confirmation pattern (confirm=bool) which is good, but lacks explicit error classification. Missing: pagination for list tools, per-item success/failure reporting, and structured output formatting.
List the most recent GitHub Actions workflow runs for a repo (READ-ONLY). Requires GITHUB_TOKEN for private repos / higher rate limits.
List Kubernetes resources with a concise status summary (READ-ONLY).
List the configured clusters and their routing hints (READ-ONLY). Call this first when you're unsure which cluster to target.
Run an instant PromQL query against a cluster's Prometheus (READ-ONLY).
Decide which cluster an alert/error belongs to (READ-ONLY). Pass the alert text, error message, or incident description. Returns the best-matching cluster name plus why it matched, so you can then target it.
Scale a Deployment's replica count (WRITE — human approval required). Safety model: disabled unless KUBEWHISPER_ALLOW_WRITES=true; previews unless confirm=True; every call is audited (with the target cluster).
No output schemas documented. All tools return free-text strings instead of structured JSON objects. LLMs cannot parse results reliably or chain tools without manual parsing.
Error handling lacks recovery guidance. Tools call external APIs (Kubernetes, Prometheus, GitHub) but do not provide actionable error messages. E.g., 'Prometheus error: {...}' gives no guidance on retry or fallback.
List tools (list_clusters, github_actions_runs) lack pagination. github_actions_runs caps at 20 items but does not return total count or next_cursor. Large result sets risk context window exhaustion.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2026-07-28+ | v2 |
Post a message to Slack (e.g. an incident summary or remediation note).
k8s_get_resources returns raw Kubernetes object fields (container_statuses, metadata.name) without filtering. Response includes verbose metadata irrelevant to chat. Should strip internal fields and return only user-facing summaries.
scale_deployment description mentions 'audited' but no audit logging is visible in the code snippet. Audit trail pattern requires logging who called what, with parameters, timestamp, and outcome.