find-contact
Resolve a 3CX contact or extension by email, extension, or name
Search ConnectWise CPQ quotes by account, status, or date range
$ 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.
/search-quotesContext preview
What this command does when you run it.
Search ConnectWise CPQ quotes by account, status, or date range
description: Search ConnectWise CPQ quotes by account, status, or date range argument-hint: "[account] [since] [status] [include_archived]" arguments: [account, since, status, include_archived]
1. **Build the `conditions` string** from the arguments, minding CPQ's literal formats — strings double-quoted, booleans `True`/`False`, dates bracketed and date-only:
Join with ` AND `. With no arguments at all, `cpq_search_quotes` asks for a created-since date and otherwise defaults to the last 90 days.
2. **Search** with `cpq_search_quotes`, passing `conditions` and a tight field list: `includeFields=id,name,quoteNumber,quoteVersion,quoteStatus,accountName,quoteTotal,createDate,expirationDate` and `pageSize=100`.
3. **Page** by incrementing `page` until a page returns fewer than `pageSize` rows — the response carries no total count.
4. **Display** quote number/version, name, account, status, total, and created date. Sort by created date descending.
/search-quotes account="Acme Corp" since=2026-01-01
/search-quotes since=2026-07-01 status="Open"
`cpq_search_quotes` directly when you need superseded versions.
a quote number alone will not do.
| Error | Resolution | |-------|------------| | Empty results | Check `conditions` formatting — unquoted string, lowercase `true`, or a date carrying a time component all match nothing | | 401 | Verify the access key, the key pair, and that the key owner is flagged as an API user | | 500 | Often a missing credential rather than a CPQ fault — confirm all three parts reached the server |
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