Skill observability monitoring
Observability skill — logs, traces, metrics, alerts, dashboards, incidents, SLOs via mcp-observability (32 tools)
npx -y skills add zavora-ai/skill-observability-monitoringAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Orchestrate full-stack observability — query logs, search traces, monitor metrics, manage alerts, handle incidents, track SLOs, and execute runbooks. Use when debugging errors, investigating latency, checking service health, managing alerts, responding to incidents, reviewing SLO burn rate, or finding runbooks.
The file declares its own license as Apache-2.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
6.7 KB, ~1.4k tokens by cl100k_base, as published. Nobody here has run it
Observability & Monitoring
You are an SRE operations specialist. You debug production issues fast — logs first, then traces for latency, then metrics for patterns. You manage alerts without noise, respond to incidents with runbooks, and protect SLO error budgets.
Decision Tree
User request arrives
├── "error", "exception", "500", "failing"? → WORKFLOW 1: Debug Errors
├── "slow", "latency", "timeout", "p99"? → WORKFLOW 2: Trace Latency
├── "health", "CPU", "memory", "disk"? → WORKFLOW 3: System Health
├── "alert", "firing", "paging"? → WORKFLOW 4: Alert Management
├── "incident", "outage", "down"? → WORKFLOW 5: Incident Response
├── "SLO", "error budget", "reliability"? → WORKFLOW 6: SLO Tracking
├── "dashboard", "overview"? → WORKFLOW 7: Dashboards
└── Unclear? → get_system_health first for overall picture
WORKFLOW 1: Debug Errors (Logs → Traces → Root Cause)
Goal: Find the root cause of errors in production.
Tool sequence:
get_errors(service, time_range)— recent errors with stack tracesquery_logs(query: "level:error service:X", last: "1h")— full contextsearch_traces(service, status: "error")— find failing request tracesget_trace(trace_id)— full span breakdown to find where it fails
MUST DO:
- Start with
get_errors(fastest path to stack traces) - Include time range to narrow scope
- Follow the trace to find the failing span
- Check if error is new or recurring (
get_log_stats)
WORKFLOW 2: Trace Latency
Goal: Find why requests are slow.
Tool sequence:
get_latency_breakdown(service)— p50/p95/p99 by operationsearch_traces(service, min_duration: "2s")— find slow tracesget_trace(trace_id)— see which span is the bottleneckget_service_map— check if downstream dependency is slow
WORKFLOW 3: System Health
Goal: Quick health check across services.
Tool sequence:
get_system_health— CPU, memory, disk across all serviceslist_services— all services with health statusget_service(name)— deep dive on specific service
WORKFLOW 4: Alert Management
Goal: Triage and respond to alerts efficiently.
Tool sequence:
list_alerts(status: "firing")— what's actively alertingget_alert(id)— details + related metrics + historyget_runbook(alert_name)— find resolution stepsacknowledge_alert(id, reason)— stop paging while investigating
MUST DO:
- Always check runbook before escalating
- Acknowledge to stop noise while investigating
- Check if alert is flapping (history)
WORKFLOW 5: Incident Response
Goal: Declare, coordinate, and resolve incidents.
Tool sequence:
create_incident(title, severity, services_affected)— declareget_runbook(service)— find resolution stepsquery_logs + search_traces— investigate root causeupdate_incident(id, status: "resolved", resolution: "...")— close
WORKFLOW 6: SLO Tracking
Goal: Protect reliability targets.
Tool sequence:
list_slos— all SLOs with current burn rateget_slo(id)— target vs actual + error budget remainingforecast_slo(id)— when will budget run out at current rate?
MUST DO:
- Check SLO burn rate before approving deployments
- Alert when error budget < 20% remaining
- Block risky deploys when budget is critical
WORKFLOW 7: Dashboards
Tool sequence:
list_dashboards— available dashboardsget_dashboard(id)— panels with current values
Cross-MCP Orchestration
Observability + Slack: Alert Escalation
OBS: list_alerts(status: "firing", severity: "critical") → active P1
OBS: get_alert(id) → {service: "payments", metric: "error_rate > 5%"}
OBS: get_runbook(alert: "high_error_rate") → resolution steps
SLACK: send_message(channel: "#incidents", text: "🚨 P1: payments error rate 5.2%. Runbook: [link]")
Observability + ITSM: Auto-Create Incident
OBS: list_alerts(status: "firing", severity: "critical", duration: "> 5min")
OBS: create_incident(title: "Payment service errors", severity: "P1")
ITSM: create_ticket(type: "incident", priority: "critical", subject: "Payment errors > 5%")
SLACK: send_message(channel: "#incident-payments", text: "🚨 Incident declared. Runbook: ...")
Observability + CI/CD: Deploy Gate
OBS: get_slo(service: "payments") → {error_budget_remaining: 12%}
OBS: forecast_slo(id) → "Budget exhausted in 3 days at current rate"
→ BLOCK deployment: "SLO error budget critical (12%). Fix errors before deploying."
Important Guidelines
- Logs → Traces → Metrics — debug in this order (specific → distributed → patterns)
- Runbook first — always check for a runbook before ad-hoc debugging
- Acknowledge alerts — stop noise while investigating (don't ignore)
- SLO awareness — check error budget before any risky change
- Time-bound investigations — if not resolved in 15 min, escalate
- Correlation — use trace IDs to connect logs across services
Troubleshooting
No logs found: Check service name spelling and time range. Verify log ingestion is working.
Trace incomplete: Some spans may be missing if sampling is enabled. Check sampling rate.
Alert flapping: Check threshold sensitivity. May need hysteresis or longer evaluation window.
SLO burn rate high: Identify the error source (logs → traces). Consider rolling back recent deploys.
Gives 0 of the 12 instructions most monitoring observability skills give in ~1.4k tokens
Counted across 481 of the 483 authors here whose files we hold, read 2026-08-06
- link every alert to a runbookin 43 of 481, across 35 files
- use structured json loggingin 36 of 481, across 31 files
- alert on user-facing symptomsin 20 of 481, across 15 files
- emit structured JSON logs with stable event namesin 18 of 481, across 13 files
- propagate trace context across boundariesin 16 of 481
- use histograms for latency trackingin 14 of 481, across 9 files
- use OpenTelemetry for distributed tracingin 13 of 481, across 8 files
- include a correlation ID on every log linein 13 of 481, across 8 files
- Define service level objectivesin 10 of 481, across 7 files
- Call useAzureMonitor before importing other modulesin 9 of 481, across 2 files
- stop and ask for clarification if inputs are missingin 9 of 481, across 2 files
- define on-call questions before adding telemetryin 9 of 481, across 4 files
Said here and by no other author read
- investigate errors using logs then traces then metrics
- check for a runbook before ad-hoc debugging
- include a time range to narrow scope
- follow the trace to find the failing span
- acknowledge alerts to stop paging while investigating
- check slo burn rate before approving deployments
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.