Key Takeaways
- Securing SMS MCP tools is a walkthrough: least privilege, env Bearer, allowlists — not a first-party Cursor/Claude plugin with magic auth.
- Do not expose campaign-blast or arbitrary to[] on a developer laptop.
- Confirm the REST contract in Developer Center. The wrapper only forwards what you designed.
- Rotate keys. Log tool invocations without SMS bodies. HMAC webhooks stay on your backend.
- You bring the phone and operator credit. Platform pricing is devices plus send volume.
Narrow tools, staging keys
Concepts: MCP for SMS. Auth: MCP auth and API keys. Spec: MCP. Live JSON: Developer Center.
Adjacent: logging and audit. We meter devices and volume.
What not to expose
Skip send_campaign, open to[], USSD, and webhook-secret rotation on Desktop/Cursor. Keep those on a backend that is not a chat host.
“A send tool with no allowlist is a prepaid SIM with a conversational UI. That is not a security review finding you want.”
Hardening checklist
| Control | Miss | Do |
|---|---|---|
| Env Bearer | Key in mcp.json / chat | Process env only |
| Allowlist | Any E.164 | Staff/QA prefixes |
| Rate cap | Agent loop | N/min in the wrapper |
| Idempotency-Key | Duplicate radio | Stable per intent |
| Named deviceId | Promo SIM | Pairing |
Allowlist destinations
Tool design: send_sms tool design. OTP: OTP.
Laptop trust boundary
Cursor: Cursor setup. Claude Desktop: Claude Desktop. Pricing.
Next steps
Ship list-devices first. Then allowlisted send. Rotate if a key ever hit a transcript. Operator credit stays yours.
Related product pages
Jump to the live product docs for this topic—not another long-form article.
- SMS API documentationLive endpoint reference
- device and SMS volume pricingPlans and allowances
- device setup guidePair and go live
- download the Android gateway appGet the APK





