api-patterns
3CX's native PBX MCP server: the per-PBX endpoint shape (every PBX is its own FQDN and its own OAuth authorization server — there is no shared mcp.3cx.com),…
Rootly's incident-response automation model: the trigger / condition / action structure, the full catalog of trigger, action, and condition types, workflow CRUD and enable/disable, and the failure modes behind stale, over-firing, or circularly chained workflows.
$ npx -y skills add wyre-technology/msp-claude-plugins --skill workflows --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/workflowsContext preview
The summary Claude sees to decide when to auto-load this skill.
Rootly's incident-response automation model: the trigger / condition / action structure, the full catalog of trigger, action, and condition types, workflow CRUD and enable/disable, and the failure modes behind stale, over-firing, or circularly chained workflows.
name: "Rootly Workflows" description: > Rootly's incident-response automation model: the trigger / condition / action structure, the full catalog of trigger, action, and condition types, workflow CRUD and enable/disable, and the failure modes behind stale, over-firing, or circularly chained workflows. when_to_use: >- When building, enabling, or auditing automated incident-response workflows. Use when: rootly workflow, automated workflow, workflow trigger, workflow action, incident automation, response automation, workflow condition, or runbook automation.
Rootly workflows automate repetitive incident response tasks. Each workflow consists of a trigger (what starts it), conditions (when it should run), and actions (what it does). Workflows can create Slack channels, page on-call, update status pages, create Jira tickets, send notifications, and more -- all automatically when incidents match specific criteria.
"Workflow" means automation *inside Rootly, fired by incident events*. Several neighbouring things share the word.
commands under `commands/*.md` are plugin authoring concerns, not Rootly resources. Nothing in this skill configures Claude.
notification rules inside a PSA are `connectwise-psa-tickets`, `halopsa-tickets`, or `autotask-tickets`.
workflows are a separate product surface; use `pagerduty-incidents` and `pagerduty-alerts`.
`datto-rmm-jobs`, not a Rootly action.
read from the incident; use `rootly-incidents`.
| Trigger | Description | |---------|-------------| | `incident_created` | Fires when a new incident is declared | | `incident_updated` | Fires when incident fields change | | `severity_changed` | Fires when severity is escalated or de-escalated | | `status_changed` | Fires when status transitions (started -> mitigated -> resolved) | | `role_assigned` | Fires when a role is assigned | | `postmortem_created` | Fires when a postmortem is created | | `action_item_created` | Fires when an action item is added | | `alert_received` | Fires when an alert is received from monitoring |
| Action | Description | |--------|-------------| | `create_slack_channel` | Create a dedicated incident Slack channel | | `invite_to_slack_channel` | Add responders to the incident channel | | `send_slack_message` | Post a message to a channel | | `page_on_call` | Page the on-call responder via PagerDuty/Opsgenie | | `create_jira_ticket` | Create a tracking ticket in Jira | | `update_status_page` | Post to Statuspage or similar | | `send_email` | Send email notification | | `create_zoom_meeting` | Start a video bridge for the incident | | `run_webhook` | Call a custom webhook | | `assign_role` | Auto-assign an incident role | | `update_incident` | Modify incident fields |
| Condition | Description | |-----------|-------------| | `severity_is` | Match specific severity level | | `severity_gte` | Severity is at or above threshold | | `service_is` | Match specific service | | `environment_is` | Match specific environment | | `team_is` | Match specific team | | `label_contains` | Match incident labels |
rootly_list_workflows
Parameters:
**Example response:**
{
"data": [
{
"id": "wf-001",
"type": "workflows",
"attributes": {
"name": "SEV0 Auto-Response",
"description": "Create war room and page on-call for critical incidents",
"enabled": true,
"trigger": "incident_created",
"conditions": [
{ "field": "severity", "operator": "eq", "value": "sev0" }
],
"actions": [
{ "type": "create_slack_channel" },
{ "type": "page_on_call", "target": "platform-team" },
{ "type": "create_zoom_meeting" }
],
"last_triggered_at": "2026-03-25T08:00:00Z",
"trigger_count": 12
}
}
]
}rootly_get_workflow
Parameters:
rootly_create_workflow
Parameters:
rootly_update_workflow
Parameters:
rootly_enable_workflow rootly_disable_workflow
Parameters:
1. Call `rootly_list_workflows` to get all workflows 2. Map workflows to trigger types and services 3. Identify critical services without automated response 4. Check for disabled workflows that should be active 5. Verify action targets (Slack channels, on-call schedules) are current
1. Create workflow with trigger `incident_created` 2. Add condition: severity equals SEV0 3. Add actions: create Slack channel, page
One command to supercharge Claude Code for MSP workflows. Then restart Claude Code. That's it. Documentation: mcp.wyre.ai
Repo: wyre-technology/msp-claude-plugins
3CX's native PBX MCP server: the per-PBX endpoint shape (every PBX is its own FQDN and its own OAuth authorization server — there is no shared mcp.3cx.com),…
3CX's live-operations surface: read-only visibility into active calls, recordings, voicemail, department and queue membership, and forwarding/presence…
3CX's read-only directory surface: resolving a caller by email or by exact extension, searching the PBX's own phonebooks, searching contacts synced from an…
3CX's system-and-configuration surface: server time, PBX event log and application log search, service status, database schema and the read-only SELECT-only…
Abnormal Security abuse mailbox cases: user-reported email submissions, case statuses and judgments, the case lifecycle, bulk and remediation actions, and…
Abnormal Security message analysis: message retrieval, email header inspection, attachments, sender reputation, delivery context, and SPF/DKIM/DMARC…