Braze MCP Server

Hosted Braze connector for campaign and Canvas analytics, segments, catalogs and email content

Official · braze.com Remote (hosted) · Streamable HTTP CRM and salesData and analytics

40 popularity score

Connect your client

Remote (hosted)

Add in one click

Opens the app, which asks before it adds the server.

Or add it by command or config

Claude CodeTerminal
claude mcp add --transport http braze https://mcp.braze.com/mcp
Claude (desktop and web)Settings → Connectors → Add custom connector
https://mcp.braze.com/mcp
ChatGPTSettings → Apps → Advanced → Developer mode, then Create app
https://mcp.braze.com/mcp
Cursor~/.cursor/mcp.json
{
  "mcpServers": {
    "braze": {
      "url": "https://mcp.braze.com/mcp"
    }
  }
}
VS Code.vscode/mcp.json
{
  "servers": {
    "braze": {
      "type": "http",
      "url": "https://mcp.braze.com/mcp"
    }
  }
}
Codex~/.codex/config.toml
[mcp_servers.braze]
url = "https://mcp.braze.com/mcp"
Gemini CLITerminal
gemini mcp add --scope user --transport http braze https://mcp.braze.com/mcp

What it does

Braze runs this MCP server itself at https://mcp.braze.com/mcp (US) and https://mcp.braze.eu/mcp (EU); either address reaches any Braze cluster. There is nothing to install: a client is pointed at the URL and the user signs in with their own Braze dashboard login over OAuth, so the agent can see and change only what that dashboard user can.

Its tools follow the Braze REST API. Read tools cover workspaces, campaign and Canvas performance over time, segments and their size, custom attributes and events, active-user and purchase series, and Cloud Data Ingestion sync status. Write tools create and edit email templates, content blocks, media library assets and catalogs, duplicate campaigns and trigger data syncs. A larger set of campaign tools (create, edit, launch, stop, archive, and message variants), segment creation and editing, and the BrazeAI Operator tools are open only to accounts in the matching Braze beta programs.

The tools table in its docs lists 71 tools in all, of which the Canvas ones are read-only. No tool returns user-level profile data or PII. A workspace is chosen per request, so one connection covers every workspace the user can access; Braze advises confirming which workspace the agent picked before it acts.

An earlier locally run version (beta, August 2025) that used a Braze API key is deprecated and gets no more updates; this page covers the hosted server.

What it needs

A Braze dashboard account (SSO or SAML sign-in works) and an MCP client that supports remote servers with OAuth; Braze has verified Claude, ChatGPT, Cursor, OpenAI Codex, Claude Code and VS Code. A company admin must first turn on MCP OAuth access under Settings > Admin Settings > OAuth and grant the user the "Use MCP Server" permission, which no user has by default. Campaign-editing, segment-editing and Operator tools need enrolment in their Braze beta programs.

Limits

Companies that use Braze IP allowlisting cannot use it at present. Sign-in may be blocked from clients whose domain is not on Braze's allowlist. No tool exposes user-level PII or profile data. Canvas tools are read-only. get_email_template_info does not accept drag-and-drop editor templates, catalog item tools take up to 50 items per call, and send analytics for get_send_data_series are kept for 14 days after a send. The company is fixed at sign-in; switching needs a fresh authorization. Teams scoped below a full workspace may find some tools fail.

Who it suits

Suits Braze customers who want an assistant to report on campaign and Canvas results, inspect segments and events, or draft email templates, content blocks and catalog entries, without handing out a REST API key. As it is hosted by Braze and tied to dashboard permissions, it needs an admin to enable it and is out of reach for companies using IP allowlisting. Those who must keep calls inside their own network, or need user-level data, should use the Braze REST API directly instead.

Tools 60 of 71

get_workspaces
Lists the workspaces the signed-in user can reach, with the app_group_id other tools need
get_campaign_list
Lists campaigns with their IDs, API-campaign flag and tags
get_campaign_details
Returns the settings and metadata of one campaign
get_campaign_dataseries
Returns daily campaign stats such as sends, opens, clicks and conversions per channel
duplicate_campaign
Makes a copy of an existing campaign
create_campaign
Creates a new campaign (campaign APIs beta)
edit_campaign
Changes an existing campaign (campaign APIs beta)
launch_campaign
Launches a campaign (campaign APIs beta)
stop_campaign
Stops a running campaign (campaign APIs beta)
archive_campaign
Archives a campaign (campaign APIs beta)
unarchive_campaign
Restores an archived campaign (campaign APIs beta)
get_campaign_draft
Reads the draft version of a campaign (campaign APIs beta)
get_campaign_live_details
Reads the live version of a campaign (campaign APIs beta)
create_campaign_message
Adds a message to a campaign (campaign APIs beta)
update_campaign_message
Changes a campaign message (campaign APIs beta)
delete_campaign_message
Removes a campaign message (campaign APIs beta)
create_campaign_message_variation
Adds a message variant to a campaign (campaign APIs beta)
update_campaign_distribution
Changes how a campaign splits its audience across variants (campaign APIs beta)
get_canvas_list
Lists Canvases with their IDs and tags
get_canvas_details
Returns a Canvas's metadata such as status and creation time
get_canvas_data_series
Returns time-series stats for a Canvas
get_canvas_data_summary
Returns rolled-up totals of a Canvas's stats
get_catalogs
Lists the catalogs in a workspace
get_catalog_items
Returns several items from a catalog
create_catalog
Creates a catalog
delete_catalog
Deletes a catalog
create_catalog_fields
Adds fields to a catalog
delete_catalog_field
Removes a field from a catalog
create_catalog_items
Adds items to a catalog, up to 50 per call
edit_catalog_items
Changes existing catalog items, up to 50 per call
replace_catalog_items
Overwrites catalog items, creating any that are missing
delete_catalog_items
Deletes catalog items, up to 50 per call
get_custom_attributes
Lists the custom attributes recorded for the app, page by page
get_events
Lists custom events recorded for the app, page by page
get_events_list
Lists custom event names
get_events_data_series
Counts a custom event's occurrences over a period
list_integrations
Lists Cloud Data Ingestion integrations, 10 per call
get_integration_job_sync_status
Shows past sync runs of a Cloud Data Ingestion integration
trigger_integration_sync
Starts a sync of a Cloud Data Ingestion integration
get_dau_data_series
Returns daily active users per day
get_mau_data_series
Returns monthly active users over a rolling 30 days
get_new_users_data_series
Returns new users per day
create_media_library_asset
Uploads an asset to the Braze media library
get_quantity_series
Returns the number of purchases over a time range
get_revenue_series
Returns purchase revenue over a time range
get_segment_list
Lists segments with their IDs and tracking flag
get_segment_details
Returns the definition and metadata of one segment
get_segment_data_series
Returns a segment's estimated size per day
get_segment_filters
Reads the available segment filter definitions (beta)
create_segment
Creates a segment (beta)
edit_segment
Changes a segment (beta)
get_send_data_series
Returns daily stats for a tracked send_id of an API campaign
get_session_data_series
Returns app session counts over a period
get_email_templates
Lists email templates
get_email_template_info
Reads one email template; drag-and-drop templates are not supported
create_email_template
Creates an email template
update_email_template
Changes an email template
get_content_blocks
Lists content blocks
create_content_block
Creates a content block
send_operator_prompt
Submits a plain-language job to BrazeAI Operator (Operator beta)

Similar servers