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),…
Mimecast email delivery queues: inbound and outbound queue types, queue message states, retry behavior, and the signals that identify stuck messages, delivery delays, and backlog conditions.
$ npx -y skills add wyre-technology/msp-claude-plugins --skill queue-management --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/queue-managementContext preview
The summary Claude sees to decide when to auto-load this skill.
Mimecast email delivery queues: inbound and outbound queue types, queue message states, retry behavior, and the signals that identify stuck messages, delivery delays, and backlog conditions.
name: "Mimecast Queue Management" description: > Mimecast email delivery queues: inbound and outbound queue types, queue message states, retry behavior, and the signals that identify stuck messages, delivery delays, and backlog conditions. when_to_use: >- When checking Mimecast delivery queue health or diagnosing delayed or stuck mail. Use when: mimecast queue, email queue, delivery queue, mimecast backlog, mimecast delivery delay, stuck email, mimecast outbound queue, or mimecast inbound queue.
The Mimecast delivery queue holds messages that are in transit — inbound messages being scanned and processed, outbound messages awaiting delivery to recipient servers. Queue monitoring is essential for detecting delivery backlogs, identifying stuck messages due to recipient server issues, and understanding the state of mail flow during incidents (e.g. a downstream mail server outage). A healthy queue processes messages within seconds; messages sitting in the queue for minutes or longer indicate a potential problem.
contents and cannot change a message's disposition; use `Mimecast Message Tracking`.
state only. Anything already delivered, bounced, or rejected has left it; search with `Mimecast Message Tracking`.
security verdict. For the threat reasoning use `Mimecast Threat Intelligence`.
| Queue | Description | |-------|-------------| | **Inbound** | Messages received from external senders, being scanned before delivery to internal mailboxes | | **Outbound** | Messages from internal users being delivered to external recipients | | **Hold Queue** | Messages explicitly held by policy or administrator action (see message-tracking skill) |
| State | Meaning | |-------|---------| | `queued` | Waiting to be processed | | `retrying` | Delivery failed, scheduled for retry | | `deferred` | Recipient server temporarily unavailable; Mimecast will retry | | `held` | Manually held or policy-blocked |
When Mimecast cannot deliver a message (e.g. the recipient mail server is down), it enters the message into a retry schedule:
mimecast_get_queue_status
**This tool takes no arguments.** Its input schema is empty — there is no `direction` filter, no `status` filter, and no paging. Every call returns the same whole-gateway snapshot, and any narrowing happens in your own code after the fact.
**Example response:**
{
"inbound": {
"count": 12,
"oldest": "2026-03-02T09:00:00Z",
"details": [
{
"id": "eNqrVkpJLU...",
"created": "2026-03-02T09:00:00Z",
"status": "queued",
"from": "vendor@external.com",
"to": ["user@client.com"],
"subject": "Purchase Order #4892",
"reason": ""
}
]
},
"outbound": {
"count": 3,
"oldest": "2026-03-02T08:30:00Z",
"details": [
{
"id": "eNqrVkpABC...",
"created": "2026-03-02T08:30:00Z",
"status": "deferred",
"from": "user@client.com",
"to": ["recipient@destination.com"],
"subject": "Report Q1 2026",
"reason": "550 5.1.1 The email account does not exist"
}
]
}
}Key fields:
may be absent; treat a missing key as "no data returned", not as zero.
age yourself as `now − oldest` before comparing against a threshold.
array itself may be absent even when `count` is non-zero.** An agent that iterates `details` without checking `count` will report a clean queue on a backlogged gateway.
SMTP response, but it is not guaranteed to, and it is not a parsed error code.
The queue snapshot has no per-message retry accounting: there is no `retryCount` and no `nextRetry`. You cannot tell how many delivery attempts a message has had or when the next one is due, so any rule of the form "escalate after N retries" is not implementable against this tool. Use age (`created`) and `reason` instead.
To work with a *subset* of messages — deferred only, held only, one sender, one recipient — use `mimecast_find_message`, which does take filters, including `status` with `queued`, `deferred`, `held`, `bounced`, `failed`, `delivered`, `accepted`, `blocked`, and `processing`. The queue tool is a gauge; message tracking is the query interface.
1. Call `mimecast_get_queue_status` — it takes no arguments and returns both directions at once 2. For each of `inbound` and `outbound`, derive the age of the backlog from `oldest` (`now − oldest`), then compare:
3. Read `count` per direction. A rising outbound `count` with an ageing `oldest` is the backlog signal 4. Scan `details[].status` for `deferred` entries and read their `reason`. If `count` is non-zero but `details` is empty or missing, say so — do not report the queue as clean
1. Call `mimecast_find_message` with `status: "deferred"` — the queue tool cannot filter, and message tracking is the
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…