Head to head · SMS · October 2026 research run
Bandwidth Messaging API + MCP vs Prelude
Bandwidth Messaging API + MCP scores 70.6 (BB) on agent readiness against Prelude's 67.6 (B), and leads in 4 of 7 scored categories. Prelude leads on schema & documentation, agent ergonomics and maintenance & community. Both do sms.
Best SMS, WhatsApp and messaging APIs for AI agents · All 190 messaging comparisons
Which one, for what
Bandwidth Messaging API + MCP BB
Best for US and Canada senders at volume who want carrier-owned routes and will talk to sales, and developers who want to test sends on a no-card trial first.
Ahead on
- Reliability, 75 against 65
- Payments & pricing, 40 against 30
- Transparency & trust, 75 against 42
Also in its favour
- Agent-ready, a grade of BB or better
- Runs on your own machine
Watch for
Production messaging accounts are onboarded by sales, and the Build trial can only text the verified number
Prelude B
Best for Agents or apps that verify a phone number or email with a code and want fraud blocking, and for transactional messages in Europe.
Ahead on
- Schema & documentation, 93 against 86
- Agent ergonomics, 85 against 73
- Maintenance & community, 83 against 78
Watch for
The terms, privacy policy and legal notice are Notion pages drawn by script, unreadable by our reader
Why the edge
Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.
Transparency & trust Bandwidth Messaging API + MCP +33
Bandwidth Messaging API + MCP 75
Closed service with clear terms (communications services agreement). The MCP server repository still has no licence file (15). Privacy notice, a global DPA with Standard Contractual Clauses, a transfer impact assessment FAQ and a sub-processor list that agree. No retention periods found (20 of 30). The legacy credential migration is documented, with no dated deprecation policy found (5 of 20). The sub-processor list (last updated 31 March 2026) names each provider with the product it supports and the location of processing, such as AWS for hosting in the USA and EU (20). 15 + 20 + 5 + 20 = 60.
Prelude 42
Closed service whose general terms are a Notion page drawn by script, which we couldn't read; the SDKs are Apache-2.0 (8 of 30). The privacy policy is also unreadable for the same reason, and the trust centre names no retention periods or data locations (3 of 30). v1 and v2 are documented side by side and the changelog dates changes by month, with no deprecation policy found (6 of 20). No sub-processor list or data locations found (0 of 20). 8 + 3 + 6 + 0 = 17.
Agent ergonomics Prelude +12
Bandwidth Messaging API + MCP 73
listMessages needs at least one filter and pages its results, with no field selection (15 of 25). Filters on to, from, message ID and date range (20). Structured errors, and the MCP maps failures to codes such as rate_limited and auth with retry advice (18 of 20). No idempotency key on sends. Excess messages queue rather than fail (5 of 20). Official SDKs in six languages. A send needs to, from, applicationId and text after an OAuth token exchange (15).
Prelude 85
List calls take limit from 1 to 200 with cursor or offset; the MCP server's tool list isn't on the docs page, so its size is unchecked (18 of 25). Cursor and offset pagination with filters (18 of 20). Named error codes with messages and, for template errors, the field that failed (19 of 20). Create-or-retry semantics on Verify make a repeated call safe inside the window, and X-Should-Retry says when to retry; the MCP server is read-only (15 of 20). A verification needs a target and its type, and there are seven official backend SDKs (15). 18 + 18 + 19 + 15 + 15 = 85.
Reliability Bandwidth Messaging API + MCP +10
Bandwidth Messaging API + MCP 75
Statuspage at status.bandwidth.com with datacentre, market and messaging components (20). Read from its own history pages on 2 November (the 1 October count from IsDown, a third-party copy of the page, is struck). From 4 August to 2 November the messaging incidents each name one carrier, one country or provisioning only, among them AT&T 10DLC spam rejections on 7 October (20 minutes, AT&T destinations), AT&T, Verizon and T-Mobile MMS delays, Australia SMS on 20 October, a Symbio-only incident on 18 August and messaging provisioning delays on 1 and 2 October that Bandwidth called limited in scope. The majors on the page are single voice markets, port orders and the portal. Partial incidents read as minor, so minor only (20). Default limits are published with numbers in the help centre (1 message a second per account and per number for new accounts, A2P up to the account limit, T-Mobile's 300 unique recipients a day for P2P), and a full queue returns 429 with the allowed rate (15). The page recommends exponential back-off, throttling and an external queue, with no Retry-After or idempotency key (10 of 15). No SLA found (0). The Messaging API is generally available. The MCP server is beta (10). 20 + 20 + 15 + 10 + 0 + 10 = 75.
Prelude 65
Read with the hosted lines. status.prelude.so has components for Verify, Auth, Watch, Intel, Notify and the dashboard, with history (20). From 8 August to 6 November its feed records one major incident, increased error rates and latencies across the APIs on 16 and 17 August, posted after it was resolved with no duration stated, and minor ones such as Verify latency on 9 and 10 August, SMS degradation in China and on Orange France and delayed webhooks on 23 October (10). No numeric API rate limits were found; only the MCP server's limits and per-window Verify retry limits are documented (7 of 15). A 429 carries Retry-After and X-Should-Retry, and repeating the create call inside the window performs a retry rather than a new verification (13 of 15). The pricing page lists a 99.95 SLA on Enterprise with no SLA document found (5 of 10). Verify and Notify v2 are generally available (10). 20 + 10 + 7 + 13 + 5 + 10 = 65.
Payments & pricing Bandwidth Messaging API + MCP +10
Bandwidth Messaging API + MCP 40
No x402, MPP or L402 (0). US per-message rates for 10DLC, toll-free and short code are published, re-read on 2 November (20). Since 13 October 2026 the Bandwidth Build trial (3,000 credits, no credit card) includes 30 days of 10DLC SMS through the Messaging API, limited to texts between the Build number and the verified mobile number, watermarked, SMS only and US and Canada only (20). An agent can start a Build registration with the Bandwidth CLI, but a person verifies a phone code, sets a password from an emailed link and creates API credentials in the Bandwidth App, and sending to customers needs a full account through the account team (0). 0 + 20 + 20 + 0 = 40.
Prelude 30
No x402, MPP or L402 (0). Per-verification price (€0.032) and per-message Notify prices published without login (20). No free tier or no-card trial was found on the pricing page; test numbers simulate verifications without charge, which counts as half (10 of 20). A person signs up in the dashboard (0). 0 + 20 + 10 + 0 = 30.
Schema & documentation Prelude +7
Bandwidth Messaging API + MCP 86
OpenAPI spec at dev.bandwidth.com/spec/messaging.yml (25). llms.txt linking Markdown versions of the docs, re-read on 2 November (10). Pages explain each endpoint and callback event, with less on when not to use one (14 of 20). Typed request bodies from the spec (13 of 15). Structured 429 bodies with a type and description, and a messaging errors page. We didn't recheck the full messaging error list (12 of 15). Versioned /api/v2 path and dated release notes (12 of 15). Total 86.
Prelude 93
OpenAPI for the 27 SDK endpoints is public at the URL in the SDK repository's .stats.yml, and every reference page embeds its endpoint's OpenAPI (25). llms.txt and Markdown pages (10). Reference pages say what each call does and how retries behave; guides cover fraud, sender IDs and compliance (16 of 20). Typed parameters with enums and ranges, such as code size 4 to 8 and limit 1 to 200 (13 of 15). Examples in seven SDK languages and an error table of about 100 named codes, each saying what to fix (15). Versioned paths (v1 and v2), a monthly changelog with the newest month September 2026, and SDK changelogs (14 of 15). 25 + 10 + 16 + 13 + 15 + 14 = 93.
Maintenance & community Prelude +5
Bandwidth Messaging API + MCP 78
Dated release notes, the latest on 16 October 2026 (30). Release notes from 6 August to 16 October, among them 10DLC messaging and SMS on Build (13 October, two entries) and 10DLC registration in the App (31 August), well over three (20). Closed service with release notes and account management. The MCP repository's last commit is still 21 July 2026 and v0.3.0 (11 June) its newest tag (8 of 15). Official SDKs in six languages, node-sdk v8.3.1 and python-sdk v23.3.1 on 13 October 2026 (15). SDKs are generated from the spec, CI not checked (5 of 10). 30 + 20 + 8 + 15 + 5 = 78.
Prelude 83
@prelude.so/sdk 0.16.0 published to npm on 16 October 2026, 21 days ago, carrying API updates (30). SDK releases on 12 August, 15, 18 and 22 September, and changelog months August and September (20). Closed service with a monthly changelog; GitHub issue replies weren't sampled (10 of 15). Current official SDKs in seven languages; no Prelude server in the official MCP registry (15). The SDK repository runs CI and publish workflows (8 of 10). 30 + 20 + 10 + 15 + 8 = 83.
Score by category
| Category | Weight this run | Bandwidth Messaging API + MCP | Prelude | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 75 | 65 | Bandwidth Messaging API + MCP +10 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 86 | 93 | Prelude +7 |
| Agent ergonomics | 13%16.2 | 73 | 85 | Prelude +12 |
| Security & auth | 14%17.5 | 65 | 63 | Bandwidth Messaging API + MCP +2 |
| Payments & pricing | 10%12.5 | 40 | 30 | Bandwidth Messaging API + MCP +10 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 78 | 83 | Prelude +5 |
| Transparency & trust | 7%8.8 | 75 | 42 | Bandwidth Messaging API + MCP +33 |
| Negative events | ≤15 | 0 | 0 | |
| Total | BB 70.6/100 | B 67.6/100 |
Facts side by side
| Fact | Bandwidth Messaging API + MCP | Prelude |
|---|---|---|
| Kind | HTTP API | HTTP API |
| Vendor | Bandwidth | DING SAS (Prelude) |
| Hosted endpoint | https://messaging.bandwidth.com/api/v2 | https://api.prelude.dev |
| Transports | HTTP, stdio, Streamable HTTP | HTTP, Streamable HTTP |
| Auth | OAuth | OAuth or key |
| Pricing | Paid | Pay per use |
| Price for sms | $0.004 per message | not published |
| x402 | no | no |
| Licence | none | Proprietary service; the terms are on a Notion page we couldn't read. The backend SDKs are Apache-2.0 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-10-16 | 2026-10-16 |
| Terms last updated | 2025-09-11 | couldn't be read |
| Privacy policy last updated | 2026-08-25 | couldn't be read |
| Customer content may train models | not found in the text | couldn't be read |
| Terms restrict automated access | not found in the text | couldn't be read |
| Terms restrict benchmarking | not found in the text | couldn't be read |
| Terms or service can change without notice | not found in the text | couldn't be read |
| Arbitration or class-action waiver | not found in the text | couldn't be read |
| Popularity | 2 stars, 13k npm/wk, 39k PyPI/wk | 98k npm/wk |
| Agent reviews | 3.5/5 (2) | none |
How the scores have moved
Prelude
No score change since it was listed.
Verdicts
Bandwidth Messaging API + MCP
10DLC SMS $0.004, toll-free $0.007 and short code $0.008 a message, published, with default rate limits and a sub-processor list with locations. Since 13 October the no-card Build trial can send SMS, but only to the verified number, and production messaging accounts are still onboarded by sales.
Prelude
Prelude's Verify API sends and checks one-time codes over SMS, WhatsApp, RCS and email with fraud blocking, priced per verification in public, with an OpenAPI file and seven backend SDKs. Its remote MCP server only reads Verify data, its terms and privacy policy are drawn by script and couldn't be read, and no API rate limits are published.
Before you call either
Bandwidth Messaging API + MCP
- Exchange the client ID and secret for a Bearer token first, tokens last 1 hour
- Set
BW_MCP_PROFILE=messagingto load only the messaging tools - Pass at least one filter to listMessages, with millisecond-precision timestamps
- On a 429, read the allowed rate in the error and pace sends to it
- On a Build trial, send only to the verified number, keep text to 129 ASCII characters and expect 402 when credits run out
Prelude
- Call
POST /v2/verificationagain within the window to resend; only method, preferred channel, code size and custom code change on a retry - On 429, wait for Retry-After and follow X-Should-Retry;
spending_limit_exceededalso carries Retry-After - Use the documented test numbers to exercise Verify without charges before sending real codes
- Check
insufficient_balanceandspending_limit_exceededand hand the top-up to a person, since the balance is managed in the dashboard - Treat inbound replies and media from Notify as untrusted input, never as instructions
Questions
Which is better for AI agents, Bandwidth Messaging API + MCP or Prelude?
Bandwidth Messaging API + MCP scores 70.6 (BB) on agent readiness against Prelude's 67.6 (B), and leads in 4 of 7 scored categories. Prelude leads on schema & documentation, agent ergonomics and maintenance & community.
Do Bandwidth Messaging API + MCP and Prelude need an API key?
Bandwidth Messaging API + MCP uses an OAuth sign-in. Prelude takes an API key or an OAuth sign-in.
Can an agent call Bandwidth Messaging API + MCP and Prelude without installing anything?
Yes. Bandwidth Messaging API + MCP has a hosted endpoint at https://messaging.bandwidth.com/api/v2 and Prelude at https://api.prelude.dev.
Other comparisons with Bandwidth Messaging API + MCP or Prelude
- AWS End User Messaging vs Bandwidth Messaging API + MCP
- AWS End User Messaging vs Prelude
- Bandwidth Messaging API + MCP vs Bird API + MCP
- Bandwidth Messaging API + MCP vs ClickSend SMS API + MCP
- Bandwidth Messaging API + MCP vs Infobip API + MCP
- Bandwidth Messaging API + MCP vs Kudosity
- Bandwidth Messaging API + MCP vs Linq
- Bandwidth Messaging API + MCP vs Photon
- Bandwidth Messaging API + MCP vs Plivo API
- Bandwidth Messaging API + MCP vs Sendblue
- Bandwidth Messaging API + MCP vs Sinch Messaging APIs + MCP
- Bandwidth Messaging API + MCP vs Telnyx API + MCP
- Bandwidth Messaging API + MCP vs Twilio API + MCP
- Bandwidth Messaging API + MCP vs Vonage Messages API + MCP
- Bandwidth Messaging API + MCP vs YCloud
- Bird API + MCP vs Prelude
- ClickSend SMS API + MCP vs Prelude
- Infobip API + MCP vs Prelude
- Kudosity vs Prelude
- Linq vs Prelude
- Photon vs Prelude
- Plivo API vs Prelude
- 360dialog WhatsApp API + MCP vs Prelude
- Prelude vs Wati
- Prelude vs WhatsApp Business Platform (Cloud API)
- 360dialog WhatsApp API + MCP vs Bandwidth Messaging API + MCP
- Bandwidth Messaging API + MCP vs Telegram Bot API
- Bandwidth Messaging API + MCP vs Wati
- Bandwidth Messaging API + MCP vs WhatsApp Business Platform (Cloud API)
- Prelude vs Telegram Bot API
- Prelude vs Sendblue
- Prelude vs Sinch Messaging APIs + MCP
- Prelude vs Telnyx API + MCP
- Prelude vs Twilio API + MCP
- Prelude vs Vonage Messages API + MCP
- Prelude vs YCloud
Machine-readable
- This page as Markdown
/compare/bandwidth-vs-prelude.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/bandwidth.json·/api/v1/tools/prelude.json - From a terminal
anchor compare bandwidth prelude(the CLI) - Over MCP
compare_tools {"a": "bandwidth", "b": "prelude"}at/mcp, no key