{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_hrxabccvrnpj","handle":"triagekit-mcp-k8s-triage","url":"https://wellknown.network/agents/triagekit-mcp-k8s-triage","links":{"self":"https://wellknown.network/agents/triagekit-mcp-k8s-triage/record.json","html":"https://wellknown.network/agents/triagekit-mcp-k8s-triage","markdown":"https://wellknown.network/agents/triagekit-mcp-k8s-triage/record.md","api":"https://wellknown.network/api/v1/agents/triagekit-mcp-k8s-triage","status":"https://wellknown.network/api/v1/agents/triagekit-mcp-k8s-triage/status","claim":"https://wellknown.network/agents/triagekit-mcp-k8s-triage/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/triagekit-mcp-k8s-triage/claim.json","badge":"https://wellknown.network/agents/triagekit-mcp-k8s-triage/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/triagekit-mcp-k8s-triage/history","tools":"https://wellknown.network/api/v1/agents/triagekit-mcp-k8s-triage/tools"},"ard":{"identifier":"urn:air::server:triagekit-mcp-k8s-triage","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"triagekit-mcp-k8s-triage","summary":"MCP server that diagnoses unhealthy Kubernetes workloads and finds resource right-sizing candidates using real cluster state - not another kubectl wrapper.","description":"# triagekit-mcp-k8s-triage\n\nPart of the [TriageKit](https://github.com/Karthick-dev-cart/triagekit-mcp) MCP server suite.\n\nDiagnoses unhealthy Kubernetes workloads and finds resource right-sizing candidates using\nreal cluster state — not another `kubectl` wrapper. Existing Kubernetes MCP servers mostly\nexpose cluster CRUD; this one narrows hard on read-only diagnosis and right-sizing.\n\n## Why\n\nWhen a pod is crash-looping, an on-call engineer pivots across `kubectl describe`, `kubectl\nlogs`, rollout history, and (if they're lucky) a Grafana dashboard to figure out what's\nactually wrong. This server does that correlation directly: container exit codes and event\nreasons get mapped to a ranked failure category, crashes get checked against recent rollouts,\nand Prometheus usage history gets compared against resource requests — all as structured\nevidence, not another raw JSON dump.\n\n## Tools\n\n| Tool | What it does |\n|---|---|\n| `diagnose_workload` | Classifies a pod/deployment's failure as OOMKilled, image-pull error, config error, probe failure, or scheduling failure, with evidence |\n| `explain_pod_events` | Orders a pod's raw Kubernetes events into a time-sequenced narrative |\n| `get_pod_logs_since_last_restart` | Fetches logs from the container's current run only, so an old crash's logs don't drown out the current state |\n| `correlate_crashloop_with_recent_changes` | Checks whether a crash lines up with a recent rollout (deploy-related vs. pre-existing bug) |\n| `find_resource_right_sizing_candidates` | Compares Prometheus usage history against resource requests, flags over/under-provisioned workloads |\n| `cluster_health_summary` | One-shot digest: node pressure, failed/pending pods, PDB violations, HPAs at max |\n\nAlso exposes a resource (`k8s://{context}/{namespace}/{workload}/diagnosis`) and a prompt\n(`incident_response_runbook`) that walks an LLM through the standard triage sequence.\n\nThis server is **read-only** by design — see [SECURITY.md](SECURITY.md). It never c…","publisher":{"name":"TriageKit Contributors","url":null},"homepage":"https://github.com/Karthick-dev-cart/k8s-triage","repository":"https://github.com/Karthick-dev-cart/k8s-triage","version":"0.1.0","license":null,"protocols":["mcp"],"tags":["devops","incident-response","kubernetes","mcp","model-context-protocol","sre"],"pricing":null,"endpoints":[{"url":"pypi:triagekit-mcp-k8s-triage","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi","publisherName":"pypi"}},"derived":{"capabilities":[{"slug":"dev.monitoring","name":"Monitoring & Observability","confidence":1,"provenance":"derived"},{"slug":"infra.cloud","name":"Cloud Platforms","confidence":1,"provenance":"declared"},{"slug":"dev.ci-cd","name":"CI/CD & Deploy","confidence":0.825,"provenance":"derived"}],"categories":["dev","infra"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"triagekit-mcp-k8s-triage","registry":"pypi","observedAt":"2026-11-04T03:27:45.249Z","publishedAt":"2026-08-05T04:14:05.025065Z","latestVersion":"0.1.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"triagekit-mcp-k8s-triage","url":"https://pypi.org/project/triagekit-mcp-k8s-triage/","firstSeenAt":"2026-09-10T14:23:17.409Z","fetchedAt":"2026-11-04T03:25:28.353Z","normalizedAt":"2026-11-04T03:25:28.353Z"}]},"firstSeenAt":"2026-09-10T14:23:17.409Z","updatedAt":"2026-11-04T03:27:45.249Z"}