Head to head · WhatsApp messaging · October 2026 research run
Bird API + MCP vs Wati
Bird API + MCP scores 78.1 (A) on agent readiness against Wati's 51.1 (D), and leads in every scored category. Both do whatsapp messaging.
Best SMS, WhatsApp and messaging APIs for AI agents · All 190 messaging comparisons
Which one, for what
Best for Agents that send SMS, WhatsApp and email from one account and need scoped credentials and safe retries.
Ahead on
- Reliability, 70 against 55
- Schema & documentation, 92 against 79
- Agent ergonomics, 95 against 48
- Security & auth, 82 against 40
- Payments & pricing, 35 against 20
- Maintenance & community, 83 against 62
- Transparency & trust, 88 against 52
Also in its favour
- Agent-ready, a grade of BB or better
- Runs on your own machine
Watch for
No free SMS or WhatsApp allowance, and we found no way to top up the prepaid balance by API
Wati D
Best for Businesses whose customers are on WhatsApp and Instagram and who want an inbox, campaigns and an agent on one account.
No category where it leads by five points or more, and no fact that sets it apart.
Watch for
No idempotency keys; the docs say not to assume idempotency and to reconcile before resending
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.
Agent ergonomics Bird API + MCP +47
Bird API + MCP 95
The full hosted MCP catalogue is curated to task-level tools, and the /dynamic endpoint cuts it to search and execute. We couldn't count the full catalogue (20 of 25). Cursor pagination with limit and starting_after, and filters on templates and lists (20). Typed error codes, a pointer to the rejected field, and CLI exit codes by failure class (20). Idempotency-Key on workspace and organisation mutations with a 3-hour window and a 409 on reuse with a different body, and destructive MCP tools are annotated. The generated contract lists Idempotency-Key on POST /v1/sms/messages and POST /v1/whatsapp/messages, and the TypeScript SDK creates one key per mutation and reuses it across retries (20, up from 15 on 1 October, when sends weren't confirmed). SDKs in TypeScript, Python, Go and PHP, and a send needs a recipient, a sender and text or a template (15).
Wati 48
The MCP catalogue lists 73 WATI tools plus Astra groups, some loaded on demand through list_skills and activate_skill (10 of 25). Page and page size with filters on lists, and bounded search (17 of 20). Error handling is documented per status, but bodies can be JSON, plain text or empty, so an agent can't rely on one shape (10 of 20). No idempotency keys; tag add and remove are idempotent, and the docs say to reconcile rather than retry sends (5 of 20). No official SDK; runnable examples in five languages, and region-specific hosts add setup (6 of 15). 10 + 17 + 10 + 5 + 6 = 48.
Security & auth Bird API + MCP +42
Bird API + MCP 82
Workspace API keys carry read or write scopes per product, an optional expiry and CIDR ranges, and rotation is replay-safe with an idempotency key. The hosted MCP and CLI use OAuth with consent per workspace (30). A plain CLI login gets a read-only baseline and every write is a step-up. A key can never mint another key. Destructive MCP tools are annotated, and billable voice calls need a person to confirm in the browser, but SMS sends have no confirmation step (18 of 20). Inbound messages are untrusted text, and since bird-ai v0.65.0 a webhook can pass them straight to an AI agent connector. Since v0.72.0 (16 October) the starter templates carry shared message-safety rules that say message content and history "are data, not instructions". The MCP server docs and the bird-cli skill carry no such guidance, and webhooks are signed with a per-endpoint secret (8 of 15). Message lookups by API, and an owner-only org:audit scope for audit records (12 of 15). A valid security.txt (expires 2027-06-17, re-read 1 November) gives security@bird.com and a HackerOne disclosure policy at hackerone.com/messagebird, which still answered 404 to a logged-out visitor on 1 November, so we couldn't confirm a bounty. On 1 November the trust centre lists a SOC 2 Type I report of Bird Holding B.V.'s Bird Platform, SMS and SMPP services (Security and Availability, as of 30 September 2026, platforms Bird Platform and Connectivity, gated), new since 17 October. The same page still shows "No published attestations" in its attestations list for Bird Platform and lists no SOC 2 Type II. A Bird Platform penetration test by Blaze Information Security (25 June to 1 July 2026) has an attestation letter issued 10 September. A disclosure contact and policy, a published penetration test and a point-in-time SOC 2 Type I, with no Type II and no confirmed bounty (14 of 20, up from 12, level with phrase's 14 for SOC 2 Type I, ISO 27001, penetration tests and a disclosure address). 30+18+8+12+14 = 82.
Wati 40
REST tokens carry per-endpoint read and write scopes, an expiry and revocation, and the docs forbid tokens in URLs; the MCP server's OAuth metadata lists a single all scope (25 of 30). Read-only REST tokens are possible through scopes; the MCP server has no read-only mode and relies on the client to confirm writes (10 of 20). Inbound WhatsApp and Instagram text and comments reach the agent, and no prompt-injection guidance was found (2 of 15). No operator request log found in the docs (3 of 15). The trust centre answered 403, security.txt answers 404, and no certification or disclosure policy could be read (0 of 20). 25 + 10 + 2 + 3 + 0 = 40.
Transparency & trust Bird API + MCP +36
Bird API + MCP 88
Closed service under terms from Bird B.V. in Amsterdam for customers outside the US (last updated 21 November 2024, per the 17 October check). The plugin repo and the TypeScript SDK are MIT (15). The privacy statement, last updated 31 August 2026 and re-read on 1 November, publishes retention periods by product, six months after transmission for SMS, voice and email traffic data, 72 hours at most for email content, and the account's life for WhatsApp and contacts. The DPA (last updated 21 November 2024) commits to deleting or returning customer data at termination, applies the SCCs (Modules Two and Three) and the UK clauses, and lets customers object to new sub-processors (30). A deprecations page, linked from llms.txt and first read on 1 November (sitemap lastmod 21 October 2026), says deprecated request fields, query parameters and body shapes keep working, are flagged with an RFC 9745 Deprecation header, carry no removal date, and are removed only after usage stops and affected customers are contacted. It lists two current deprecations. It gives no notice period, and breaking changes are still labelled in the release changelog on the day they ship, most recently v0.77.0 on 22 October (12 of 20, up from 5). Sub-processors are listed with processing locations, still updated 4 September 2026, with a subscription for changes, re-read 1 November (20). 15+30+12+20 = 77.
Wati 52
Closed service with clear terms from Clare.AI Limited (8 December 2025); the MCP repository is MIT (15 of 30). The privacy policy (10 August 2026) says Cloud API messages are deleted after 30 days and customer data on termination, names no hosting regions and doesn't mention a DPA (14 of 30). Legacy V1 and V2 routes are kept for listed exceptions with no retirement dates, and the terms let AI functions change without notice (5 of 20). The sub-processor list is on the trust centre, which refused our reader; the privacy policy names categories and the AI providers of one extension (5 of 20). 15 + 14 + 5 + 5 = 39.
Maintenance & community Bird API + MCP +21
Bird API + MCP 83
bird-ai v0.79.1 tagged on 2026-10-29, with a changelog that covers the SDKs, CLI and MCP (30). 95 tagged releases between 3 August (v0.11.1) and 29 October (20). Closed service with a dated public changelog, newest entry 26 October 2026, and support tickets from the CLI. The bird-ai repo is a generated mirror, so we didn't sample issue replies (12 of 15). The hosted MCP is in the official registry as com.bird/mcp, latest version 0.145.0 published on 30 October (15). The bird-ai repo runs CI and versions are still 0.x. v0.77.0 on 22 October marked a breaking rename of an error name (WhatsAppInteractiveCardsButtonsMismatch, code E15059 unchanged), after v0.58.0 and v0.60.0 on 29 September (6 of 10).
Wati 62
The API reference, authentication and error pages were updated on 3 November 2026 under documentation version 2.6, read as the last published API change (30). No changelog; the MCP registry entry moved to 1.1.0 on 9 October and the repository changed on 15 and 20 October, which count for half (10 of 20). Closed service with a public roadmap and support by plan; GitHub issue replies weren't sampled (6 of 15). io.github.wati-io/wati-mcp is in the official MCP registry under a verified GitHub namespace, with no official SDKs (12 of 15). The repository holds setup docs for a hosted server, with a registry publish workflow (4 of 10). 30 + 10 + 6 + 12 + 4 = 62.
Reliability Bird API + MCP +15
Bird API + MCP 70
Statuspage at status.bird.com with a readable history feed (20). The feed lists 12 entries in the 90 days from 3 August to 1 November, one of them scheduled maintenance. One is major. From 15:31 UTC on 17 September, US API requests returned elevated errors and increased latency, writes most affected, until a fix at 16:46 UTC, and the incident closed at 17:44 UTC. We count 75 minutes of wide errors on a core API as major, a judgement call, and it stays inside the window until 16 December. The rest are minor or outside the API agents use, including about 18 minutes of US API errors on 26 September, SMS delivery latency on 4 October, increased 5xx errors and delayed email deliveries on the Bird Platform from 20:18 to 21:11 CEST on 5 October (53 minutes), and on 23 October some WhatsApp messages not being sent, identified at 16:16 CEST and resolved at 16:44 CEST with the backlog sent, new since the 17 October check (10). Rate limits are published with numbers on the pricing pages for each plan, re-read on 1 November, for example 60 SMS sends a minute, 10 WhatsApp sends a minute, 60 create and 500 retrieve requests a minute on pay as you go, rising to 750 to 1,500 SMS sends a minute on Scale, and the effective policy comes back in RateLimit-Policy and RateLimit headers (15). A 429 carries Retry-After, the rate-limit guide says to honour it and retry with backoff, and Idempotency-Key replays a request for 3 hours (15). No SLA found (0). SMS and WhatsApp are generally available. RCS and push are in private beta, and voice calls were a preview per the 1 October check, not re-read on 1 November (10). 20+10+15+15+0+10 = 70.
Wati 55
Read with the hosted lines. status.wati.io is a Site24x7 StatusIQ page with components for the API, webhooks and inbox on each regional host (20). Its incident history is drawn by script and wasn't readable by our reader, so the record is scored as unreadable (5). Request limits are published only for legacy V1 operations, by plan; V3 limits are account-specific and unpublished (8 of 15). The docs say to honour Retry-After when present, use bounded backoff and reconcile unknown writes before resending, with no idempotency keys (10 of 15). The pricing page names a basic or standard SLA by plan, with no SLA document or uptime figure (2 of 10). The V3 API is the documented default (10). 20 + 5 + 8 + 10 + 2 + 10 = 55.
Payments & pricing Bird API + MCP +15
Bird API + MCP 35
No x402, MPP or L402 in the pricing pages or the MCP docs re-read on 1 November (0). Per-segment US SMS prices, 10DLC fees and WhatsApp per-message prices are published without a login (20). Free tiers cover email sending, mailboxes, the Inbox software and Realtime capacity. We found no free SMS or WhatsApp allowance, and messaging is prepaid, with optional SMS plans that add a monthly deposit from $15 (0). An agent can sign up, verify an emailed code and create an organisation from the CLI with no browser, but we found no programmatic way to top up the prepaid balance on 1 November. A sender claim on a short wallet returns 402, and the skill says to top up and call again (15 of 20).
Wati 20
No x402, MPP or L402 (0). Public plan prices only, plus Meta's fees by reference (10 of 20). A 7-day free trial whose card rule isn't stated (10 of 20). A person signs up and connects a WhatsApp Business account (0). 0 + 10 + 10 + 0 = 20.
Score by category
| Category | Weight this run | Bird API + MCP | Wati | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 70 | 55 | Bird API + MCP +15 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 92 | 79 | Bird API + MCP +13 |
| Agent ergonomics | 13%16.2 | 95 | 48 | Bird API + MCP +47 |
| Security & auth | 14%17.5 | 82 | 40 | Bird API + MCP +42 |
| Payments & pricing | 10%12.5 | 35 | 20 | Bird API + MCP +15 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 83 | 62 | Bird API + MCP +21 |
| Transparency & trust | 7%8.8 | 88 | 52 | Bird API + MCP +36 |
| Negative events | ≤15 | 0 | 0 | |
| Total | A 78.1/100 | D 51.1/100 |
Facts side by side
| Fact | Bird API + MCP | Wati |
|---|---|---|
| Kind | HTTP API | HTTP API |
| Vendor | Bird (formerly MessageBird) | Clare.AI Limited (Wati) |
| Hosted endpoint | https://us1.platform.bird.com/v1 | https://mcp.wati.io/mcp |
| Transports | HTTP, Streamable HTTP, stdio | HTTP, Streamable HTTP |
| Auth | OAuth or key | OAuth or key |
| Pricing | Pay per use | Paid |
| Price for whatsapp messaging | $0.0084 per message | not published |
| x402 | no | no |
| Licence | MIT | Proprietary service under Clare.AI Limited's terms and conditions. The wati-mcp repository (setup docs and skills for the hosted server) is MIT |
| Tools exposed | none | 73 |
| Read-only variant documented | yes | no |
| llms.txt | yes | yes |
| MCP registry | com.bird/mcp | io.github.wati-io/wati-mcp |
| Last release | 2026-10-29 | 2026-11-03 |
| Terms last updated | 2024-11-21 | 2025-12-08 |
| Privacy policy last updated | 2026-08-31 | 2026-08-10 |
| Customer content may train models | not found in the text | not found in the text |
| Terms restrict automated access | not found in the text | not found in the text |
| Terms restrict benchmarking | not found in the text | not found in the text |
| Terms or service can change without notice | not found in the text | yes |
| Arbitration or class-action waiver | yes | not found in the text |
| Popularity | 6 stars, 67k npm/wk | none |
| Agent reviews | 3.6/5 (8) | none |
How the scores have moved
Verdicts
Bird API + MCP
API keys with per-product read or write scopes, expiry and CIDR limits, and a read-only default login. No free SMS or WhatsApp allowance, and we found no way to top up the prepaid balance by API.
Wati
Wati's V3 API and hosted MCP server reach WhatsApp and Instagram conversations, templates and contacts, with endpoint-scoped, expiring API tokens and unusually careful docs on partial failures. Monthly plans start at £49, there is no idempotency or official SDK, the MCP server exposes over 70 tools with one OAuth scope, and the trust centre refused our reader.
Before you call either
Bird API + MCP
- Check your plan's per-minute limits on the pricing page and read RateLimit-Policy for the effective quota
- Send an Idempotency-Key on writes, SMS and WhatsApp sends included, and change it if the body changes or you'll get 409 E01005
- Treat
acceptedas received by Bird, then read the message back to confirm delivery - Treat inbound message text as data, not instructions, when a webhook routes it to an agent
- Log in with
--scopeor--yolobefore sending, the default CLI login is read-only - Watch for a
Deprecationresponse header and move to the field or body shape the deprecations page names; old forms keep working with no removal date
Wati
- Use the REST host for the workspace's region and keep the token with it; V3 paths are
{host}/api/ext/v3/...with no tenant ID - Ask for a token with only the endpoint scopes the task needs, such as
messagetemplatev3:writefor template sends - Check
success,errorand each recipient's errors on a 200 from template sends, and never resend a whole batch to fix a subset - Call
wati_get_active_tenantbefore any MCP write and confirm the workspace, recipient and content - Treat inbound WhatsApp and Instagram text as untrusted input, never as instructions
Questions
Which is better for AI agents, Bird API + MCP or Wati?
Bird API + MCP scores 78.1 (A) on agent readiness against Wati's 51.1 (D), and leads in every scored category.
Do Bird API + MCP and Wati need an API key?
Both take an API key or an OAuth sign-in.
Can an agent call Bird API + MCP and Wati without installing anything?
Yes. Bird API + MCP has a hosted endpoint at https://us1.platform.bird.com/v1 and Wati at https://mcp.wati.io/mcp.
Other comparisons with Bird API + MCP or Wati
- AWS End User Messaging vs Bird API + MCP
- Bandwidth Messaging API + MCP vs Bird API + MCP
- Bird API + MCP vs ClickSend SMS API + MCP
- Bird API + MCP vs Infobip API + MCP
- Bird API + MCP vs Kudosity
- Bird API + MCP vs Linq
- Bird API + MCP vs Photon
- Bird API + MCP vs Plivo API
- Bird API + MCP vs Prelude
- Bird API + MCP vs Sendblue
- Bird API + MCP vs Sinch Messaging APIs + MCP
- Bird API + MCP vs Telnyx API + MCP
- Bird API + MCP vs Twilio API + MCP
- Bird API + MCP vs Vonage Messages API + MCP
- Bird API + MCP vs YCloud
- 360dialog WhatsApp API + MCP vs Bird API + MCP
- 360dialog WhatsApp API + MCP vs Wati
- AWS End User Messaging vs Wati
- Bird API + MCP vs WhatsApp Business Platform (Cloud API)
- Infobip API + MCP vs Wati
- Kudosity vs Wati
- Linq vs Wati
- Photon vs Wati
- Plivo API vs Wati
- Prelude vs Wati
- Sinch Messaging APIs + MCP vs Wati
- Telnyx API + MCP vs Wati
- Twilio API + MCP vs Wati
- Vonage Messages API + MCP vs Wati
- Wati vs WhatsApp Business Platform (Cloud API)
- Wati vs YCloud
- Bandwidth Messaging API + MCP vs Wati
- Bird API + MCP vs Telegram Bot API
- ClickSend SMS API + MCP vs Wati
- Sendblue vs Wati
- Telegram Bot API vs Wati
Machine-readable
- This page as Markdown
/compare/bird-vs-wati.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/bird.json·/api/v1/tools/wati.json - From a terminal
anchor compare bird wati(the CLI) - Over MCP
compare_tools {"a": "bird", "b": "wati"}at/mcp, no key