{
  "data": {
    "a": {
      "slug": "bandwidth",
      "name": "Bandwidth Messaging API + MCP",
      "vendor": "Bandwidth",
      "vendorUrl": "https://www.bandwidth.com",
      "kind": "http-api",
      "category": "messaging",
      "summary": "US carrier's messaging API for SMS, MMS and RCS over 10DLC, toll-free and short codes, with published US rates.",
      "url": "https://www.anchorterminal.com/tools/bandwidth",
      "markdownUrl": "https://www.anchorterminal.com/tools/bandwidth.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/bandwidth.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/bandwidth.json",
      "repo": "https://github.com/Bandwidth/mcp-server",
      "transports": [
        "http",
        "stdio",
        "streamable-http"
      ],
      "remoteUrl": "https://messaging.bandwidth.com/api/v2",
      "packages": [
        {
          "registry": "npm",
          "name": "bandwidth-sdk"
        },
        {
          "registry": "pypi",
          "name": "bandwidth-sdk"
        }
      ],
      "auth": "oauth",
      "authNotes": "OAuth 2.0 client credentials. Exchange the client ID and secret at api.bandwidth.com/api/v1/oauth2/token for a Bearer token. Legacy API users with Basic auth are being migrated. The MCP server takes BW_CLIENT_ID and BW_CLIENT_SECRET.",
      "pricing": "paid",
      "pricingNotes": "Messaging is contract-first with account-managed onboarding. Published US rates are 10DLC SMS $0.004 and MMS $0.015 a message, toll-free SMS $0.007 and MMS $0.020, short code SMS $0.008 and MMS $0.020. The Build free trial (3,000 credits, no card) covers voice and SIP only (https://www.bandwidth.com/pricing/).",
      "priceSummary": "Paid",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402 or stablecoin payment path in docs, pricing or agent discovery files (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 2,
        "npmWeekly": 12740,
        "pypiWeekly": 39218,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://dev.bandwidth.com",
      "llmsTxt": "https://dev.bandwidth.com/llms.txt",
      "openapi": "https://dev.bandwidth.com/spec/messaging.yml",
      "capabilities": [
        "messaging.sms",
        "messaging.mms",
        "messaging.rcs",
        "messaging.voice",
        "messaging.verify",
        "messaging.inbound"
      ],
      "tags": [
        "hosted",
        "mcp",
        "llms-txt",
        "openapi",
        "typescript",
        "python",
        "webhooks",
        "sms",
        "enterprise"
      ],
      "lastRelease": "2026-09-22",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 64.3,
        "grade": "B",
        "agentReady": false,
        "rank": 276,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 7,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 73,
          "maintenance": 78,
          "payments": 20,
          "reliability": 70,
          "schema": 86,
          "security": 55,
          "transparency": 63
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "10DLC SMS $0.004, toll-free $0.007 and short code $0.008 a message, published. Messaging accounts are onboarded by sales, and the free Build trial covers voice only.",
        "bestFor": "US and Canada senders at volume who want carrier-owned routes and will talk to sales.",
        "strengths": [
          "10DLC SMS $0.004, toll-free $0.007 and short code $0.008 a message, published",
          "OAuth 2.0 client credentials with roles, account scope and two-secret rotation",
          "A full queue returns 429 stating the allowed rate and queue size",
          "OpenAPI spec for messaging and llms.txt with Markdown pages",
          "MCP tool profiles keep a messaging agent to the send, list and media tools"
        ],
        "weaknesses": [
          "Messaging accounts are onboarded by sales, and the free Build trial covers voice only",
          "No callback signing found",
          "No SLA, sub-processor list or retention periods found",
          "The MCP is beta, installed by cloning the repo, with no licence file",
          "No security.txt, bug bounty or disclosure policy found"
        ],
        "agentNotes": [
          "Exchange the client ID and secret for a Bearer token first, tokens last 1 hour",
          "Set `BW_MCP_PROFILE=messaging` to 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"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 64.3
          }
        ],
        "editorialScores": {
          "ergonomics": 73,
          "maintenance": 78,
          "payments": 20,
          "reliability": 70,
          "schema": 86,
          "security": 55,
          "transparency": 35
        },
        "provenanceScore": 90
      },
      "connect": {
        "http": "curl -X POST \"https://messaging.bandwidth.com/api/v2/users/$BW_ACCOUNT_ID/messages\" -H \"Authorization: Bearer $BW_ACCESS_TOKEN\" \\\n  -H \"Content-Type: application/json\" -d '{\"to\":[\"+15555550123\"],\"from\":\"+15555550100\",\"text\":\"Hello from Bandwidth\",\"applicationId\":\"'$BW_MESSAGING_APPLICATION_ID'\"}'",
        "config": {
          "mcpServers": {
            "bandwidth": {
              "args": [
                "--from",
                "/path/to/mcp-server",
                "start"
              ],
              "command": "uvx",
              "env": {
                "BW_CLIENT_ID": "${BW_CLIENT_ID}",
                "BW_CLIENT_SECRET": "${BW_CLIENT_SECRET}",
                "BW_MCP_PROFILE": "messaging"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/messaging.sms",
        "tool": "https://letme.dev/bandwidth"
      },
      "sameCompany": [
        "bandwidth-voice"
      ],
      "area": "communication",
      "unitPrices": [
        {
          "item": "SMS outbound, US 10DLC",
          "unit": "message",
          "usd": 0.004,
          "note": "US, published list rate"
        },
        {
          "item": "SMS outbound, US toll-free",
          "unit": "message",
          "usd": 0.007,
          "note": "US"
        },
        {
          "item": "SMS outbound, US short code",
          "unit": "message",
          "usd": 0.008,
          "note": "US"
        },
        {
          "item": "MMS outbound, US 10DLC",
          "unit": "message",
          "usd": 0.015,
          "note": "US"
        }
      ],
      "provenance": {
        "legalEntity": "Bandwidth Inc.",
        "domain": "bandwidth.com",
        "domainRegistered": "1995-02-20",
        "endpointOnVendorDomain": true,
        "terms": "https://www.bandwidth.com/legal/communications-services-agreement/",
        "privacy": "https://www.bandwidth.com/legal/privacy/",
        "statusPage": "https://status.bandwidth.com",
        "changelog": "https://www.bandwidth.com/release-notes/",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "score": 90
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/bandwidth.json",
      "live": {
        "slug": "bandwidth",
        "probe": {
          "target": "https://messaging.bandwidth.com/api/v2",
          "method": "get",
          "lastAt": "2026-10-08T21:12:05.20321173Z",
          "lastOk": false,
          "lastStatus": 503,
          "lastMs": 324,
          "lastNote": "server error",
          "authRequired": false,
          "uptime24h": 0,
          "uptime30d": 0,
          "p50ms24h": 0,
          "p95ms24h": 0,
          "samples24h": 271,
          "samples30d": 2157,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 0
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 0
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 0
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 0
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 0
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 0
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 0
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 0
            },
            {
              "date": "2026-10-08",
              "probes": 239,
              "ok": 0
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.bandwidth.com",
          "indicator": "major",
          "summary": "Partial System Outage",
          "checkedAt": "2026-10-08T21:05:51.998944039Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "Bandwidth/mcp-server",
            "version": "v0.3.0",
            "released": "2026-06-11",
            "seenAt": "2026-10-08T16:01:58.630024128Z"
          },
          {
            "registry": "npm",
            "name": "bandwidth-sdk",
            "version": "8.3.0",
            "seenAt": "2026-10-08T16:01:54.898924522Z"
          },
          {
            "registry": "pypi",
            "name": "bandwidth-sdk",
            "version": "23.3.0",
            "released": "2026-09-22",
            "seenAt": "2026-10-08T16:01:56.554215185Z"
          }
        ],
        "githubStars": 2,
        "npmWeekly": 14835,
        "pypiWeekly": 31119,
        "securityTxt": {
          "url": "https://bandwidth.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:40.294505928Z"
        },
        "llmsTxt": {
          "url": "https://dev.bandwidth.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-08T14:00:07.706040851Z"
        },
        "domain": {
          "domain": "bandwidth.com",
          "registered": "1995-02-20",
          "source": "https://rdap.verisign.com/com/v1/domain/bandwidth.com",
          "checkedAt": "2026-10-04T13:08:39.296680691Z"
        },
        "updatedAt": "2026-10-08T21:12:05.20321173Z"
      }
    },
    "answer": "Bandwidth Messaging API + MCP scores 64.3 (B) on agent readiness against Sendblue's 61.7 (C), and leads in 4 of 7 scored categories. Sendblue leads on payments \u0026 pricing.",
    "b": {
      "slug": "sendblue",
      "name": "Sendblue",
      "vendor": "Round One, Inc.",
      "vendorUrl": "https://www.sendblue.com",
      "kind": "http-api",
      "category": "messaging",
      "summary": "Sendblue is a hosted API from Round One, Inc. for sending and receiving iMessage, RCS, SMS and MMS from dedicated or shared phone numbers. Agents use a REST API, TypeScript and Python SDKs, a CLI and an MCP server.",
      "url": "https://www.anchorterminal.com/tools/sendblue",
      "markdownUrl": "https://www.anchorterminal.com/tools/sendblue.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/sendblue.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/sendblue.json",
      "repo": "https://github.com/sendblue-api/sendblue-ts",
      "license": "Proprietary service under Round One, Inc.'s terms of service. The TypeScript and Python SDKs and the MCP server are Apache-2.0, and the CLI is MIT",
      "transports": [
        "http",
        "stdio"
      ],
      "remoteUrl": "https://api.sendblue.com",
      "packages": [
        {
          "registry": "npm",
          "name": "sendblue"
        },
        {
          "registry": "pypi",
          "name": "sendblue"
        },
        {
          "registry": "npm",
          "name": "sendblue-api-mcp"
        },
        {
          "registry": "npm",
          "name": "@sendblue/cli"
        }
      ],
      "auth": "api-key",
      "authNotes": "Every request carries the account's key pair in the `sb-api-key-id` and `sb-api-secret-key` headers, and requests from a browser are refused. The keys come from the dashboard or from `sendblue show-keys` after the CLI creates the account, which needs a person to text a one-time code or enter an email code. `POST /v3/auth/tokens` mints a temporary bearer token, account-wide or limited to named phone numbers, valid for 900 seconds by default and revocable. The MCP server reads `SENDBLUE_API_API_KEY` and `SENDBLUE_API_API_SECRET` from the environment. Agency subaccounts with their own keys need approval from support.",
      "pricing": "freemium",
      "pricingNotes": "Flat price per line with no per-message fee. The Free Sandbox is $0 with no card, on a shared number with up to 10 verified contacts. The AI Agent plan is $100 a month per dedicated line and is inbound-first. Proactive outbound messaging is on the Enterprise or Blue Ocean plan, priced through sales. The terms add 3 per cent for card payments and $60 per line to port a number out (https://www.sendblue.com/pricing, checked 2026-10-08).",
      "priceSummary": "$100 / mo",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, either `llms.txt`, the pricing page or the terms (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 18,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 249505,
        "pypiWeekly": 39912,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.sendblue.com",
      "llmsTxt": "https://docs.sendblue.com/llms.txt",
      "capabilities": [
        "messaging.sms",
        "messaging.mms",
        "messaging.rcs",
        "messaging.inbound",
        "messaging.verify"
      ],
      "tags": [
        "hosted",
        "imessage",
        "sms",
        "rcs",
        "mcp",
        "cli",
        "llms-txt",
        "typescript",
        "python",
        "webhooks",
        "no-card",
        "status-page"
      ],
      "lastRelease": "2026-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 61.7,
        "grade": "C",
        "agentReady": false,
        "rank": 358,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 9,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 76,
          "maintenance": 72,
          "payments": 40,
          "reliability": 71,
          "schema": 66,
          "security": 46,
          "transparency": 58
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Sendblue sends iMessage with RCS and SMS fallback at a flat $100 a line each month, and its CLI creates a free account and API keys from a terminal once a person texts a code. Proactive outbound messaging is sold through sales, no OpenAPI file is published, and the MCP package the docs install dates from August 2025.",
        "bestFor": "An agent that answers people over iMessage on a US number, where blue-bubble threads, typing indicators and reactions matter and the person texts first.",
        "strengths": [
          "One request to `/api/send-message` sends iMessage and can fall back to RCS or SMS, with no per-message fee on any plan",
          "The CLI creates a free account, a shared line and API keys from a terminal, with no card, once a person texts a one-time code",
          "Temporary bearer tokens from `/v3/auth/tokens` can be limited to named phone numbers, expire after 900 seconds by default and can be revoked",
          "Every docs page has a Markdown twin at `/index.md`, and `llms.txt` summarises each page with its limits and conditions",
          "Rate limits are published with numbers for each plan, and declined sends return an `error_key` an agent can branch on"
        ],
        "weaknesses": [
          "Proactive outbound messaging needs the Blue Ocean plan, which has no public price. The $100 AI Agent plan is inbound-first",
          "No OpenAPI file was found at any public address, although the SDKs and the reference are generated from one",
          "The docs install `sendblue-api-mcp`, last published on 5 August 2025 with 18 tools. The API now has 54 configured endpoints",
          "`/api/send-message` takes no idempotency key, and the SDKs retry 429 and 5xx responses twice by default",
          "No public DPA, sub-processor list, retention period, deprecation policy or security.txt was found"
        ],
        "agentNotes": [
          "Send `from_number` on every request. Read the account's numbers from `GET /api/lines` first, because a send without it fails",
          "On the free plan a recipient must text the Sendblue number once before any message to them is accepted",
          "Before a contact's first reply keep messages under 300 characters with no links, media, phone numbers or email addresses, and stop at six",
          "Branch on `error_key` in an HTTP 400 decline and don't retry it. Only HTTP 429 clears by waiting",
          "Set `maxRetries: 0` on sends where a duplicate matters, and treat `504 outcome_unknown` on group changes as possibly applied",
          "Mint a token at `/v3/auth/tokens` limited to one phone number for a sub-agent, and keep the account key pair out of its context"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 61.7
          }
        ],
        "editorialScores": {
          "ergonomics": 76,
          "maintenance": 72,
          "payments": 40,
          "reliability": 71,
          "schema": 66,
          "security": 46,
          "transparency": 29
        },
        "provenanceScore": 86
      },
      "connect": {
        "install": "npm install sendblue",
        "http": "curl -X POST https://api.sendblue.com/api/send-message \\\n  -H \"sb-api-key-id: $SENDBLUE_API_KEY_ID\" -H \"sb-api-secret-key: $SENDBLUE_API_KEY_SECRET\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"number\":\"+19998887777\",\"from_number\":\"+18887776666\",\"content\":\"Hello from Sendblue!\"}'",
        "claudeCode": "claude mcp add sendblue_api --env SENDBLUE_API_API_KEY=your-api-key --env SENDBLUE_API_API_SECRET=your-api-secret -- npx -y sendblue-api-mcp --client=claude-code --tools=all",
        "config": {
          "mcpServers": {
            "sendblue_api": {
              "args": [
                "-y",
                "sendblue-api-mcp",
                "--tools=all"
              ],
              "command": "npx",
              "env": {
                "SENDBLUE_API_API_KEY": "your-api-key",
                "SENDBLUE_API_API_SECRET": "your-api-secret"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/messaging.sms",
        "tool": "https://letme.dev/sendblue"
      },
      "area": "communication",
      "unitPrices": [
        {
          "item": "AI Agent plan, dedicated line",
          "unit": "month",
          "usd": 100,
          "note": "Per line, inbound-first, no per-message fee. Outbound plans are priced through sales"
        }
      ],
      "provenance": {
        "legalEntity": "Round One, Inc.",
        "domain": "sendblue.com",
        "domainRegistered": "2011-06-25",
        "endpointOnVendorDomain": true,
        "terms": "https://www.sendblue.com/terms-of-service",
        "privacy": "https://www.sendblue.com/privacy-policy",
        "statusPage": "https://status.sendblue.com",
        "changelog": "https://github.com/sendblue-api/sendblue-ts/blob/main/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The terms of service (effective 19 March 2025) and the privacy policy (effective 1 May 2024) both name Round One, Inc. as Sendblue. The site footer gives 344 West End Avenue, New York NY 10024.",
          "The terms cover registering for and using the services, so they govern API use. The privacy policy covers the website and the services and says Sendblue is a processor for its business customers.",
          "The API answers at api.sendblue.com, and the SDKs default to api.sendblue.co, a second domain the vendor uses.",
          "`/.well-known/security.txt` returns 404 on www.sendblue.com, docs.sendblue.com and api.sendblue.com.",
          "There is no API changelog in the docs. The changelog link is the TypeScript SDK's, whose recent entries mostly read as regenerated clients.",
          "RDAP for sendblue.com gives a registration date of 2011-06-25."
        ],
        "score": 86
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/sendblue.json",
      "live": {
        "slug": "sendblue",
        "probe": {
          "target": "https://api.sendblue.com",
          "method": "get",
          "lastAt": "2026-10-08T21:12:21.131570615Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 731,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 772,
          "p95ms24h": 921,
          "samples24h": 21,
          "samples30d": 21,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 21,
              "ok": 21
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.sendblue.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T19:39:09.808226694Z"
        },
        "updatedAt": "2026-10-08T21:12:21.131570615Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Bandwidth",
        "b": "Round One, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://messaging.bandwidth.com/api/v2",
        "b": "https://api.sendblue.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, stdio, Streamable HTTP",
        "b": "HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "$0.004 per message",
        "b": "not published",
        "name": "Price for messaging sms"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "Proprietary service under Round One, Inc.'s terms of service. The TypeScript and Python SDKs and the MCP server are Apache-2.0, and the CLI is MIT",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "18",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-22",
        "b": "2026-10-07",
        "name": "Last release"
      },
      {
        "a": "2025-09-11",
        "b": "2025-03-19",
        "name": "Terms last updated"
      },
      {
        "a": "2026-08-25",
        "b": "2024-05-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "2 stars, 13k npm/wk, 39k PyPI/wk",
        "b": "250k npm/wk, 40k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "3.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Bandwidth Messaging API + MCP scores 64.3 (B) on agent readiness against Sendblue's 61.7 (C), and leads in 4 of 7 scored categories. Sendblue leads on payments \u0026 pricing.",
        "question": "Which is better for AI agents, Bandwidth Messaging API + MCP or Sendblue?"
      },
      {
        "answer": "Bandwidth Messaging API + MCP uses an OAuth sign-in. Sendblue needs an API key.",
        "question": "Do Bandwidth Messaging API + MCP and Sendblue need an API key?"
      },
      {
        "answer": "Yes. Bandwidth Messaging API + MCP has a hosted endpoint at https://messaging.bandwidth.com/api/v2 and Sendblue at https://api.sendblue.com.",
        "question": "Can an agent call Bandwidth Messaging API + MCP and Sendblue without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 86 against 66",
          "Security \u0026 auth, 55 against 46",
          "Maintenance \u0026 community, 78 against 72",
          "Transparency \u0026 trust, 63 against 58"
        ],
        "also": null,
        "goodFor": "US and Canada senders at volume who want carrier-owned routes and will talk to sales.",
        "slug": "bandwidth",
        "watchFor": "Messaging accounts are onboarded by sales, and the free Build trial covers voice only"
      },
      {
        "aheadOn": [
          "Payments \u0026 pricing, 40 against 20"
        ],
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "An agent that answers people over iMessage on a US number, where blue-bubble threads, typing indicators and reactions matter and the person texts first.",
        "slug": "sendblue",
        "watchFor": "Proactive outbound messaging needs the Blue Ocean plan, which has no public price. The $100 AI Agent plan is inbound-first"
      }
    ],
    "job": {
      "capability": "messaging.sms",
      "name": "Messaging sms"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/aws-end-user-messaging-vs-bandwidth.json",
        "title": "AWS End User Messaging vs Bandwidth Messaging API + MCP",
        "url": "https://www.anchorterminal.com/compare/aws-end-user-messaging-vs-bandwidth"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aws-end-user-messaging-vs-sendblue.json",
        "title": "AWS End User Messaging vs Sendblue",
        "url": "https://www.anchorterminal.com/compare/aws-end-user-messaging-vs-sendblue"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bandwidth-vs-bird.json",
        "title": "Bandwidth Messaging API + MCP vs Bird API + MCP",
        "url": "https://www.anchorterminal.com/compare/bandwidth-vs-bird"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bandwidth-vs-clicksend.json",
        "title": "Bandwidth Messaging API + MCP vs ClickSend SMS API + MCP",
        "url": "https://www.anchorterminal.com/compare/bandwidth-vs-clicksend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bandwidth-vs-infobip.json",
        "title": "Bandwidth Messaging API + MCP vs Infobip API + MCP",
        "url": "https://www.anchorterminal.com/compare/bandwidth-vs-infobip"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bandwidth-vs-plivo.json",
        "title": "Bandwidth Messaging API + MCP vs Plivo API",
        "url": "https://www.anchorterminal.com/compare/bandwidth-vs-plivo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bandwidth-vs-sinch.json",
        "title": "Bandwidth Messaging API + MCP vs Sinch Messaging APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/bandwidth-vs-sinch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bandwidth-vs-telnyx.json",
        "title": "Bandwidth Messaging API + MCP vs Telnyx API + MCP",
        "url": "https://www.anchorterminal.com/compare/bandwidth-vs-telnyx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bandwidth-vs-twilio.json",
        "title": "Bandwidth Messaging API + MCP vs Twilio API + MCP",
        "url": "https://www.anchorterminal.com/compare/bandwidth-vs-twilio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bandwidth-vs-vonage.json",
        "title": "Bandwidth Messaging API + MCP vs Vonage Messages API + MCP",
        "url": "https://www.anchorterminal.com/compare/bandwidth-vs-vonage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bird-vs-sendblue.json",
        "title": "Bird API + MCP vs Sendblue",
        "url": "https://www.anchorterminal.com/compare/bird-vs-sendblue"
      },
      {
        "json": "https://www.anchorterminal.com/compare/clicksend-vs-sendblue.json",
        "title": "ClickSend SMS API + MCP vs Sendblue",
        "url": "https://www.anchorterminal.com/compare/clicksend-vs-sendblue"
      },
      {
        "json": "https://www.anchorterminal.com/compare/infobip-vs-sendblue.json",
        "title": "Infobip API + MCP vs Sendblue",
        "url": "https://www.anchorterminal.com/compare/infobip-vs-sendblue"
      },
      {
        "json": "https://www.anchorterminal.com/compare/plivo-vs-sendblue.json",
        "title": "Plivo API vs Sendblue",
        "url": "https://www.anchorterminal.com/compare/plivo-vs-sendblue"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sendblue-vs-sinch.json",
        "title": "Sendblue vs Sinch Messaging APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/sendblue-vs-sinch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sendblue-vs-telnyx.json",
        "title": "Sendblue vs Telnyx API + MCP",
        "url": "https://www.anchorterminal.com/compare/sendblue-vs-telnyx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sendblue-vs-twilio.json",
        "title": "Sendblue vs Twilio API + MCP",
        "url": "https://www.anchorterminal.com/compare/sendblue-vs-twilio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sendblue-vs-vonage.json",
        "title": "Sendblue vs Vonage Messages API + MCP",
        "url": "https://www.anchorterminal.com/compare/sendblue-vs-vonage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/360dialog-vs-bandwidth.json",
        "title": "360dialog WhatsApp API + MCP vs Bandwidth Messaging API + MCP",
        "url": "https://www.anchorterminal.com/compare/360dialog-vs-bandwidth"
      },
      {
        "json": "https://www.anchorterminal.com/compare/360dialog-vs-sendblue.json",
        "title": "360dialog WhatsApp API + MCP vs Sendblue",
        "url": "https://www.anchorterminal.com/compare/360dialog-vs-sendblue"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bandwidth-vs-whatsapp-cloud-api.json",
        "title": "Bandwidth Messaging API + MCP vs WhatsApp Business Platform (Cloud API)",
        "url": "https://www.anchorterminal.com/compare/bandwidth-vs-whatsapp-cloud-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sendblue-vs-whatsapp-cloud-api.json",
        "title": "Sendblue vs WhatsApp Business Platform (Cloud API)",
        "url": "https://www.anchorterminal.com/compare/sendblue-vs-whatsapp-cloud-api"
      }
    ],
    "scores": [
      {
        "bandwidth": 70,
        "by": 1,
        "edge": "sendblue",
        "key": "reliability",
        "name": "Reliability",
        "sendblue": 71,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "bandwidth": 86,
        "by": 20,
        "edge": "bandwidth",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "sendblue": 66,
        "weight": 13
      },
      {
        "bandwidth": 73,
        "by": 3,
        "edge": "sendblue",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "sendblue": 76,
        "weight": 13
      },
      {
        "bandwidth": 55,
        "by": 9,
        "edge": "bandwidth",
        "key": "security",
        "name": "Security \u0026 auth",
        "sendblue": 46,
        "weight": 14
      },
      {
        "bandwidth": 20,
        "by": 20,
        "edge": "sendblue",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "sendblue": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "bandwidth": 78,
        "by": 6,
        "edge": "bandwidth",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "sendblue": 72,
        "weight": 7
      },
      {
        "bandwidth": 63,
        "by": 5,
        "edge": "bandwidth",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "sendblue": 58,
        "weight": 7
      }
    ],
    "summary": "Bandwidth Messaging API + MCP scores 64.3 (B) on agent readiness against Sendblue's 61.7 (C), and leads in 4 of 7 scored categories. Sendblue leads on payments \u0026 pricing. Both do messaging sms.",
    "verdicts": {
      "bandwidth": "10DLC SMS $0.004, toll-free $0.007 and short code $0.008 a message, published. Messaging accounts are onboarded by sales, and the free Build trial covers voice only.",
      "sendblue": "Sendblue sends iMessage with RCS and SMS fallback at a flat $100 a line each month, and its CLI creates a free account and API keys from a terminal once a person texts a code. Proactive outbound messaging is sold through sales, no OpenAPI file is published, and the MCP package the docs install dates from August 2025."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/bandwidth-vs-sendblue",
    "json": "https://www.anchorterminal.com/compare/bandwidth-vs-sendblue.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/bandwidth-vs-sendblue.md",
    "slim": "https://www.anchorterminal.com/compare/bandwidth-vs-sendblue.min.md"
  },
  "markdown": "Bandwidth Messaging API + MCP scores 64.3 (B) on agent readiness against Sendblue's 61.7 (C), and leads in 4 of 7 scored categories. Sendblue leads on payments \u0026 pricing. Both do messaging sms.\n\n- Bandwidth Messaging API + MCP: grade B, 64.3/100, rank #276 of 722. Markdown https://www.anchorterminal.com/tools/bandwidth.md · JSON https://www.anchorterminal.com/api/v1/tools/bandwidth.json\n- Sendblue: grade C, 61.7/100, rank #358 of 722. Markdown https://www.anchorterminal.com/tools/sendblue.md · JSON https://www.anchorterminal.com/api/v1/tools/sendblue.json\n\n## Which one, for what\n\n### Bandwidth Messaging API + MCP (B)\n\nGood for: US and Canada senders at volume who want carrier-owned routes and will talk to sales.\n\nAhead on:\n- Schema \u0026 documentation, 86 against 66\n- Security \u0026 auth, 55 against 46\n- Maintenance \u0026 community, 78 against 72\n- Transparency \u0026 trust, 63 against 58\n\nWatch for: Messaging accounts are onboarded by sales, and the free Build trial covers voice only\n\n### Sendblue (C)\n\nGood for: An agent that answers people over iMessage on a US number, where blue-bubble threads, typing indicators and reactions matter and the person texts first.\n\nAhead on:\n- Payments \u0026 pricing, 40 against 20\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: Proactive outbound messaging needs the Blue Ocean plan, which has no public price. The $100 AI Agent plan is inbound-first\n\n\n## Score by category\n\n| Category | Weight | Bandwidth Messaging API + MCP | Sendblue | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 70 | 71 | Sendblue +1 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 86 | 66 | Bandwidth Messaging API + MCP +20 |\n| Agent ergonomics | 13% (16.2 this run) | 73 | 76 | Sendblue +3 |\n| Security \u0026 auth | 14% (17.5 this run) | 55 | 46 | Bandwidth Messaging API + MCP +9 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 40 | Sendblue +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 78 | 72 | Bandwidth Messaging API + MCP +6 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 63 | 58 | Bandwidth Messaging API + MCP +5 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **64.3 · B** | **61.7 · C** | |\n\n## Facts side by side\n\n| Fact | Bandwidth Messaging API + MCP | Sendblue |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Bandwidth | Round One, Inc. |\n| Hosted endpoint | `https://messaging.bandwidth.com/api/v2` | `https://api.sendblue.com` |\n| Transports | HTTP, stdio, Streamable HTTP | HTTP, stdio |\n| Auth | OAuth | API key |\n| Pricing | Paid | Freemium |\n| Price for messaging sms | $0.004 per message | not published |\n| x402 | no | no |\n| Licence | none | Proprietary service under Round One, Inc.'s terms of service. The TypeScript and Python SDKs and the MCP server are Apache-2.0, and the CLI is MIT |\n| Tools exposed | none | 18 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-09-22 | 2026-10-07 |\n| Terms last updated | 2025-09-11 | 2025-03-19 |\n| Privacy policy last updated | 2026-08-25 | 2024-05-01 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | 2 stars, 13k npm/wk, 39k PyPI/wk | 250k npm/wk, 40k PyPI/wk |\n| Agent reviews | 3.5/5 (2) | none |\n\n## Verdicts\n\n**Bandwidth Messaging API + MCP.** 10DLC SMS $0.004, toll-free $0.007 and short code $0.008 a message, published. Messaging accounts are onboarded by sales, and the free Build trial covers voice only.\n\n**Sendblue.** Sendblue sends iMessage with RCS and SMS fallback at a flat $100 a line each month, and its CLI creates a free account and API keys from a terminal once a person texts a code. Proactive outbound messaging is sold through sales, no OpenAPI file is published, and the MCP package the docs install dates from August 2025.\n\n## Before you call either\n\n### Bandwidth Messaging API + MCP\n\n1. Exchange the client ID and secret for a Bearer token first, tokens last 1 hour\n2. Set `BW_MCP_PROFILE=messaging` to load only the messaging tools\n3. Pass at least one filter to listMessages, with millisecond-precision timestamps\n4. On a 429, read the allowed rate in the error and pace sends to it\n\n### Sendblue\n\n1. Send `from_number` on every request. Read the account's numbers from `GET /api/lines` first, because a send without it fails\n2. On the free plan a recipient must text the Sendblue number once before any message to them is accepted\n3. Before a contact's first reply keep messages under 300 characters with no links, media, phone numbers or email addresses, and stop at six\n4. Branch on `error_key` in an HTTP 400 decline and don't retry it. Only HTTP 429 clears by waiting\n5. Set `maxRetries: 0` on sends where a duplicate matters, and treat `504 outcome_unknown` on group changes as possibly applied\n6. Mint a token at `/v3/auth/tokens` limited to one phone number for a sub-agent, and keep the account key pair out of its context\n\n## Questions\n\n### Which is better for AI agents, Bandwidth Messaging API + MCP or Sendblue?\n\nBandwidth Messaging API + MCP scores 64.3 (B) on agent readiness against Sendblue's 61.7 (C), and leads in 4 of 7 scored categories. Sendblue leads on payments \u0026 pricing.\n\n### Do Bandwidth Messaging API + MCP and Sendblue need an API key?\n\nBandwidth Messaging API + MCP uses an OAuth sign-in. Sendblue needs an API key.\n\n### Can an agent call Bandwidth Messaging API + MCP and Sendblue without installing anything?\n\nYes. Bandwidth Messaging API + MCP has a hosted endpoint at https://messaging.bandwidth.com/api/v2 and Sendblue at https://api.sendblue.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/bandwidth-vs-sendblue.json, and with the fewest tokens: https://www.anchorterminal.com/compare/bandwidth-vs-sendblue.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"bandwidth\", \"b\": \"sendblue\"}`. From a terminal: `anchor compare bandwidth sendblue`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/bandwidth.json and https://www.anchorterminal.com/api/v1/tools/sendblue.json\n\n## Other comparisons with Bandwidth Messaging API + MCP or Sendblue\n\n- [AWS End User Messaging vs Bandwidth Messaging API + MCP](https://www.anchorterminal.com/compare/aws-end-user-messaging-vs-bandwidth.md)\n- [AWS End User Messaging vs Sendblue](https://www.anchorterminal.com/compare/aws-end-user-messaging-vs-sendblue.md)\n- [Bandwidth Messaging API + MCP vs Bird API + MCP](https://www.anchorterminal.com/compare/bandwidth-vs-bird.md)\n- [Bandwidth Messaging API + MCP vs ClickSend SMS API + MCP](https://www.anchorterminal.com/compare/bandwidth-vs-clicksend.md)\n- [Bandwidth Messaging API + MCP vs Infobip API + MCP](https://www.anchorterminal.com/compare/bandwidth-vs-infobip.md)\n- [Bandwidth Messaging API + MCP vs Plivo API](https://www.anchorterminal.com/compare/bandwidth-vs-plivo.md)\n- [Bandwidth Messaging API + MCP vs Sinch Messaging APIs + MCP](https://www.anchorterminal.com/compare/bandwidth-vs-sinch.md)\n- [Bandwidth Messaging API + MCP vs Telnyx API + MCP](https://www.anchorterminal.com/compare/bandwidth-vs-telnyx.md)\n- [Bandwidth Messaging API + MCP vs Twilio API + MCP](https://www.anchorterminal.com/compare/bandwidth-vs-twilio.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 Sendblue](https://www.anchorterminal.com/compare/bird-vs-sendblue.md)\n- [ClickSend SMS API + MCP vs Sendblue](https://www.anchorterminal.com/compare/clicksend-vs-sendblue.md)\n- [Infobip API + MCP vs Sendblue](https://www.anchorterminal.com/compare/infobip-vs-sendblue.md)\n- [Plivo API vs Sendblue](https://www.anchorterminal.com/compare/plivo-vs-sendblue.md)\n- [Sendblue vs Sinch Messaging APIs + MCP](https://www.anchorterminal.com/compare/sendblue-vs-sinch.md)\n- [Sendblue vs Telnyx API + MCP](https://www.anchorterminal.com/compare/sendblue-vs-telnyx.md)\n- [Sendblue vs Twilio API + MCP](https://www.anchorterminal.com/compare/sendblue-vs-twilio.md)\n- [Sendblue vs Vonage Messages API + MCP](https://www.anchorterminal.com/compare/sendblue-vs-vonage.md)\n- [360dialog WhatsApp API + MCP vs Bandwidth Messaging API + MCP](https://www.anchorterminal.com/compare/360dialog-vs-bandwidth.md)\n- [360dialog WhatsApp API + MCP vs Sendblue](https://www.anchorterminal.com/compare/360dialog-vs-sendblue.md)\n- [Bandwidth Messaging API + MCP vs WhatsApp Business Platform (Cloud API)](https://www.anchorterminal.com/compare/bandwidth-vs-whatsapp-cloud-api.md)\n- [Sendblue vs WhatsApp Business Platform (Cloud API)](https://www.anchorterminal.com/compare/sendblue-vs-whatsapp-cloud-api.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "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": "Bandwidth Messaging API + MCP vs Sendblue",
        "url": ""
      }
    ],
    "description": "Bandwidth Messaging API + MCP scores 64.3 (B) on agent readiness against Sendblue's 61.7 (C), and leads in 4 of 7 scored categories. Sendblue leads on payments \u0026 pricing. Both do messaging sms. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Bandwidth Messaging API + MCP B 64.3",
      "Sendblue C 61.7",
      "scores"
    ],
    "h1": "Bandwidth Messaging API + MCP vs Sendblue",
    "image": "https://www.anchorterminal.com/assets/og/compare-bandwidth-vs-sendblue.png",
    "path": "/compare/bandwidth-vs-sendblue",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Bandwidth Messaging API + MCP vs Sendblue for AI agents",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/bandwidth-vs-sendblue"
  },
  "tokens": {
    "markdown": 2450,
    "slim": 680
  },
  "version": 1
}
