Blog
Hit the Free MCP send or mailbox limit? Here’s the upgrade path
You’re on Free. The agent is working. Then MCP returns a limit error — daily send cap, or “you already have your one mailbox.” That’s expected. Free is sized for a personal agent with guardrails; when you outgrow it, the path is in-product Upgrade, not a support ticket.
Assistant Mail = allowlist + recipient consent — SSH-keys-for-email. Caps exist so a runaway tool call doesn’t become open-season outbound.
Not an official OpenClaw or Hermes endorsement. Not for AISDR / cold outbound.
What assistantmail_get_usage shows
Call assistantmail_get_usage (mailbox-scoped) when you want a clear picture before the next send fails.
Typical Free-shaped response (fields may vary slightly by MCP version):
| Field | Free meaning |
|---|---|
plan / tier |
free |
mailboxes.used / mailboxes.limit |
1 / 1 |
sends.day (or day) |
used vs 25/day |
sends.month (or month) |
limit: null on Free (daily cap applies) |
upgradeUrl |
In-app Upgrade deep link (Starter), tracked with utm_campaign=mcp_limit |
hint |
Soft copy pointing at Starter capacity + consent |
Upgrade to Starter → Create Free account →
MCP itself may already return an upgradeUrl like:
https://app.assistant-mail.ai/upgrade?plan=starter&utm_source=mcp&utm_medium=error&utm_campaign=mcp_limit
Same destination; different UTM (blog click vs MCP error click). Prefer the URL the tool returned mid-incident.
Limit errors that point to Upgrade (429 / 403)
When create-mailbox or send hits a Free ceiling, MCP surfaces a structured error — often 403 (mailbox) or 429 (send/rate) — with an Upgrade hint and URL.
Mailbox limit (example shape)
{
"error": "mailbox_limit",
"message": "You’ve hit the Free mailbox limit (1).",
"code": "mailbox_limit",
"hint": "Upgrade to Starter for 1,000 emails/mo and consent invites.",
"upgradeUrl": "https://app.assistant-mail.ai/upgrade?plan=starter&utm_source=mcp&utm_medium=error&utm_campaign=mcp_limit"
}
Send / daily usage cap
Same pattern: message names the Free 25/day (or remaining) limit, hint points at Starter, and upgradeUrl carries utm_campaign=mcp_limit. Treat 429/403 with upgradeUrl as the product’s intended next step.
Operator checklist:
- Call
assistantmail_get_usage— confirm day used/limit and mailbox used/limit. - If the error body includes
upgradeUrl, open it (MCP-tracked). - Or use the Upgrade CTA from this post.
- Still evaluating? Stay on Free — Free CTA.
Concrete limits
| Free | Starter — $9.99/mo | |
|---|---|---|
| Mailboxes | 1 | 3 |
| Send volume | 25 / day | 1,000 / mo |
| Recipients | Allowlist before send | Consent invites |
| Upgrade | — | In-app Upgrade → Checkout |
Stay on Free while one personal agent + allowlist is enough. Upgrade when you need a second/third mailbox, monthly headroom past 25/day, or consent invites.
Install / reconnect
- ClawHub / OpenClaw skill:
openclaw skills install @assistantmail/assistant-mail - MCP server:
npx @assistantmail/assistantmail-mcp - Docs: assistant-mail.ai/docs
-
Set
ASSISTANT_MAIL_API_KEY, list mailboxes for UUIDmailboxId, thenassistantmail_get_usage/assistantmail_send_email.
Upgrade or stay on Free
Primary (cap hit):
Secondary (try Free):
Related
- Your OpenClaw agent needs email — without an open inbox
- Switching from AgentMail: allowlist email for OpenClaw & Hermes
- Quickstart docs
Assistant Mail — allowlist agent email for OpenClaw & Hermes operators. Free caps are intentional; when MCP points you at Upgrade, Starter ($9.99) is the next step. Not cold outbound.
Not an official OpenClaw or Hermes endorsement. Not for AISDR / cold outbound.