find-contact
Resolve a 3CX contact or extension by email, extension, or name
Retention and RPO compliance audit against contracted requirements, for one client or the whole portfolio
$ npx -y skills add wyre-technology/msp-claude-plugins --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
/retention-auditContext preview
What this command does when you run it.
Retention and RPO compliance audit against contracted requirements, for one client or the whole portfolio
description: Retention and RPO compliance audit against contracted requirements, for one client or the whole portfolio argument-hint: "[client]" arguments: [client]
Compares actual backup retention configuration and achievable RPO against contracted or documented requirements, for one client or the whole portfolio. Surfaces gaps where configured retention falls short of what was promised, where storage capacity is silently forcing retention shorter than configured, and where current backup cadence/reliability can't actually meet a contracted recovery point objective. Omit `client` to run across the whole portfolio.
Unitrends) for the target client(s)
helpful but not required — without one, this run reports configured values as informational and flags the missing documentation as its own finding
1. **Discover available tools.** Call `conduit__search_tools` to confirm which backup/BCDR connectors — and, optionally, documentation/PSA connectors — are available. 2. **Scope the run.** If `client` is given, resolve it to its protected units and any documented retention/RPO requirement. If omitted, enumerate all clients with at least one connected backup/BCDR tool and run the audit for each. 3. **Invoke the `retention-compliance-auditor` agent** for the resolved scope. The agent pulls actual configured retention and backup cadence, locates the contracted/required values where documented, and computes both the retention gap (with configuration-gap vs. storage-forced-truncation classified separately) and the achievable-RPO-vs-target comparison. 4. **Present the report**, largest retention shortfalls and most severe RPO misses first, followed by the full compliance tables and missing-documentation findings. 5. **If portfolio-wide**, close with a rollup ranking clients by gap severity.
| Argument | Required | Default | Description | |---|---|---|---| | `client` | No | — (portfolio-wide) | The client/organization name to audit retention/RPO compliance for. Omit to run across every client with a connected backup/BCDR tool. |
/backup-pack:retention-audit "Acme Corp"
/backup-pack:retention-audit
================================================================================
Retention & RPO Compliance Report — Acme Corp
================================================================================
Retention gaps found: 1
RPO gaps found: 1
--------------------------------------------------------------------------------
Critical Findings
--------------------------------------------------------------------------------
[!] SQL01 (Datto BCDR) — contract requires 365-day retention; appliance is
configured for 90 days. Shortfall: 275 days. Classification: configuration gap
(not storage-forced — appliance has ample local headroom).
[!] M365 tenant (Spanning) — contract requires 4-hour RPO; current backup schedule
is nightly-only. Achievable RPO: ~24 hours (worse on nights with a failed run).
--------------------------------------------------------------------------------
Retention Compliance
--------------------------------------------------------------------------------
Unit Vendor Contracted Configured Gap Type
SQL01 Datto BCDR 365 days 90 days 275 days Configuration gap
FILE01 Datto BCDR 365 days 365 days None —
--------------------------------------------------------------------------------
RPO Compliance
--------------------------------------------------------------------------------
Unit Contracted Schedule Achievable RPO Meets Target
M365 tenant 4 hours Nightly ~24 hours No
================================================================================No Datto BCDR, Datto SaaS Protection, Spanning, or Unitrends connector found via conduit__search_tools. Retention/RPO compliance checking requires at least one backup/BCDR connector. Connect one through Conduit, then re-run.
No contracted retention or RPO value found for Acme Corp in any connected documentation or PSA contract record. Reporting actual configured values as informational. This is flagged as its own finding — "no documented requirement on file" — rather than treated as automatic compliance.
Client "Acme Corp" not found among connected backup/BCDR tenants or appliances. Verify the name against the connected tool's own client/tenant listing.
storage-trending signal that feeds storage-forced-truncation detection here
window that's never been restore-tested is still a compliance gap even when correctly configured)
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
Resolve a 3CX contact or extension by email, extension, or name
Search for specific threat patterns in Abnormal Security by sender, recipient, attack type, or keywords
Triage recent email threats detected by Abnormal Security by severity and attack type