{
  "data": {
    "a": {
      "slug": "braze",
      "name": "Braze",
      "vendor": "Braze, Inc.",
      "vendorUrl": "https://www.braze.com",
      "kind": "http-api",
      "category": "lifecycle-marketing",
      "summary": "Braze is a hosted engagement platform that stores customer profiles and events, builds segments and sends campaigns and Canvas journeys by email, SMS, push and in-app message. Agents reach it through a REST API and an official remote MCP server.",
      "url": "https://www.anchorterminal.com/tools/braze",
      "markdownUrl": "https://www.anchorterminal.com/tools/braze.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/braze.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/braze.json",
      "license": "Proprietary service under Braze's Main Subscription Agreement. The deprecated local MCP server on PyPI is MIT",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://mcp.braze.com/mcp",
      "packages": [],
      "auth": "mixed",
      "authNotes": "Access follows a Braze contract or trial, with no app review or partner approval. The REST API takes a workspace API key as a Bearer header at the instance's own host (15 instances, such as https://rest.iad-01.braze.com). A dashboard user creates the key with per-endpoint permissions such as `users.track` or `campaigns.list` and an optional IP allowlist, and neither can be edited afterwards. The remote MCP server takes only OAuth (authorisation code with PKCE S256, dynamic client registration, scopes `mcp:tools`, `mcp:resources` and `mcp:operator`). A company admin must turn on MCP OAuth access, each user needs the Use MCP Server permission per workspace, and calls run with that user's dashboard permissions. Companies that use IP allowlisting can't use the MCP server.",
      "pricing": "paid",
      "pricingNotes": "No public prices. Braze sells four editions (Go, Select, Pro, Enterprise) by contract, sized by monthly active users and Action Credits, and the pricing page says there is no free plan. A 14-day free trial is open at try.braze.com, and we couldn't read whether it asks for a card. There's no separate sandbox, and API and MCP calls aren't priced on their own (https://www.braze.com/pricing, checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, the MCP pages or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 71,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://www.braze.com/docs/api/home",
      "llmsTxt": "https://www.braze.com/llms.txt",
      "capabilities": [
        "marketing.profiles",
        "marketing.events",
        "marketing.campaigns",
        "marketing.journeys",
        "marketing.segments"
      ],
      "tags": [
        "official",
        "hosted",
        "mcp",
        "oauth",
        "api-key",
        "closed-source",
        "llms-txt",
        "sales-led",
        "enterprise",
        "eu-region",
        "status-page",
        "soc2"
      ],
      "lastRelease": "2026-09-17",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 61.2,
        "grade": "C",
        "agentReady": false,
        "rank": 475,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 50,
          "maintenance": 69,
          "payments": 10,
          "reliability": 70,
          "schema": 68,
          "security": 77,
          "transparency": 83
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The REST API covers profiles, events, sends and exports with keys limited to named endpoints, and the remote MCP server adds 71 tools under OAuth with PKCE that return no user-level personal data. No OpenAPI document, idempotency keys, published price or SLA were found, and MCP writes run without a confirmation step.",
        "bestFor": "A company already on Braze that wants an agent to read campaign and Canvas results, manage catalogues and templates through MCP, or write profiles and trigger sends through REST.",
        "strengths": [
          "REST API keys carry per-endpoint permissions and optional IP allowlists, and a key's scope can't be edited after creation",
          "Remote MCP server with OAuth, PKCE S256, dynamic client registration and three scopes, generally available since 17 September 2026",
          "MCP tools return no user-level personal data, and the Use MCP Server permission is off by default for each workspace",
          "Rate limits published per endpoint, with `X-RateLimit-Limit`, `-Remaining` and `-Reset` headers on every response",
          "Sub-processor list of 1 June 2026 with locations, 30 days' notice of additions and hosting regions named for six countries or regions"
        ],
        "weaknesses": [
          "No public prices. Editions, monthly active users and Action Credits are sold by contract, and the pricing page says there is no free plan",
          "No OpenAPI document found. The machine-readable contract is a public Postman collection",
          "No idempotency keys on sends or `/users/track`, and Braze says it can't replay REST calls that fail during an incident",
          "71 MCP tools with no documented toolsets, 21 of them limited to beta programmes",
          "Edits made through individual MCP update tools don't appear in campaign edit history, and Operator Connect acts without per-step approval"
        ],
        "agentNotes": [
          "Use the REST host for the customer's instance, such as https://rest.iad-01.braze.com or https://rest.fra-01.braze.eu. A key sent to the wrong instance returns 401",
          "Create a REST key with only the permissions the task needs. Scope and IP allowlist can't be edited later, so a change means a new key",
          "Call `get_workspaces` first on MCP. Every other tool needs the returned workspace id as `app_group_id`, and the wrong workspace is a documented failure",
          "Use REST for profiles, events and sends. The MCP server has no user-level tools and can't trigger a message to a named user",
          "Treat `\"message\": \"success\"` as queued, not delivered. Add a `group_id` to `/users/track` and poll `/users/track/status`, and don't resend a trigger call blindly"
        ],
        "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.2
          }
        ],
        "editorialScores": {
          "ergonomics": 50,
          "maintenance": 69,
          "payments": 10,
          "reliability": 70,
          "schema": 68,
          "security": 77,
          "transparency": 69
        },
        "provenanceScore": 96
      },
      "connect": {
        "http": "curl --location -g --request GET 'https://rest.iad-01.braze.com/campaigns/list?page=0\u0026include_archived=false\u0026sort_direction=desc' \\\n--header 'Authorization: Bearer YOUR-REST-API-KEY'",
        "config": {
          "mcpServers": {
            "braze": {
              "url": "https://mcp.braze.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/marketing.profiles",
        "tool": "https://letme.dev/braze"
      },
      "area": "communication",
      "provenance": {
        "legalEntity": "Braze, Inc.",
        "domain": "braze.com",
        "domainRegistered": "2000-01-19",
        "endpointOnVendorDomain": true,
        "terms": "https://www.braze.com/company/legal/terms",
        "privacy": "https://www.braze.com/company/legal/privacy",
        "statusPage": "https://status.braze.com",
        "changelog": "https://www.braze.com/docs/releases/home",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The Main Subscription Agreement (last updated 13 October 2025) names Braze, Inc., and the privacy policy (last updated 23 June 2026) says it is a U.S. company headquartered in New York.",
          "REST hosts are on braze.com for the US, Australia, Indonesia, Japan and South Korea and on braze.eu for the EU. The MCP server is at mcp.braze.com and mcp.braze.eu.",
          "www.braze.com/.well-known/security.txt expires 2031-01-01, gives security@braze.com and points its policy to hackerone.com/braze_inc.",
          "status.braze.com redirects to braze.statuspage.io.",
          "RDAP for braze.com gives a registration date of 2000-01-19.",
          "The DPA (revision 28 August 2025), the sub-processor list (1 June 2026) and the security datasheet (14 April 2026) are PDFs linked from braze.com/company/legal."
        ],
        "score": 96
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/braze.json",
      "live": {
        "slug": "braze",
        "probe": {
          "target": "https://mcp.braze.com/mcp",
          "method": "get",
          "lastAt": "2026-10-10T02:07:03.594755498Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 286,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 264,
          "p95ms24h": 321,
          "samples24h": 250,
          "samples30d": 365,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 93,
              "ok": 93
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 22,
              "ok": 22
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.braze.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-10T02:05:41.176545857Z"
        },
        "securityTxt": {
          "url": "https://braze.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2031-01-01T04:59:00.000Z",
          "checkedAt": "2026-10-09T15:39:14.628128708Z"
        },
        "llmsTxt": {
          "url": "https://www.braze.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-09T14:01:33.091319643Z"
        },
        "pages": [
          {
            "url": "https://www.braze.com/docs/releases/home",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:48:47.398523901Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c84a0deb311a"
          },
          {
            "url": "https://www.braze.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-09T18:48:49.453568781Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "90f9bf6b6c9c"
          },
          {
            "url": "https://www.braze.com/company/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:48:43.014694678Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "2328a04f813f"
          },
          {
            "url": "https://www.braze.com/company/legal/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:48:45.151722455Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "066935a8590e"
          }
        ],
        "updatedAt": "2026-10-10T02:07:03.594755498Z"
      }
    },
    "answer": "MoEngage scores 65.2 (B) on agent readiness against Braze's 61.2 (C), and leads in 4 of 7 scored categories. Braze leads on security \u0026 auth, payments \u0026 pricing and transparency \u0026 trust.",
    "b": {
      "slug": "moengage",
      "name": "MoEngage",
      "vendor": "MoEngage, Inc.",
      "vendorUrl": "https://www.moengage.com",
      "kind": "http-api",
      "category": "lifecycle-marketing",
      "summary": "MoEngage is a hosted customer engagement platform that stores user profiles and events, builds segments and sends campaigns and flows by push, email, SMS and WhatsApp. Agents reach it through REST APIs and a hosted MCP server.",
      "url": "https://www.anchorterminal.com/tools/moengage",
      "markdownUrl": "https://www.anchorterminal.com/tools/moengage.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/moengage.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/moengage.json",
      "license": "Proprietary service under MoEngage's Terms of Use and a customer agreement",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://mcp.moengage.com",
      "packages": [],
      "auth": "mixed",
      "authNotes": "Access needs a MoEngage customer workspace, which is sold through sales. A dashboard user creates API keys under Settings, Account, APIs. The default is HTTP Basic with the Workspace ID as username and the API key as password, with separate keys for Data, Push, Inform, Campaigns and Personalise. An API key dashboard, in early access and enabled on request, adds named keys scoped to chosen API groups, OAuth 2.0 client credentials (access tokens of 5 to 60 minutes, refresh tokens of 30 days, issued at `https://oauth2-{dc}.moengage.com`) and AWS STS role ARNs. Segmentation and Inform accept Basic only. The MCP server uses OAuth with the user's own MoEngage login and role, a second factor, and a 30-day session with a 7-day idle timeout. No app review or partner approval was found.",
      "pricing": "paid",
      "pricingNotes": "No public prices. https://www.moengage.com/plans-and-pricing/ lists Growth and Enterprise plans, counted in monthly tracked users, with a sales contact and a one-year minimum commitment. No free tier, trial or self-serve signup was found. Each workspace has Live and Test environments and Inform has a sandbox host, but both sit inside a customer account, so an agent can't start without a contract. API and MCP calls aren't priced per call in any page read (checked 2026-10-09).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API documentation, the OpenAPI files, the pricing page or the legal pages (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": 52,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://www.moengage.com/docs/api/introduction",
      "llmsTxt": "https://www.moengage.com/docs/llms.txt",
      "openapi": "https://www.moengage.com/docs/api/data/data.yaml",
      "capabilities": [
        "marketing.profiles",
        "marketing.events",
        "marketing.segments",
        "marketing.campaigns",
        "marketing.journeys",
        "email.templates",
        "notify.push"
      ],
      "tags": [
        "official",
        "hosted",
        "mcp",
        "oauth",
        "api-key",
        "openapi",
        "llms-txt",
        "closed-source",
        "sales-led",
        "enterprise",
        "eu-region",
        "status-page",
        "soc2",
        "sla"
      ],
      "lastRelease": "2026-10-09",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 65.2,
        "grade": "B",
        "agentReady": false,
        "rank": 327,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 3,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 68,
          "maintenance": 75,
          "payments": 0,
          "reliability": 74,
          "schema": 87,
          "security": 69,
          "transparency": 75
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": 0,
        "verdict": "MoEngage publishes 36 OpenAPI files covering 140 operations, a per-endpoint rate limit table, Markdown docs and a hosted MCP server that builds drafts and leaves publishing to a person. No price, trial or self-serve signup is published, and on 17 August 2026 the Inform API in one data centre accepted requests for about 16 hours without sending the messages.",
        "bestFor": "A team already on MoEngage that wants an agent to update profiles, track events, build filter segments, draft Push and Email campaigns and read campaign, flow and analytics results.",
        "strengths": [
          "36 public OpenAPI files with 140 operations, every one with a summary and description, and a 429 response documented on 103",
          "A rate limit table with numbers for every endpoint group, plus `x-ratelimit-limit`, `x-ratelimit-remaining` and `x-ratelimit-reset` response headers",
          "The hosted MCP server at mcp.moengage.com uses OAuth tied to the user's role, masks PII attributes and cannot publish a campaign",
          "API keys can be scoped to chosen API groups, use OAuth 2.0 tokens of 5 to 60 minutes or AWS STS roles, and be limited by IP address",
          "A published SLA of 99.9 per cent monthly availability, a public DPA and a sub-processor list with locations dated 1 September 2026"
        ],
        "weaknesses": [
          "No public price, free tier or trial. The pricing page lists Growth and Enterprise plans with a one-year minimum and a sales contact only",
          "On 17 August 2026 the Inform API in DC-03 returned HTTP 200 for about 16 hours while some messages were never sent, per the status page",
          "Scoped keys, OAuth 2.0 and AWS STS keys sit in an API key dashboard that is in early access and enabled on request",
          "Segmentation and Inform accept Basic authentication only, and new Push API keys can't be created",
          "No API deprecation policy was found, and no official server-side API client library was found in the documentation"
        ],
        "agentNotes": [
          "Take the data centre number from the dashboard URL and call `https://api-{dc}.moengage.com`. Data can't be moved between data centres",
          "Send an `Idempotency-Key` header (UUID v4) on V5 campaign writes and test sends, and a `transaction_id` on Inform alerts, which deduplicates for 5 minutes",
          "Use internal event and attribute names in segment filters, and run `deep_validate_segment_filters` first. A wrong event name is accepted and the count later fails with no reason",
          "Use `in` with a list for text equality in segment filters. `equals` returns a 400 that names no field",
          "Reuse an OAuth access token until it nears expiry. The token endpoint allows 5 requests a minute and 30 per 10 minutes for each key"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 65.2
          }
        ],
        "editorialScores": {
          "ergonomics": 68,
          "maintenance": 75,
          "payments": 0,
          "reliability": 74,
          "schema": 87,
          "security": 69,
          "transparency": 60
        },
        "provenanceScore": 89
      },
      "connect": {
        "http": "curl --request POST \\\n  --url https://api-{dc}.moengage.com/v1/customer/YOUR_WORKSPACE_ID \\\n  --header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \\\n  --header 'Content-Type: application/json' \\\n  --data '{ \"type\": \"customer\", \"customer_id\": \"user_12345\" }'",
        "config": {
          "mcpServers": {
            "moengage": {
              "url": "https://mcp.moengage.com"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/marketing.profiles",
        "tool": "https://letme.dev/moengage"
      },
      "area": "communication",
      "provenance": {
        "legalEntity": "MoEngage, Inc.",
        "domain": "moengage.com",
        "domainRegistered": "2014-04-19",
        "endpointOnVendorDomain": true,
        "terms": "https://www.moengage.com/terms-of-use/",
        "privacy": "https://www.moengage.com/privacy-policy/",
        "statusPage": "https://status.moengage.com",
        "changelog": "https://www.moengage.com/docs/release-notes/product/2026/september-2026",
        "securityTxt": "none",
        "checked": "2026-10-09",
        "notes": [
          "The Terms of Use name MoEngage, Inc., a Delaware corporation, and say they govern the website and related software and services. They carry no date. The DPA and sub-processor list name MoEngage Global Inc.",
          "The acceptable use policy (last updated 14 May 2026) refers to a Master Service Agreement between MoEngage and its customers. That agreement isn't published.",
          "The privacy policy was last updated on 26 August 2026 and covers MoEngage as processor for its customers' end users.",
          "The API answers at api-{dc}.moengage.com and the MCP server at mcp.moengage.com, both on the vendor's domain.",
          "https://www.moengage.com/.well-known/security.txt returns 404. Reports go to the address in the responsible disclosure policy.",
          "Release notes are one page a month under /docs/release-notes/product/, with separate dated changelogs for each SDK.",
          "RDAP for moengage.com gives a registration date of 2014-04-19."
        ],
        "score": 89
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/moengage.json",
      "live": {
        "slug": "moengage",
        "probe": {
          "target": "https://mcp.moengage.com",
          "method": "get",
          "lastAt": "2026-10-10T02:07:17.081239677Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 34,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 99.07,
          "uptime30d": 99.07,
          "p50ms24h": 37,
          "p95ms24h": 135,
          "samples24h": 107,
          "samples30d": 107,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 85,
              "ok": 85
            },
            {
              "date": "2026-10-10",
              "probes": 22,
              "ok": 21
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.moengage.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-10T02:06:08.780599416Z"
        },
        "pages": [
          {
            "url": "https://www.moengage.com/docs/release-notes/product/2026/september-2026",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:52:19.636830436Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "01e807658b5c"
          },
          {
            "url": "https://www.moengage.com/plans-and-pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-09T18:52:23.984233527Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "159b4036728b"
          },
          {
            "url": "https://www.moengage.com/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:52:24.146105363Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "cf0f65af7274"
          },
          {
            "url": "https://www.moengage.com/terms-of-use/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:52:26.055494253Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "3a3cf18334cc"
          }
        ],
        "updatedAt": "2026-10-10T02:07:17.081239677Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Braze, Inc.",
        "b": "MoEngage, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://mcp.braze.com/mcp",
        "b": "https://mcp.moengage.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Braze's Main Subscription Agreement. The deprecated local MCP server on PyPI is MIT",
        "b": "Proprietary service under MoEngage's Terms of Use and a customer agreement",
        "name": "Licence"
      },
      {
        "a": "71",
        "b": "52",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-17",
        "b": "2026-10-09",
        "name": "Last release"
      },
      {
        "a": "2025-10-13",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "2026-06-23",
        "b": "2026-08-26",
        "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": "yes",
        "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": "not found in the text",
        "name": "Arbitration or class-action waiver"
      }
    ],
    "faq": [
      {
        "answer": "MoEngage scores 65.2 (B) on agent readiness against Braze's 61.2 (C), and leads in 4 of 7 scored categories. Braze leads on security \u0026 auth, payments \u0026 pricing and transparency \u0026 trust.",
        "question": "Which is better for AI agents, Braze or MoEngage?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Braze and MoEngage need an API key?"
      },
      {
        "answer": "Yes. Braze has a hosted endpoint at https://mcp.braze.com/mcp and MoEngage at https://mcp.moengage.com.",
        "question": "Can an agent call Braze and MoEngage without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Security \u0026 auth, 77 against 69",
          "Payments \u0026 pricing, 10 against 0",
          "Transparency \u0026 trust, 83 against 75"
        ],
        "also": null,
        "goodFor": "A company already on Braze that wants an agent to read campaign and Canvas results, manage catalogues and templates through MCP, or write profiles and trigger sends through REST.",
        "slug": "braze",
        "watchFor": "No public prices. Editions, monthly active users and Action Credits are sold by contract, and the pricing page says there is no free plan"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 87 against 68",
          "Agent ergonomics, 68 against 50",
          "Maintenance \u0026 community, 75 against 69"
        ],
        "also": null,
        "goodFor": "A team already on MoEngage that wants an agent to update profiles, track events, build filter segments, draft Push and Email campaigns and read campaign, flow and analytics results.",
        "slug": "moengage",
        "watchFor": "No public price, free tier or trial. The pricing page lists Growth and Enterprise plans with a one-year minimum and a sales contact only"
      }
    ],
    "job": {
      "capability": "marketing.profiles",
      "name": "Marketing audiences"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/activecampaign-vs-braze.json",
        "title": "ActiveCampaign vs Braze",
        "url": "https://www.anchorterminal.com/compare/activecampaign-vs-braze"
      },
      {
        "json": "https://www.anchorterminal.com/compare/activecampaign-vs-moengage.json",
        "title": "ActiveCampaign vs MoEngage",
        "url": "https://www.anchorterminal.com/compare/activecampaign-vs-moengage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/braze-vs-clevertap.json",
        "title": "Braze vs CleverTap",
        "url": "https://www.anchorterminal.com/compare/braze-vs-clevertap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/braze-vs-customer-io.json",
        "title": "Braze vs Customer.io",
        "url": "https://www.anchorterminal.com/compare/braze-vs-customer-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/braze-vs-iterable.json",
        "title": "Braze vs Iterable",
        "url": "https://www.anchorterminal.com/compare/braze-vs-iterable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/braze-vs-klaviyo.json",
        "title": "Braze vs Klaviyo API + MCP",
        "url": "https://www.anchorterminal.com/compare/braze-vs-klaviyo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/braze-vs-mailchimp-marketing.json",
        "title": "Braze vs Mailchimp Marketing API",
        "url": "https://www.anchorterminal.com/compare/braze-vs-mailchimp-marketing"
      },
      {
        "json": "https://www.anchorterminal.com/compare/braze-vs-omnisend.json",
        "title": "Braze vs Omnisend",
        "url": "https://www.anchorterminal.com/compare/braze-vs-omnisend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/clevertap-vs-moengage.json",
        "title": "CleverTap vs MoEngage",
        "url": "https://www.anchorterminal.com/compare/clevertap-vs-moengage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/customer-io-vs-moengage.json",
        "title": "Customer.io vs MoEngage",
        "url": "https://www.anchorterminal.com/compare/customer-io-vs-moengage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/iterable-vs-moengage.json",
        "title": "Iterable vs MoEngage",
        "url": "https://www.anchorterminal.com/compare/iterable-vs-moengage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/klaviyo-vs-moengage.json",
        "title": "Klaviyo API + MCP vs MoEngage",
        "url": "https://www.anchorterminal.com/compare/klaviyo-vs-moengage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mailchimp-marketing-vs-moengage.json",
        "title": "Mailchimp Marketing API vs MoEngage",
        "url": "https://www.anchorterminal.com/compare/mailchimp-marketing-vs-moengage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/moengage-vs-omnisend.json",
        "title": "MoEngage vs Omnisend",
        "url": "https://www.anchorterminal.com/compare/moengage-vs-omnisend"
      }
    ],
    "scores": [
      {
        "braze": 70,
        "by": 4,
        "edge": "moengage",
        "key": "reliability",
        "moengage": 74,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "braze": 68,
        "by": 19,
        "edge": "moengage",
        "key": "schema",
        "moengage": 87,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "braze": 50,
        "by": 18,
        "edge": "moengage",
        "key": "ergonomics",
        "moengage": 68,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "braze": 77,
        "by": 8,
        "edge": "braze",
        "key": "security",
        "moengage": 69,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "braze": 10,
        "by": 10,
        "edge": "braze",
        "key": "payments",
        "moengage": 0,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "braze": 69,
        "by": 6,
        "edge": "moengage",
        "key": "maintenance",
        "moengage": 75,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "braze": 83,
        "by": 8,
        "edge": "braze",
        "key": "transparency",
        "moengage": 75,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "MoEngage scores 65.2 (B) on agent readiness against Braze's 61.2 (C), and leads in 4 of 7 scored categories. Braze leads on security \u0026 auth, payments \u0026 pricing and transparency \u0026 trust. Both do marketing audiences.",
    "verdicts": {
      "braze": "The REST API covers profiles, events, sends and exports with keys limited to named endpoints, and the remote MCP server adds 71 tools under OAuth with PKCE that return no user-level personal data. No OpenAPI document, idempotency keys, published price or SLA were found, and MCP writes run without a confirmation step.",
      "moengage": "MoEngage publishes 36 OpenAPI files covering 140 operations, a per-endpoint rate limit table, Markdown docs and a hosted MCP server that builds drafts and leaves publishing to a person. No price, trial or self-serve signup is published, and on 17 August 2026 the Inform API in one data centre accepted requests for about 16 hours without sending the messages."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/braze-vs-moengage",
    "json": "https://www.anchorterminal.com/compare/braze-vs-moengage.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/braze-vs-moengage.md",
    "slim": "https://www.anchorterminal.com/compare/braze-vs-moengage.min.md"
  },
  "markdown": "MoEngage scores 65.2 (B) on agent readiness against Braze's 61.2 (C), and leads in 4 of 7 scored categories. Braze leads on security \u0026 auth, payments \u0026 pricing and transparency \u0026 trust. Both do marketing audiences.\n\n- Braze: grade C, 61.2/100, rank #475 of 950. Markdown https://www.anchorterminal.com/tools/braze.md · JSON https://www.anchorterminal.com/api/v1/tools/braze.json\n- MoEngage: grade B, 65.2/100, rank #327 of 950. Markdown https://www.anchorterminal.com/tools/moengage.md · JSON https://www.anchorterminal.com/api/v1/tools/moengage.json\n- Best lifecycle marketing and customer engagement platforms for AI agents: https://www.anchorterminal.com/best/lifecycle-marketing/index.md\n- All 36 lifecycle marketing comparisons: https://www.anchorterminal.com/compare/lifecycle-marketing/index.md\n\n## Which one, for what\n\n### Braze (C)\n\nGood for: A company already on Braze that wants an agent to read campaign and Canvas results, manage catalogues and templates through MCP, or write profiles and trigger sends through REST.\n\nAhead on:\n- Security \u0026 auth, 77 against 69\n- Payments \u0026 pricing, 10 against 0\n- Transparency \u0026 trust, 83 against 75\n\nWatch for: No public prices. Editions, monthly active users and Action Credits are sold by contract, and the pricing page says there is no free plan\n\n### MoEngage (B)\n\nGood for: A team already on MoEngage that wants an agent to update profiles, track events, build filter segments, draft Push and Email campaigns and read campaign, flow and analytics results.\n\nAhead on:\n- Schema \u0026 documentation, 87 against 68\n- Agent ergonomics, 68 against 50\n- Maintenance \u0026 community, 75 against 69\n\nWatch for: No public price, free tier or trial. The pricing page lists Growth and Enterprise plans with a one-year minimum and a sales contact only\n\n\n## Score by category\n\n| Category | Weight | Braze | MoEngage | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 70 | 74 | MoEngage +4 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 68 | 87 | MoEngage +19 |\n| Agent ergonomics | 13% (16.2 this run) | 50 | 68 | MoEngage +18 |\n| Security \u0026 auth | 14% (17.5 this run) | 77 | 69 | Braze +8 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 10 | 0 | Braze +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 69 | 75 | MoEngage +6 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 83 | 75 | Braze +8 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **61.2 · C** | **65.2 · B** | |\n\n## Facts side by side\n\n| Fact | Braze | MoEngage |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Braze, Inc. | MoEngage, Inc. |\n| Hosted endpoint | `https://mcp.braze.com/mcp` | `https://mcp.moengage.com` |\n| Transports | HTTP, Streamable HTTP | HTTP, Streamable HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under Braze's Main Subscription Agreement. The deprecated local MCP server on PyPI is MIT | Proprietary service under MoEngage's Terms of Use and a customer agreement |\n| Tools exposed | 71 | 52 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-09-17 | 2026-10-09 |\n| Terms last updated | 2025-10-13 | no date given |\n| Privacy policy last updated | 2026-06-23 | 2026-08-26 |\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 | yes | 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 | not found in the text |\n\n## Verdicts\n\n**Braze.** The REST API covers profiles, events, sends and exports with keys limited to named endpoints, and the remote MCP server adds 71 tools under OAuth with PKCE that return no user-level personal data. No OpenAPI document, idempotency keys, published price or SLA were found, and MCP writes run without a confirmation step.\n\n**MoEngage.** MoEngage publishes 36 OpenAPI files covering 140 operations, a per-endpoint rate limit table, Markdown docs and a hosted MCP server that builds drafts and leaves publishing to a person. No price, trial or self-serve signup is published, and on 17 August 2026 the Inform API in one data centre accepted requests for about 16 hours without sending the messages.\n\n## Before you call either\n\n### Braze\n\n1. Use the REST host for the customer's instance, such as https://rest.iad-01.braze.com or https://rest.fra-01.braze.eu. A key sent to the wrong instance returns 401\n2. Create a REST key with only the permissions the task needs. Scope and IP allowlist can't be edited later, so a change means a new key\n3. Call `get_workspaces` first on MCP. Every other tool needs the returned workspace id as `app_group_id`, and the wrong workspace is a documented failure\n4. Use REST for profiles, events and sends. The MCP server has no user-level tools and can't trigger a message to a named user\n5. Treat `\"message\": \"success\"` as queued, not delivered. Add a `group_id` to `/users/track` and poll `/users/track/status`, and don't resend a trigger call blindly\n\n### MoEngage\n\n1. Take the data centre number from the dashboard URL and call `https://api-{dc}.moengage.com`. Data can't be moved between data centres\n2. Send an `Idempotency-Key` header (UUID v4) on V5 campaign writes and test sends, and a `transaction_id` on Inform alerts, which deduplicates for 5 minutes\n3. Use internal event and attribute names in segment filters, and run `deep_validate_segment_filters` first. A wrong event name is accepted and the count later fails with no reason\n4. Use `in` with a list for text equality in segment filters. `equals` returns a 400 that names no field\n5. Reuse an OAuth access token until it nears expiry. The token endpoint allows 5 requests a minute and 30 per 10 minutes for each key\n\n## Questions\n\n### Which is better for AI agents, Braze or MoEngage?\n\nMoEngage scores 65.2 (B) on agent readiness against Braze's 61.2 (C), and leads in 4 of 7 scored categories. Braze leads on security \u0026 auth, payments \u0026 pricing and transparency \u0026 trust.\n\n### Do Braze and MoEngage need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Braze and MoEngage without installing anything?\n\nYes. Braze has a hosted endpoint at https://mcp.braze.com/mcp and MoEngage at https://mcp.moengage.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/braze-vs-moengage.json, and with the fewest tokens: https://www.anchorterminal.com/compare/braze-vs-moengage.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"braze\", \"b\": \"moengage\"}`. From a terminal: `anchor compare braze moengage`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/braze.json and https://www.anchorterminal.com/api/v1/tools/moengage.json\n\n## Other comparisons with Braze or MoEngage\n\n- [ActiveCampaign vs Braze](https://www.anchorterminal.com/compare/activecampaign-vs-braze.md)\n- [ActiveCampaign vs MoEngage](https://www.anchorterminal.com/compare/activecampaign-vs-moengage.md)\n- [Braze vs CleverTap](https://www.anchorterminal.com/compare/braze-vs-clevertap.md)\n- [Braze vs Customer.io](https://www.anchorterminal.com/compare/braze-vs-customer-io.md)\n- [Braze vs Iterable](https://www.anchorterminal.com/compare/braze-vs-iterable.md)\n- [Braze vs Klaviyo API + MCP](https://www.anchorterminal.com/compare/braze-vs-klaviyo.md)\n- [Braze vs Mailchimp Marketing API](https://www.anchorterminal.com/compare/braze-vs-mailchimp-marketing.md)\n- [Braze vs Omnisend](https://www.anchorterminal.com/compare/braze-vs-omnisend.md)\n- [CleverTap vs MoEngage](https://www.anchorterminal.com/compare/clevertap-vs-moengage.md)\n- [Customer.io vs MoEngage](https://www.anchorterminal.com/compare/customer-io-vs-moengage.md)\n- [Iterable vs MoEngage](https://www.anchorterminal.com/compare/iterable-vs-moengage.md)\n- [Klaviyo API + MCP vs MoEngage](https://www.anchorterminal.com/compare/klaviyo-vs-moengage.md)\n- [Mailchimp Marketing API vs MoEngage](https://www.anchorterminal.com/compare/mailchimp-marketing-vs-moengage.md)\n- [MoEngage vs Omnisend](https://www.anchorterminal.com/compare/moengage-vs-omnisend.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "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": "Braze vs MoEngage",
        "url": ""
      }
    ],
    "description": "MoEngage scores 65.2 (B) to Braze's 61.2 (C) for marketing audiences. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Braze C 61.2",
      "MoEngage B 65.2",
      "scores"
    ],
    "h1": "Braze vs MoEngage",
    "image": "https://www.anchorterminal.com/assets/og/compare-braze-vs-moengage.png",
    "path": "/compare/braze-vs-moengage",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Braze vs MoEngage for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/braze-vs-moengage"
  },
  "tokens": {
    "markdown": 2300,
    "slim": 630
  },
  "version": 1
}
