From shared-skills
Correlates PSA tickets, RMM device states, documentation assets, and config monitoring changes across MSP vendors like ConnectWise, Kaseya into unified incident summaries for investigations.
npx claudepluginhub wyre-technology/msp-claude-plugins --plugin shared-skillsThis skill uses the workspace's default tool permissions.
MSP technicians routinely context-switch between PSA (tickets), RMM (device state), documentation (asset records), and configuration monitoring (change detection) when investigating incidents. This skill teaches Claude how to automatically correlate data across these vendor roles, starting from a ticket and producing a unified incident summary.
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.
MSP technicians routinely context-switch between PSA (tickets), RMM (device state), documentation (asset records), and configuration monitoring (change detection) when investigating incidents. This skill teaches Claude how to automatically correlate data across these vendor roles, starting from a ticket and producing a unified incident summary.
Each vendor tool fills one or more roles in incident investigation:
| Role | Purpose | Examples |
|---|---|---|
| PSA (ticket source) | Ticket details, company, contact, contract | Autotask, ConnectWise Manage, HaloPSA, Syncro, Atera, SuperOps |
| RMM (device state) | Device status, alerts, last seen, last reboot | Datto RMM, ConnectWise Automate, NinjaOne, Atera, Syncro |
| Documentation (asset docs) | Asset records, related docs, passwords | IT Glue, Hudu, ConnectWise Manage configs |
| Config Monitoring (change detection) | Recent changes, compliance, anomalies | Liongard |
A single vendor may fill multiple roles (e.g., Syncro is both PSA and RMM, Atera is both PSA and RMM).
The correlation workflow produces this canonical data structure:
Incident Summary
├── TICKET
│ ├── ID, title, description
│ ├── priority (normalized), status (normalized)
│ ├── created date, last updated
│ └── queue, assigned resource
├── COMPANY
│ ├── name (cross-vendor correlation key)
│ ├── company ID (per vendor)
│ └── contract status (if available)
├── CONTACT
│ ├── name, email, phone
│ └── role / VIP flag
├── DEVICE (if identified)
│ ├── hostname, IP, serial, type
│ ├── RMM status (online/offline), last seen, last reboot
│ ├── open alerts (count + top 3)
│ └── documentation link
├── DOCUMENTATION (if available)
│ ├── asset record summary
│ ├── related documents (titles)
│ └── related passwords (names only, never values)
├── CONFIG CHANGES (if available)
│ ├── recent detections (last 7 days)
│ ├── compliance status
│ └── notable changes near ticket creation time
└── CORRELATION INSIGHTS
├── temporal correlations
├── alert-ticket alignment
└── suggested next steps
Fetch the ticket using the ticket ID or number provided by the user.
Extract these fields:
ticketID / ticket numbertitle and descriptioncompanyID (this becomes the cross-vendor key)contactIDpriority (normalize using VENDOR-MAPPINGS.md)status (normalize using VENDOR-MAPPINGS.md)createdDate (needed for temporal correlation in Step 6)queue and assignedResourceIf ticket not found: Stop and inform the user. Suggest checking the ticket number format.
The company name is the cross-vendor correlation key. Different tools use different company identifiers, but the name is the universal link.
companyID, fetch the company name from the PSAcontactID, fetch contact details (name, email, phone)Company Name Matching Strategy:
When searching other platforms by company name:
Identifying the affected device is critical but not always straightforward. Try these methods in order:
If no device is relevant (e.g., account/password requests, policy questions): Skip Steps 4-5 device sections and note "No device associated" in the summary.
Using the hostname or device identifier from Step 3, query the RMM platform:
Fetch:
online / offlineKey insight: If the device is offline and the ticket is about connectivity, this is immediately valuable context. If the device has open alerts that match the ticket description, flag this correlation.
If RMM not available: Mark the DEVICE section as "RMM data unavailable" and continue.
Using the company name and hostname, query the documentation platform:
Fetch:
If documentation platform not available: Mark the DOCUMENTATION section as "Documentation data unavailable" and continue.
Using the company name (mapped to environment), query for recent changes:
Fetch:
If config monitoring not available: Mark the CONFIG CHANGES section as "Config monitoring data unavailable" and continue.
After gathering data from all sources, generate insights:
Compare the ticket createdDate with:
Compare the ticket title/description keywords with:
If keywords overlap (e.g., ticket says "email not working" and a detection says "Exchange mailbox policy changed"), highlight this connection.
If you have access to ticket history:
Present the correlated data in this structured format:
═══════════════════════════════════════════════════
INCIDENT CORRELATION SUMMARY
═══════════════════════════════════════════════════
TICKET
ID: T20240215.0042
Title: Email not working for multiple users
Priority: High (normalized)
Status: In Progress
Created: 2024-02-15 09:23 UTC
Queue: Service Desk
Assigned: Jane Technician
COMPANY
Name: Acme Corporation
Autotask ID: 12345
Contract: Managed Services (Active)
CONTACT
Name: John Smith
Email: john.smith@acme.com
Phone: 555-0100
DEVICE
Hostname: ACME-EXCH01
Type: Server
RMM Status: Online (last seen 2 min ago)
Last Reboot: 2024-02-14 22:00 UTC (11 hours ago)
IP: 192.168.1.50
Open Alerts: 2
- HIGH: Exchange transport service stopped (09:15 UTC)
- MEDIUM: Disk usage 87% on C: drive (08:00 UTC)
DOCUMENTATION
Asset Record: ACME-EXCH01 (Server - Exchange 2019)
Related Docs: "Acme Email Configuration", "Exchange Maintenance Runbook"
Passwords: "Acme Exchange Admin", "Acme Domain Admin"
Warranty: Expires 2025-06-15
CONFIG CHANGES (last 7 days)
2 detections found:
- HIGH: Exchange transport rules modified (2024-02-14 23:30 UTC)
- MEDIUM: Windows Update KB5034763 installed (2024-02-13 02:00 UTC)
CORRELATION INSIGHTS
! Transport rule change detected 10 hours before ticket creation
— Likely root cause: modified transport rules may be blocking email flow
! Exchange transport service alert matches ticket description
— RMM confirms the service is stopped
- Device rebooted last night; verify if reboot triggered the service issue
SUGGESTED NEXT STEPS
1. Check Exchange transport rules for recent modifications
2. Restart the Exchange transport service
3. Verify mail flow after service restart
4. Review the transport rule change in Liongard for details
═══════════════════════════════════════════════════
Each vendor role is optional. The workflow should always produce a summary, even if some data sources are unavailable:
| Missing Source | Impact | Handling |
|---|---|---|
| RMM unavailable | No device status or alerts | Note "RMM data unavailable" in DEVICE section |
| Documentation unavailable | No asset record or docs | Note "Documentation data unavailable" |
| Config monitoring unavailable | No change detection | Note "Config monitoring data unavailable" |
| Device not identified | No device-specific data | Skip device sections, note "No device associated" |
| Contact not found | No contact details | Note "Contact not found" in CONTACT section |
The TICKET and COMPANY sections should always be populated since the workflow starts from a ticket.
Query only PSA + RMM (Steps 1-4). Produces a faster summary focused on ticket context and device state. Useful for initial triage.
Query all four vendor roles (Steps 1-6). Produces the complete correlated summary with documentation and config monitoring insights.