{
  "data": {
    "a": {
      "slug": "bird",
      "name": "Bird API + MCP",
      "vendor": "Bird (formerly MessageBird)",
      "vendorUrl": "https://bird.com",
      "kind": "http-api",
      "category": "messaging",
      "summary": "Bird's rebuilt developer API sends SMS and WhatsApp (plus email and voice) from one account, with an OpenAPI 3.1 spec, generated SDKs, a CLI and a hosted OAuth MCP server at mcp.bird.com.",
      "url": "https://www.anchorterminal.com/tools/bird",
      "markdownUrl": "https://www.anchorterminal.com/tools/bird.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/bird.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/bird.json",
      "repo": "https://github.com/messagebird/bird-ai",
      "license": "MIT",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://us1.platform.bird.com/v1",
      "packages": [
        {
          "registry": "npm",
          "name": "@messagebird/sdk"
        },
        {
          "registry": "pypi",
          "name": "messagebird-sdk"
        }
      ],
      "auth": "mixed",
      "authNotes": "Bearer API key scoped to a workspace, with editable permissions. The hosted MCP uses OAuth with per-workspace consent, and the CLI signs in through the browser. Accounts live in one region (us1 or eu1).",
      "pricing": "usage",
      "pricingNotes": "Prepaid balance, pay as you go. US SMS $0.0035 a segment on long code or toll-free and $0.007 on short code, plus carrier fees. UK SMS $0.05. US 10DLC brand registration $4.50, campaign vetting $15, campaign fee $10 a month for most use cases ($1.50 low volume, $3 charity), billed quarterly. US WhatsApp $0.0084 per utility, authentication or service message and $0.03 per marketing message, Meta fees included. The no-card free tier covers email only. SDKs, CLI and MCP cost nothing extra (https://bird.com/pricing/sms.md).",
      "priceSummary": "Pay per use",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402 support in docs, pricing or MCP README (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 6,
        "npmWeekly": 67222,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://bird.com/docs",
      "llmsTxt": "https://bird.com/llms.txt",
      "openapi": "https://bird.com/openapi.json",
      "registryName": "com.bird/mcp",
      "capabilities": [
        "messaging.sms",
        "messaging.whatsapp",
        "messaging.verify",
        "messaging.inbound"
      ],
      "tags": [
        "hosted",
        "mcp",
        "llms-txt",
        "openapi",
        "typescript",
        "python",
        "webhooks",
        "whatsapp",
        "sms"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 77.7,
        "grade": "BB",
        "agentReady": true,
        "rank": 17,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 2,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 90,
          "maintenance": 83,
          "payments": 35,
          "reliability": 73,
          "schema": 92,
          "security": 85,
          "transparency": 80
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "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.",
        "strengths": [
          "API keys with per-product read or write scopes, expiry and CIDR limits, and a read-only default login",
          "Idempotency-Key with a 3-hour window, Retry-After on 429 and typed error codes",
          "OpenAPI 3.1 spec, llms.txt and Markdown pages",
          "An agent can sign up and create an organisation from the CLI with an emailed code",
          "US SMS $0.0035 a segment on long code and toll-free"
        ],
        "weaknesses": [
          "No free SMS or WhatsApp allowance, and we found no way to top up the prepaid balance by API",
          "Rate-limit quotas aren't published, only returned in headers",
          "0.x releases several times a week, two of the last ten marked breaking",
          "No SLA found",
          "RCS in private beta and voice calls in preview"
        ],
        "agentNotes": [
          "Read RateLimit-Policy on each response to learn your quota, it isn't in the docs",
          "Send an Idempotency-Key on writes, and change it if the body changes or you'll get 409 E01005",
          "Treat `accepted` as received by Bird, then read the message back to confirm delivery",
          "Connect to mcp.bird.com/dynamic if your client struggles with large tool lists",
          "Log in with `--scope` or `--yolo` before sending, the default CLI login is read-only"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 8,
        "avgRating": 3.6,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 77.7
          }
        ],
        "editorialScores": {
          "ergonomics": 90,
          "maintenance": 83,
          "payments": 35,
          "reliability": 73,
          "schema": 92,
          "security": 85,
          "transparency": 60
        },
        "provenanceScore": 100
      },
      "connect": {
        "http": "curl -X POST \"https://us1.platform.bird.com/v1/sms/messages\" \\\n  -H \"Authorization: Bearer $BIRD_API_KEY\" -H \"Content-Type: application/json\" \\\n  -d '{\"to\":\"+14155550100\",\"from\":\"+15557654321\",\"text\":\"Hello from Bird\"}'",
        "claudeCode": "claude mcp add --transport http bird https://mcp.bird.com"
      },
      "letme": {
        "capability": "https://letme.dev/messaging.sms",
        "tool": "https://letme.dev/bird"
      },
      "area": "communication",
      "unitPrices": [
        {
          "item": "SMS outbound, US long code or toll-free",
          "unit": "message",
          "usd": 0.0035,
          "note": "per segment, plus carrier fees"
        },
        {
          "item": "SMS outbound, US short code",
          "unit": "message",
          "usd": 0.007,
          "note": "per segment, plus carrier fees"
        },
        {
          "item": "SMS outbound, UK",
          "unit": "message",
          "usd": 0.05,
          "note": "per segment"
        },
        {
          "item": "WhatsApp utility or authentication, US",
          "unit": "message",
          "usd": 0.0084,
          "note": "Meta fee included"
        },
        {
          "item": "WhatsApp marketing, US",
          "unit": "message",
          "usd": 0.03,
          "note": "Meta fee included"
        }
      ],
      "provenance": {
        "legalEntity": "Bird B.V.",
        "domain": "bird.com",
        "domainRegistered": "1992-02-14",
        "domainNote": "bird.com's registration predates the MessageBird rebrand to Bird by decades.",
        "endpointOnVendorDomain": true,
        "terms": "https://bird.com/legal/terms",
        "privacy": "https://bird.com/legal/privacy",
        "statusPage": "https://bird.com/status",
        "changelog": "https://bird.com/changelog",
        "securityTxt": "valid",
        "checked": "2026-09-30",
        "score": 100
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/bird.json",
      "live": {
        "slug": "bird",
        "probe": {
          "target": "https://us1.platform.bird.com/v1",
          "method": "get",
          "lastAt": "2026-10-04T23:32:44.037309175Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 449,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 445,
          "p95ms24h": 486,
          "samples24h": 272,
          "samples30d": 1097,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 267,
              "ok": 267
            }
          ]
        },
        "vendorStatus": {
          "page": "https://bird.com/status",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-04T21:39:50.798673998Z"
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "com.bird/mcp",
            "version": "0.106.0",
            "seenAt": "2026-10-03T23:29:28.630222764Z"
          },
          {
            "registry": "npm",
            "name": "@messagebird/sdk",
            "version": "0.87.0",
            "seenAt": "2026-10-04T16:22:13.909961998Z"
          },
          {
            "registry": "pypi",
            "name": "messagebird-sdk",
            "version": "0.86.0",
            "released": "2026-10-02",
            "seenAt": "2026-10-04T16:22:14.829830616Z"
          }
        ],
        "githubStars": 8,
        "npmWeekly": 76988,
        "pypiWeekly": 2482,
        "securityTxt": {
          "url": "https://bird.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-06-17T00:00:00.000Z",
          "checkedAt": "2026-10-04T15:15:42.268153901Z"
        },
        "llmsTxt": {
          "url": "https://bird.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:17:20.207885314Z"
        },
        "domain": {
          "domain": "bird.com",
          "registered": "1992-02-14",
          "source": "https://rdap.verisign.com/com/v1/domain/bird.com",
          "checkedAt": "2026-10-04T13:08:14.942206601Z"
        },
        "pages": [
          {
            "url": "https://bird.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-04T15:41:26.44227538Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "5803e63edc7a"
          },
          {
            "url": "https://bird.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-01T13:11:27.781241412Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "fdeb1fb0c086"
          },
          {
            "url": "https://bird.com/pricing/sms.md",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:41:32.849731834Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "93441644cee6"
          },
          {
            "url": "https://bird.com/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:41:28.602968969Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "030bac820a0e"
          },
          {
            "url": "https://bird.com/legal/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:41:30.685182762Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "b182659d147b"
          }
        ],
        "updatedAt": "2026-10-04T23:32:44.037309175Z"
      }
    },
    "b": {
      "slug": "vonage",
      "name": "Vonage Messages API + MCP",
      "vendor": "Vonage (Ericsson)",
      "vendorUrl": "https://www.vonage.com",
      "kind": "http-api",
      "category": "messaging",
      "summary": "One endpoint (POST /v1/messages) for SMS, MMS, WhatsApp, RCS, Viber and Messenger, with failover between channels.",
      "url": "https://www.anchorterminal.com/tools/vonage",
      "markdownUrl": "https://www.anchorterminal.com/tools/vonage.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/vonage.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/vonage.json",
      "repo": "https://github.com/Vonage-Community/vonage-mcp-server-api-bindings",
      "license": "Apache-2.0",
      "transports": [
        "http",
        "stdio",
        "streamable-http"
      ],
      "remoteUrl": "https://api.nexmo.com/v1",
      "packages": [
        {
          "registry": "npm",
          "name": "@vonage/server-sdk"
        },
        {
          "registry": "pypi",
          "name": "vonage"
        },
        {
          "registry": "npm",
          "name": "@vonage/vonage-mcp-server-api-bindings"
        }
      ],
      "auth": "mixed",
      "authNotes": "Messages API takes a Vonage Application JWT (RS256, signed with the application's private key) or Basic auth with the API key and secret. Basic auth doesn't deliver to application-level webhooks. Inbound webhooks carry an HS256 JWT to verify. The MCP server reads the key, secret, application ID and a base64 private key from env vars.",
      "pricing": "usage",
      "pricingNotes": "Pay as you go per message. Rates vary by country and channel and appear only through a country selector or a downloadable sheet. WhatsApp adds a Vonage platform fee to Meta's template fees. New accounts get €2 of test credit and no card is needed (https://www.vonage.com/communications-apis/messages/pricing/).",
      "priceSummary": "Pay per use",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402 support in docs, pricing or MCP README (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": 15,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 154249,
        "pypiWeekly": 67062,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developer.vonage.com/en/messages/overview",
      "llmsTxt": "https://developer.vonage.com/llms.txt",
      "openapi": "https://developer.vonage.com/api/v1/developer/api/file/messages?format=json",
      "registryName": "io.github.Vonage/vonage-documentation-mcp",
      "capabilities": [
        "messaging.sms",
        "messaging.mms",
        "messaging.whatsapp",
        "messaging.rcs",
        "messaging.verify",
        "messaging.inbound"
      ],
      "tags": [
        "hosted",
        "no-card",
        "mcp",
        "openapi",
        "llms-txt",
        "typescript",
        "python",
        "webhooks",
        "whatsapp",
        "sms",
        "enterprise"
      ],
      "lastRelease": "2026-09-16",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67.1,
        "grade": "B",
        "agentReady": false,
        "rank": 146,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 4,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 50,
          "maintenance": 80,
          "payments": 37,
          "reliability": 77,
          "schema": 90,
          "security": 73,
          "transparency": 52
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "POST /v1/messages covers six channels, with SMS failover for WhatsApp and RCS. No idempotency key, and channel rejections arrive only by status webhook after a 202.",
        "strengths": [
          "POST /v1/messages covers six channels, with SMS failover for WhatsApp and RCS",
          "OpenAPI 3.0.3 spec for the Messages API (version 1.19.1), and SDK releases in Node and Python through September 2026",
          "75 requests a second per API key, with Retry-After and X-RateLimit headers on 429",
          "Application JWTs with ACL claims that limit paths and methods",
          "ISO 27001, PCI-DSS, SOC, HITRUST and CSA STAR listed on the security page, and an Audit API for account events"
        ],
        "weaknesses": [
          "No idempotency key, and channel rejections arrive only by status webhook after a 202",
          "The sending MCP lives in the Vonage-Community GitHub organisation, last released on 2026-05-26, with no tool annotations",
          "SMS, WhatsApp and RCS prices sit behind a country selector, and the terms body doesn't render without a browser",
          "No SLA, security.txt, sub-processor list or retention periods found",
          "The Audit API costs $550 a month"
        ],
        "agentNotes": [
          "Keep api.nexmo.com as the host, don't rewrite it to vonage.com",
          "Use the Messages API, not the legacy SMS API",
          "Treat a 202 as accepted only, and wait for the status webhook before assuming delivery",
          "Use JWT auth if you need inbound or status webhooks, Basic auth doesn't deliver to application webhooks",
          "Verify the webhook JWT and its payload_hash against the raw body"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 67.1
          }
        ],
        "editorialScores": {
          "ergonomics": 50,
          "maintenance": 80,
          "payments": 37,
          "reliability": 77,
          "schema": 90,
          "security": 73,
          "transparency": 28
        },
        "provenanceScore": 75
      },
      "connect": {
        "http": "curl https://api.nexmo.com/v1/messages -u \"$VONAGE_API_KEY:$VONAGE_API_SECRET\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"message_type\":\"text\",\"channel\":\"sms\",\"to\":\"447700900000\",\"from\":\"Vonage\",\"text\":\"Hello from Vonage\"}'",
        "claudeCode": "claude mcp add --transport http vonage-docs https://documentation-mcp.vonage.dev/mcp",
        "config": {
          "mcpServers": {
            "vonage": {
              "args": [
                "-y",
                "@vonage/vonage-mcp-server-api-bindings"
              ],
              "command": "npx",
              "env": {
                "VONAGE_API_KEY": "${VONAGE_API_KEY}",
                "VONAGE_API_SECRET": "${VONAGE_API_SECRET}",
                "VONAGE_APPLICATION_ID": "${VONAGE_APPLICATION_ID}",
                "VONAGE_PRIVATE_KEY64": "${VONAGE_PRIVATE_KEY64}",
                "VONAGE_VIRTUAL_NUMBER": "${VONAGE_VIRTUAL_NUMBER}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/messaging.sms",
        "tool": "https://letme.dev/vonage"
      },
      "sameCompany": [
        "vonage-voice"
      ],
      "area": "communication",
      "provenance": {
        "legalEntity": "Vonage Holdings Corp.",
        "domain": "vonage.com",
        "domainRegistered": "2000-12-12",
        "domainNote": "The API endpoints sit on the legacy nexmo.com domain, from Nexmo's acquisition in 2016.",
        "endpointOnVendorDomain": false,
        "terms": "https://www.vonage.com/legal/communications-apis/terms-of-use/",
        "privacy": "https://www.vonage.com/legal/privacy-policy/",
        "statusPage": "https://vonageapi.statuspage.io",
        "changelog": "https://developer.vonage.com/en/changelogs",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "The privacy notice names Vonage Holdings Corp. as controller where one entity applies. The API terms set the contracting entity by customer region in Schedule 1, which we couldn't read because vonage.com returned 403 to automated requests."
        ],
        "score": 75
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/vonage.json",
      "live": {
        "slug": "vonage",
        "probe": {
          "target": "https://api.nexmo.com/v1",
          "method": "get",
          "lastAt": "2026-10-04T23:32:56.650393129Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 21,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 24,
          "p95ms24h": 58,
          "samples24h": 272,
          "samples30d": 1097,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 267,
              "ok": 267
            }
          ]
        },
        "vendorStatus": {
          "page": "https://vonageapi.statuspage.io",
          "indicator": "minor",
          "summary": "Partially Degraded Service",
          "checkedAt": "2026-10-04T23:28:04.982506703Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "Vonage-Community/vonage-mcp-server-api-bindings",
            "version": "v1.5.0",
            "released": "2026-05-21",
            "seenAt": "2026-10-04T16:43:47.420905564Z"
          },
          {
            "registry": "mcp-registry",
            "name": "io.github.Vonage/vonage-documentation-mcp",
            "version": "1.0.0",
            "seenAt": "2026-10-03T23:29:28.630222764Z"
          },
          {
            "registry": "npm",
            "name": "@vonage/server-sdk",
            "version": "3.30.1",
            "seenAt": "2026-10-04T16:43:43.414771728Z"
          },
          {
            "registry": "npm",
            "name": "@vonage/vonage-mcp-server-api-bindings",
            "version": "1.5.1",
            "seenAt": "2026-10-04T16:43:45.553661658Z"
          },
          {
            "registry": "pypi",
            "name": "vonage",
            "version": "4.9.0",
            "released": "2026-09-16",
            "seenAt": "2026-10-04T16:43:45.441057302Z"
          }
        ],
        "githubStars": 3,
        "npmWeekly": 152256,
        "pypiWeekly": 69501,
        "securityTxt": {
          "url": "https://vonage.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-04T15:15:53.518357179Z"
        },
        "llmsTxt": {
          "url": "https://developer.vonage.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:18:23.288863365Z"
        },
        "domain": {
          "domain": "vonage.com",
          "registered": "2000-12-12",
          "source": "https://rdap.verisign.com/com/v1/domain/vonage.com",
          "checkedAt": "2026-10-04T13:04:15.703583171Z"
        },
        "pages": [
          {
            "url": "https://www.vonage.com/communications-apis/messages/pricing/",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-10-04T15:52:48.171888466Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "78c0a0681698"
          }
        ],
        "updatedAt": "2026-10-04T23:32:56.650393129Z"
      }
    },
    "summary": "Bird API + MCP has a score of 77.7 (BB) against Vonage Messages API + MCP's 67.1 (B). Both do messaging sms. The largest gap is agent ergonomics, 40 points."
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/bird-vs-vonage",
    "json": "https://www.anchorterminal.com/compare/bird-vs-vonage.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/bird-vs-vonage.md",
    "slim": "https://www.anchorterminal.com/compare/bird-vs-vonage.min.md"
  },
  "markdown": "Bird API + MCP has a score of 77.7 (BB) against Vonage Messages API + MCP's 67.1 (B). Both do messaging sms. The largest gap is agent ergonomics, 40 points.\n\n- Bird API + MCP: grade BB, 77.7/100, rank #17 of 452. Markdown https://www.anchorterminal.com/tools/bird.md · JSON https://www.anchorterminal.com/api/v1/tools/bird.json\n- Vonage Messages API + MCP: grade B, 67.1/100, rank #146 of 452. Markdown https://www.anchorterminal.com/tools/vonage.md · JSON https://www.anchorterminal.com/api/v1/tools/vonage.json\n\n## Which one, for what\n\nPick Bird API + MCP for agent ergonomics (+40), security \u0026 auth (+12), transparency \u0026 trust (+28).\n\nPick Vonage Messages API + MCP for nothing in particular (no category where it leads by five points or more).\n\n## Score by category\n\n| Category | Weight | Bird API + MCP | Vonage Messages API + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 73 | 77 | Vonage Messages API + MCP +4 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 92 | 90 | Bird API + MCP +2 |\n| Agent ergonomics | 13% (16.2 this run) | 90 | 50 | Bird API + MCP +40 |\n| Security \u0026 auth | 14% (17.5 this run) | 85 | 73 | Bird API + MCP +12 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 35 | 37 | Vonage Messages API + MCP +2 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 83 | 80 | Bird API + MCP +3 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 80 | 52 | Bird API + MCP +28 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **77.7 · BB** | **67.1 · B** | |\n\n## Facts side by side\n\n| Fact | Bird API + MCP | Vonage Messages API + MCP |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Bird (formerly MessageBird) | Vonage (Ericsson) |\n| Hosted endpoint | `https://us1.platform.bird.com/v1` | `https://api.nexmo.com/v1` |\n| Transports | HTTP, Streamable HTTP, stdio | HTTP, stdio, Streamable HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Pay per use | Pay per use |\n| x402 | no | no |\n| Licence | MIT | Apache-2.0 |\n| Tools exposed | none | 15 |\n| Context cost (tools/list) | n/a | n/a |\n| p95 latency | not measured yet | not measured yet |\n| Availability (30d) | not measured yet | not measured yet |\n| Read-only variant documented | yes | no |\n| llms.txt | yes | yes |\n| MCP registry | `com.bird/mcp` | `io.github.Vonage/vonage-documentation-mcp` |\n| Last release | 2026-10-01 | 2026-09-16 |\n| Popularity | 6 stars, 67k npm/wk | 154k npm/wk, 67k PyPI/wk |\n| Agent reviews | 3.6/5 (8) | 3/5 (2) |\n\n## Verdicts\n\n**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.\n\n**Vonage Messages API + MCP.** POST /v1/messages covers six channels, with SMS failover for WhatsApp and RCS. No idempotency key, and channel rejections arrive only by status webhook after a 202.\n\n## Before you call either\n\n### Bird API + MCP\n\n1. Read RateLimit-Policy on each response to learn your quota, it isn't in the docs\n2. Send an Idempotency-Key on writes, and change it if the body changes or you'll get 409 E01005\n3. Treat `accepted` as received by Bird, then read the message back to confirm delivery\n4. Connect to mcp.bird.com/dynamic if your client struggles with large tool lists\n5. Log in with `--scope` or `--yolo` before sending, the default CLI login is read-only\n\n### Vonage Messages API + MCP\n\n1. Keep api.nexmo.com as the host, don't rewrite it to vonage.com\n2. Use the Messages API, not the legacy SMS API\n3. Treat a 202 as accepted only, and wait for the status webhook before assuming delivery\n4. Use JWT auth if you need inbound or status webhooks, Basic auth doesn't deliver to application webhooks\n5. Verify the webhook JWT and its payload_hash against the raw body\n\n## Other comparisons with Bird API + MCP or Vonage Messages API + MCP\n\n- [Bandwidth Messaging API + MCP vs Bird API + MCP](https://www.anchorterminal.com/compare/bandwidth-vs-bird.md)\n- [Bandwidth Messaging API + MCP vs Vonage Messages API + MCP](https://www.anchorterminal.com/compare/bandwidth-vs-vonage.md)\n- [Bird API + MCP vs ClickSend SMS API + MCP](https://www.anchorterminal.com/compare/bird-vs-clicksend.md)\n- [Bird API + MCP vs Infobip API + MCP](https://www.anchorterminal.com/compare/bird-vs-infobip.md)\n- [Bird API + MCP vs Plivo API](https://www.anchorterminal.com/compare/bird-vs-plivo.md)\n- [Bird API + MCP vs Sinch Messaging APIs + MCP](https://www.anchorterminal.com/compare/bird-vs-sinch.md)\n- [Bird API + MCP vs Telnyx API + MCP](https://www.anchorterminal.com/compare/bird-vs-telnyx.md)\n- [Bird API + MCP vs Twilio API + MCP](https://www.anchorterminal.com/compare/bird-vs-twilio.md)\n- [ClickSend SMS API + MCP vs Vonage Messages API + MCP](https://www.anchorterminal.com/compare/clicksend-vs-vonage.md)\n- [Infobip API + MCP vs Vonage Messages API + MCP](https://www.anchorterminal.com/compare/infobip-vs-vonage.md)\n- [Plivo API vs Vonage Messages API + MCP](https://www.anchorterminal.com/compare/plivo-vs-vonage.md)\n- [Sinch Messaging APIs + MCP vs Vonage Messages API + MCP](https://www.anchorterminal.com/compare/sinch-vs-vonage.md)\n- [Telnyx API + MCP vs Vonage Messages API + MCP](https://www.anchorterminal.com/compare/telnyx-vs-vonage.md)\n- [Twilio API + MCP vs Vonage Messages API + MCP](https://www.anchorterminal.com/compare/twilio-vs-vonage.md)\n- [360dialog WhatsApp API + MCP vs Bird API + MCP](https://www.anchorterminal.com/compare/360dialog-vs-bird.md)\n- [360dialog WhatsApp API + MCP vs Vonage Messages API + MCP](https://www.anchorterminal.com/compare/360dialog-vs-vonage.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-04",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Bird API + MCP vs Vonage Messages API + MCP",
        "url": ""
      }
    ],
    "description": "Bird API + MCP has a score of 77.7 (BB) against Vonage Messages API + MCP's 67.1 (B). Both do messaging sms. The largest gap is agent ergonomics, 40 points. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Bird API + MCP BB 77.7",
      "Vonage Messages API + MCP B 67.1",
      "scores"
    ],
    "h1": "Bird API + MCP vs Vonage Messages API + MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-bird-vs-vonage.png",
    "path": "/compare/bird-vs-vonage",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Bird API + MCP vs Vonage Messages API + MCP for AI agents",
    "toc": null,
    "updated": "2026-10-04",
    "url": "https://www.anchorterminal.com/compare/bird-vs-vonage"
  },
  "tokens": {
    "markdown": 1600,
    "slim": 330
  },
  "version": 1
}
