[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-bf6fe012-5454-4d94-b4d0-3e98c26f38ad":3,"$f9m9ZYb52s_fAyO12imtDfJI46-bZsZ9LtvlVW5e1IiI":43},{"id":4,"title":5,"description":6,"categoryId":7,"moduleId":8,"tags":9,"prompt":10,"icon":11,"source":12,"sourceUrl":13,"authorId":14,"authorName":15,"isPublic":16,"stars":17,"runs":18,"createdAt":19,"updatedAt":19,"module":20,"category":27,"packages":34},"bf6fe012-5454-4d94-b4d0-3e98c26f38ad","pagerduty-automation","通过Rube MCP（Composio）自动化PagerDuty任务：管理事件、服务、日程、升级策略和值班轮换。始终首先搜索当前架构的工具。","cat_prod_automation","mod_productivity","sickn33,productivity","---\nname: pagerduty-automation\ndescription: \"Automate PagerDuty tasks via Rube MCP (Composio): manage incidents, services, schedules, escalation policies, and on-call rotations. Always search tools first for current schemas.\"\nrisk: critical\nsource: community\ndate_added: \"2026-02-27\"\n---\n\n# PagerDuty Automation via Rube MCP\n\nAutomate PagerDuty incident management and operations through Composio's PagerDuty toolkit via Rube MCP.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active PagerDuty connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `pagerduty`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `pagerduty`\n3. If connection is not ACTIVE, follow the returned auth link to complete PagerDuty authentication\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. Manage Incidents\n\n**When to use**: User wants to create, update, acknowledge, or resolve incidents\n\n**Tool sequence**:\n1. `PAGERDUTY_FETCH_INCIDENT_LIST` - List incidents with filters [Required]\n2. `PAGERDUTY_RETRIEVE_INCIDENT_BY_INCIDENT_ID` - Get specific incident details [Optional]\n3. `PAGERDUTY_CREATE_INCIDENT_RECORD` - Create a new incident [Optional]\n4. `PAGERDUTY_UPDATE_INCIDENT_BY_ID` - Update incident status or assignment [Optional]\n5. `PAGERDUTY_POST_INCIDENT_NOTE_USING_ID` - Add a note to an incident [Optional]\n6. `PAGERDUTY_SNOOZE_INCIDENT_BY_DURATION` - Snooze an incident for a period [Optional]\n\n**Key parameters**:\n- `statuses[]`: Filter by status ('triggered', 'acknowledged', 'resolved')\n- `service_ids[]`: Filter by service IDs\n- `urgencies[]`: Filter by urgency ('high', 'low')\n- `title`: Incident title (for creation)\n- `service`: Service object with `id` and `type` (for creation)\n- `status`: New status for update operations\n\n**Pitfalls**:\n- Incident creation requires a `service` object with both `id` and `type: 'service_reference'`\n- Status transitions follow: triggered -> acknowledged -> resolved\n- Cannot transition from resolved back to triggered directly\n- `PAGERDUTY_UPDATE_INCIDENT_BY_ID` requires the incident ID as a path parameter\n- Snooze duration is in seconds; the incident re-triggers after the snooze period\n\n### 2. Inspect Incident Alerts and Analytics\n\n**When to use**: User wants to review alerts within an incident or analyze incident metrics\n\n**Tool sequence**:\n1. `PAGERDUTY_GET_ALERTS_BY_INCIDENT_ID` - List alerts for an incident [Required]\n2. `PAGERDUTY_GET_INCIDENT_ALERT_DETAILS` - Get details of a specific alert [Optional]\n3. `PAGERDUTY_FETCH_INCIDENT_ANALYTICS_BY_ID` - Get incident analytics\u002Fmetrics [Optional]\n\n**Key parameters**:\n- `incident_id`: The incident ID\n- `alert_id`: Specific alert ID within the incident\n- `statuses[]`: Filter alerts by status\n\n**Pitfalls**:\n- An incident can have multiple alerts; each alert has its own status\n- Alert IDs are scoped to the incident\n- Analytics data includes response times, engagement metrics, and resolution times\n\n### 3. Manage Services\n\n**When to use**: User wants to create, update, or list services\n\n**Tool sequence**:\n1. `PAGERDUTY_RETRIEVE_LIST_OF_SERVICES` - List all services [Required]\n2. `PAGERDUTY_RETRIEVE_SERVICE_BY_ID` - Get service details [Optional]\n3. `PAGERDUTY_CREATE_NEW_SERVICE` - Create a new technical service [Optional]\n4. `PAGERDUTY_UPDATE_SERVICE_BY_ID` - Update service configuration [Optional]\n5. `PAGERDUTY_CREATE_INTEGRATION_FOR_SERVICE` - Add an integration to a service [Optional]\n6. `PAGERDUTY_CREATE_BUSINESS_SERVICE` - Create a business service [Optional]\n7. `PAGERDUTY_UPDATE_BUSINESS_SERVICE_BY_ID` - Update a business service [Optional]\n\n**Key parameters**:\n- `name`: Service name\n- `escalation_policy`: Escalation policy object with `id` and `type`\n- `alert_creation`: Alert creation mode ('create_alerts_and_incidents' or 'create_incidents')\n- `status`: Service status ('active', 'warning', 'critical', 'maintenance', 'disabled')\n\n**Pitfalls**:\n- Creating a service requires an existing escalation policy\n- Business services are different from technical services; they represent business-level groupings\n- Service integrations define how alerts are created (email, API, events)\n- Disabling a service stops all incident creation for that service\n\n### 4. Manage Schedules and On-Call\n\n**When to use**: User wants to view or manage on-call schedules and rotations\n\n**Tool sequence**:\n1. `PAGERDUTY_GET_SCHEDULES` - List all schedules [Required]\n2. `PAGERDUTY_RETRIEVE_SCHEDULE_BY_ID` - Get specific schedule details [Optional]\n3. `PAGERDUTY_CREATE_NEW_SCHEDULE_LAYER` - Create a new schedule [Optional]\n4. `PAGERDUTY_UPDATE_SCHEDULE_BY_ID` - Update an existing schedule [Optional]\n5. `PAGERDUTY_RETRIEVE_ONCALL_LIST` - View who is currently on-call [Optional]\n6. `PAGERDUTY_CREATE_SCHEDULE_OVERRIDES_CONFIGURATION` - Create temporary overrides [Optional]\n7. `PAGERDUTY_DELETE_SCHEDULE_OVERRIDE_BY_ID` - Remove an override [Optional]\n8. `PAGERDUTY_RETRIEVE_USERS_BY_SCHEDULE_ID` - List users in a schedule [Optional]\n9. `PAGERDUTY_PREVIEW_SCHEDULE_OBJECT` - Preview schedule changes before saving [Optional]\n\n**Key parameters**:\n- `schedule_id`: Schedule identifier\n- `time_zone`: Schedule timezone (e.g., 'America\u002FNew_York')\n- `schedule_layers`: Array of rotation layer configurations\n- `since`\u002F`until`: Date range for on-call queries (ISO 8601)\n- `override`: Override object with user, start, and end times\n\n**Pitfalls**:\n- Schedule layers define rotation order; multiple layers can overlap\n- Overrides are temporary and take precedence over the normal schedule\n- `since` and `until` are required for on-call queries to scope the time range\n- Time zones must be valid IANA timezone strings\n- Preview before saving complex schedule changes to verify correctness\n\n### 5. Manage Escalation Policies\n\n**When to use**: User wants to create or modify escalation policies\n\n**Tool sequence**:\n1. `PAGERDUTY_FETCH_ESCALATION_POLICES_LIST` - List all escalation policies [Required]\n2. `PAGERDUTY_GET_ESCALATION_POLICY_BY_ID` - Get policy details [Optional]\n3. `PAGERDUTY_CREATE_ESCALATION_POLICY` - Create a new policy [Optional]\n4. `PAGERDUTY_UPDATE_ESCALATION_POLICY_BY_ID` - Update an existing policy [Optional]\n5. `PAGERDUTY_AUDIT_ESCALATION_POLICY_RECORDS` - View audit trail for a policy [Optional]\n\n**Key parameters**:\n- `name`: Policy name\n- `escalation_rules`: Array of escalation rule objects\n- `num_loops`: Number of times to loop through rules before stopping (0 = no loop)\n- `escalation_delay_in_minutes`: Delay between escalation levels\n\n**Pitfalls**:\n- Each escalation rule requires at least one target (user, schedule, or team)\n- `escalation_delay_in_minutes` defines how long before escalating to the next level\n- Setting `num_loops` to 0 means the policy runs once and stops\n- Deleting a policy fails if services still reference it\n\n### 6. Manage Teams\n\n**When to use**: User wants to create or manage PagerDuty teams\n\n**Tool sequence**:\n1. `PAGERDUTY_CREATE_NEW_TEAM_WITH_DETAILS` - Create a new team [Required]\n\n**Key parameters**:\n- `name`: Team name\n- `description`: Team description\n\n**Pitfalls**:\n- Team names must be unique within the account\n- Teams are used to scope services, escalation policies, and schedules\n\n## Common Patterns\n\n### ID Resolution\n\n**Service name -> Service ID**:\n```\n1. Call PAGERDUTY_RETRIEVE_LIST_OF_SERVICES\n2. Find service by name in response\n3. Extract id field\n```\n\n**Schedule name -> Schedule ID**:\n```\n1. Call PAGERDUTY_GET_SCHEDULES\n2. Find schedule by name in response\n3. Extract id field\n```\n\n### Incident Lifecycle\n\n```\n1. Incident triggered (via API, integration, or manual creation)\n2. On-call user notified per escalation policy\n3. User acknowledges -> status: 'acknowledged'\n4. User resolves -> status: 'resolved'\n```\n\n### Pagination\n\n- PagerDuty uses offset-based pagination\n- Check response for `more` boolean field\n- Use `offset` and `limit` parameters\n- Continue until `more` is false\n\n## Known Pitfalls\n\n**ID Formats**:\n- All PagerDuty IDs are alphanumeric strings (e.g., 'P1234AB')\n- Service references require `type: 'service_reference'`\n- User references require `type: 'user_reference'`\n\n**Status Transitions**:\n- Incidents: triggered -> acknowledged -> resolved (forward only)\n- Services: active, warning, critical, maintenance, disabled\n\n**Rate Limits**:\n- PagerDuty API enforces rate limits per account\n- Implement exponential backoff on 429 responses\n- Bulk operations should be spaced out\n\n**Response Parsing**:\n- Response data may be nested under `data` or `data.data`\n- Parse defensively with fallback patterns\n- Pagination uses `offset`\u002F`limit`\u002F`more` pattern\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| List incidents | PAGERDUTY_FETCH_INCIDENT_LIST | statuses[], service_ids[] |\n| Get incident | PAGERDUTY_RETRIEVE_INCIDENT_BY_INCIDENT_ID | incident_id |\n| Create incident | PAGERDUTY_CREATE_INCIDENT_RECORD | title, service |\n| Update incident | PAGERDUTY_UPDATE_INCIDENT_BY_ID | incident_id, status |\n| Add incident note | PAGERDUTY_POST_INCIDENT_NOTE_USING_ID | incident_id, content |\n| Snooze incident | PAGERDUTY_SNOOZE_INCIDENT_BY_DURATION | incident_id, duration |\n| Get incident alerts | PAGERDUTY_GET_ALERTS_BY_INCIDENT_ID | incident_id |\n| Incident analytics | PAGERDUTY_FETCH_INCIDENT_ANALYTICS_BY_ID | incident_id |\n| List services | PAGERDUTY_RETRIEVE_LIST_OF_SERVICES | (none) |\n| Get service | PAGERDUTY_RETRIEVE_SERVICE_BY_ID | service_id |\n| Create service | PAGERDUTY_CREATE_NEW_SERVICE | name, escalation_policy |\n| Update service | PAGERDUTY_UPDATE_SERVICE_BY_ID | service_id |\n| List schedules | PAGERDUTY_GET_SCHEDULES | (none) |\n| Get schedule | PAGERDUTY_RETRIEVE_SCHEDULE_BY_ID | schedule_id |\n| Get on-call | PAGERDUTY_RETRIEVE_ONCALL_LIST | since, until |\n| Create schedule override | PAGERDUTY_CREATE_SCHEDULE_OVERRIDES_CONFIGURATION | schedule_id |\n| List escalation policies | PAGERDUTY_FETCH_ESCALATION_POLICES_LIST | (none) |\n| Create escalation policy | PAGERDUTY_CREATE_ESCALATION_POLICY | name, escalation_rules |\n| Create team | PAGERDUTY_CREATE_NEW_TEAM_WITH_DETAILS | name, description |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.\n","","imported","https:\u002F\u002Fgithub.com\u002Fsickn33\u002Fantigravity-awesome-skills","user_system_seed","SkillOPIC",true,208,1677,"2026-05-16 13:33:16",{"id":8,"name":21,"slug":22,"icon":23,"description":24,"sort":25,"createdAt":26},"效率工具","productivity","mdi-lightning-bolt-outline","文档处理、数据分析、自动化工作流",4,"2026-05-16 12:53:40",{"id":7,"name":28,"slug":29,"icon":30,"description":31,"moduleId":8,"sort":32,"skillCount":33,"createdAt":26},"自动化","automation","mdi-robot-outline","工作流自动化、批处理",3,101,[35],{"id":36,"skillId":4,"version":37,"fileName":38,"fileSize":39,"filePath":40,"fileHash":41,"manifest":42,"createdAt":19},"196a4e00-4aff-46de-8952-d2ef9a102f46","1.0.0","pagerduty-automation.zip",3836,"uploads\u002Fskills\u002Fbf6fe012-5454-4d94-b4d0-3e98c26f38ad\u002Fpagerduty-automation.zip","d8722cf1eff47fe00bbac0a6bce5fb8b818f752912d3867e60663371d8559652","[{\"path\":\"SKILL.md\",\"isDirectory\":false,\"size\":10875}]",{"code":44,"message":45,"data":46},200,"success",{"items":47,"stats":48,"page":51},[],{"averageRating":49,"totalRatings":49,"ratingCounts":50},0,[49,49,49,49,49],{"limit":52,"offset":49,"hasMore":53,"nextOffset":52,"ratedOnly":16},15,false]