From pagerduty
Queries PagerDuty Analytics API for incident metrics (MTTA, MTTR), service performance, team workloads, and operational insights using functions like pagerduty_get_analytics_incidents.
npx claudepluginhub wyre-technology/msp-claude-plugins --plugin pagerdutyThis skill uses the workspace's default tool permissions.
PagerDuty Analytics provides data-driven insights into incident response performance. Key metrics include Mean Time to Acknowledge (MTTA), Mean Time to Resolve (MTTR), incident frequency, and responder workload. These metrics help MSPs identify operational bottlenecks, measure SLA compliance, and demonstrate value to clients.
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Calculates TAM/SAM/SOM using top-down, bottom-up, and value theory methodologies for market sizing, revenue estimation, and startup validation.
PagerDuty Analytics provides data-driven insights into incident response performance. Key metrics include Mean Time to Acknowledge (MTTA), Mean Time to Resolve (MTTR), incident frequency, and responder workload. These metrics help MSPs identify operational bottlenecks, measure SLA compliance, and demonstrate value to clients.
| Metric | Description |
|---|---|
| MTTA | Mean Time to Acknowledge -- average time from incident trigger to first acknowledgement |
| MTTR | Mean Time to Resolve -- average time from incident trigger to resolution |
| MTTE | Mean Time to Engage -- average time from trigger to first responder engagement |
| MTTS | Mean Time to Start -- average time from trigger to first status change |
| Incident Count | Total number of incidents in the time period |
| Interruptions | Number of off-hours notifications that interrupted responders |
Analytics can be aggregated at different levels:
All analytics queries require a time range:
since -- Start of the analysis period (ISO 8601)until -- End of the analysis period (ISO 8601)pagerduty_get_analytics_incidents
Parameters:
since -- Start of date range (ISO 8601)until -- End of date range (ISO 8601)urgency -- Filter by urgency (high, low)service_ids[] -- Filter by serviceteam_ids[] -- Filter by teamExample response:
{
"data": {
"mean_seconds_to_acknowledge": 180,
"mean_seconds_to_resolve": 3600,
"mean_seconds_to_engage": 120,
"mean_seconds_to_first_ack": 180,
"mean_seconds_to_mobilize": 300,
"total_incident_count": 42,
"total_interruptions": 8,
"up_time_pct": 99.5
},
"filters": {
"since": "2026-03-01T00:00:00Z",
"until": "2026-03-27T00:00:00Z"
}
}
pagerduty_get_analytics_services
Parameters:
since -- Start of date range (ISO 8601)until -- End of date range (ISO 8601)service_ids[] -- Filter to specific servicesExample response:
{
"data": [
{
"service_id": "PSVC123",
"service_name": "Payment API",
"mean_seconds_to_acknowledge": 120,
"mean_seconds_to_resolve": 2400,
"total_incident_count": 15,
"total_interruptions": 3,
"up_time_pct": 99.8
},
{
"service_id": "PSVC456",
"service_name": "Auth Service",
"mean_seconds_to_acknowledge": 300,
"mean_seconds_to_resolve": 7200,
"total_incident_count": 27,
"total_interruptions": 5,
"up_time_pct": 98.9
}
]
}
pagerduty_get_analytics_incidents for the past monthpagerduty_get_analytics_services to break down by servicetotal_incident_count descending to find noisiest servicesmean_seconds_to_resolve to find slowest-to-resolve servicestotal_interruptions to measure off-hours impact| MTTA | Assessment |
|---|---|
| < 1 min | Excellent -- likely automated acknowledgement |
| 1-5 min | Good -- responders are engaged |
| 5-15 min | Acceptable -- room for improvement |
| 15-30 min | Needs attention -- review notification rules |
| > 30 min | Critical -- escalation policies may not be working |
| MTTR | Assessment |
|---|---|
| < 30 min | Excellent -- fast resolution |
| 30 min - 2 hr | Good -- effective incident response |
| 2-4 hr | Acceptable for complex issues |
| 4-8 hr | Needs review -- investigate bottlenecks |
| > 8 hr | Critical -- consider runbooks and automation |
Cause: No incidents in the requested time range Solution: Expand the time range or remove filters
Cause: Exceeded 60 requests per minute for analytics endpoints Solution: Cache results and reduce query frequency; use broader time ranges
Cause: Requested time range exceeds the maximum (typically 6 months) Solution: Break the query into smaller time windows