How to integrate Braze MCP with Atomic Agent

Connect Atomic Agent to Braze MCP. Send campaign to segment of users, create promotion email template for black friday, and more using natural language, with authentication handled for you.

Braze logoBraze
Api Key

Braze is a customer engagement platform for managing user data, messaging, campaigns, and analytics. Use it to deliver targeted, multi-channel messaging and analyze campaign performance.

119 Tools

Introduction

Atomic Agent is an open-source AI agent that runs on your machine and supports local models through llama.cpp. Connect it to 1,500+ apps through Composio, including Braze.

This guide uses Atomic Agent's built-in Composio integration. You need Atomic Agent v0.5.6 or later, your own Composio API key, and a Braze account. See the Atomic Agent documentation for installation instructions.

Also integrate Braze with

How Atomic Agent connects to Braze

Atomic Agent connects to Composio's Tool Router over Streamable HTTP MCP. It discovers the tools needed for your request, and Composio handles account authentication.

Execution and account-connection tools follow Atomic Agent's configured approval policy. Review any approval prompt before allowing an action on your connected account.

Connect Braze to Atomic Agent

  1. Sign up or sign in to the Composio dashboard. Copy your API key.
  2. In Atomic Agent, open the Integrations tab and select Composio. Select API key, press e, paste the key, and press Enter. The tools become available immediately, without a restart.
  3. Ask Atomic Agent to do something in Braze. It searches Composio for the right tool.
  4. On first use, open the sign-in link returned in the chat. Connect your Braze account, then return to Atomic Agent to continue.

Headless setup

Add the following line to ~/.atomic-agent/.env, replacing YOUR_COMPOSIO_API_KEY with your key. Start Atomic Agent after saving the file.

bash
COMPOSIO_API_KEY=YOUR_COMPOSIO_API_KEY

What is the Braze MCP server, and what's possible with it?

The Braze MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Braze account. It provides structured and secure access so your agent can perform Braze operations on your behalf.

Use Braze from Atomic Agent

With your account connected, ask Atomic Agent to work with Braze in natural language. You can connect more apps through the same Composio integration as you need them.

Visit the Atomic Agent website or inspect the Atomic Agent source code.

Troubleshooting

Why is my API key rejected?

Copy the key directly from the Composio dashboard. Atomic Agent requires ASCII characters because it sends the key in an HTTP header. Remove any extra characters introduced when copying.

Why are Composio tools unavailable after saving a key?

Check that you use Atomic Agent v0.5.6 or later and that Composio is enabled in your configuration. A "composio": { "enabled": false } setting disables the integration while keeping the saved key on disk.

Does Composio have a free plan?

The Hobby plan includes 100,000 tool calls per month. Composio-managed OAuth apps have a lower included allowance. See Composio pricing for the current limits that apply to your connection.

TOOLS

Supported Tools

Every Braze action and event your agent gets out of the box.

Blocklist Emails

HIGH IMPACT: globally unsubscribe and mark as hard bounced one to 50 exact email addresses.

Cancel Segment Exports

Ask Braze to cancel all ongoing exports for a segment.

Schedule Campaign Trigger

HIGH IMPACT: schedule one durable API-triggered campaign dispatch.

Schedule Canvas Trigger

HIGH IMPACT: schedule one durable API-triggered Canvas entry.

Create Catalog

Create one persistent catalog in the connected Braze workspace.

Create Catalog Fields

Asynchronously create up to 50 fields in one Braze catalog.

Create Catalog Item

Synchronously create one Braze catalog item by exact item ID.

Create Multiple Catalog Items

Asynchronously create up to 50 Braze catalog items.

Create Catalog Selection

Asynchronously create one Braze catalog selection.

Create Content Block

Persist a reusable HTML or text Content Block in the connected Braze workspace.

Create Email Template

Persist an HTML email template on Braze's Templates & Media page.

Create Media Library Asset

Upload one asset to Braze from a public HTTP(S) URL or local file.

Create Message Schedule

HIGH IMPACT: schedule API-only channel messages for future processing.

Create Preference Center

HIGH IMPACT: durably create and optionally activate a Braze-hosted preference center.

Create SDK Authentication Key

HIGH IMPACT SECURITY OPERATION: create an SDK Authentication key from an RSA public key for one exact app.

Create Send ID

Create or assign a send ID for programmatic message-performance tracking.

Create User Aliases

Add up to 50 Braze aliases to existing external-ID users or create alias-only profiles.

Delete Campaign Trigger Schedule

HIGH IMPACT: durably cancel a scheduled API-triggered campaign before send time.

Delete Canvas Trigger Schedule

HIGH IMPACT: durably cancel a scheduled API-triggered Canvas before entry time.

Delete Catalog

Permanently delete one Braze catalog and all of its contents by exact catalog name through DELETE /catalogs/{catalog_name}.

Delete Catalog Field

Asynchronously request deletion of one field by exact catalog and field name.

Delete Catalog Item

Request deletion of one catalog item by exact catalog name and item ID.

Delete Multiple Catalog Items

Asynchronously request deletion of up to 50 catalog items by exact IDs.

Delete Catalog Selection

Asynchronously request deletion of a selection by exact catalog and selection name.

Delete Message Schedule

HIGH IMPACT: durably cancel an API-only message schedule before it is sent.

Delete SDK Authentication Key

HIGH IMPACT SECURITY OPERATION: permanently delete one exact non-primary SDK Authentication key from one exact app.

Delete Users

Permanently queue deletion of up to 50 users using exactly one identifier type.

Duplicate Campaign

HIGH IMPACT: request an asynchronous, durable duplicate of a Braze campaign.

Duplicate Canvas

HIGH IMPACT: request an asynchronous, durable duplicate of a Braze Canvas.

End Live Activity

IRREVERSIBLE: end an SDK-registered iOS Live Activity with a final ContentState.

Export Global Control Group Users

Start an asynchronous export of all current Global Control Group users.

Export Segment Users

Start an asynchronous newline-delimited JSON export for one segment.

Export Users by Identifiers

Return user profiles matching one or more Braze, external, alias, device, email, or phone identifiers; this reads profiles and does not track events or consume data points.

Generate Preference Center URL

Generate a user-specific URL for an API-created or drag-and-drop Braze preference center.

Get Campaign

Return configuration and delivery details for one campaign identified by its Braze campaign ID.

Get Campaign Analytics

Get up to 100 daily campaign analytics points.

Get Campaign Translation Source

Read the default source values inside translation tags for one campaign message variation.

Get Canvas

Return configuration and step details for one Canvas identified by its Braze Canvas ID.

Get Canvas Analytics

Export Canvas daily time-series analytics with optional variant, step, and deleted-step breakdowns.

Get Canvas Analytics Summary

Export Canvas analytics rollups with optional variant, step, and deleted-step breakdowns.

Get Canvas Translation Source

Read default source values inside translation tags for one Canvas step message variation.

Get Catalog Item

Return one Braze catalog item by exact catalog name and item ID.

Get Content Block

Return one persisted Braze Content Block by API identifier, optionally with its current campaign and Canvas inclusion records.

Get Content Block Translation Source

Read default source values inside one Content Block's translation tags.

Get Custom Event Analytics

Get 1 to 100 daily or hourly occurrence counts for one custom event, optionally filtered by app and analytics-enabled segment.

Get Email Template

Return one stored HTML email template by API identifier.

Get Email Template Translation Source

Read default source values inside an email template's translation tags.

Get Preference Center

Get persisted HTML, state, options, identifiers, and timestamps for one Braze preference center.

Get Purchase Series

Get 1 to 100 daily or hourly purchase quantity or revenue points, optionally filtered by app and product.

Get Segment

Return Braze's documented configuration details for one segment identified by its segment API identifier.

Get Segment Analytics

Get up to 100 daily estimated segment-size points.

Get Send Analytics

Get up to 100 daily analytics points for a tracked send from an API campaign.

Get Session Analytics

Get 1 to 100 daily or hourly session-count points, optionally filtered by app and analytics-enabled segment.

Get Subscription Group Status

Get saved membership status for up to 50 users in one exact subscription group.

Get User KPI Series

Get 1 to 100 points for one user KPI: daily active users, rolling 30-day monthly active users, daily new users, or daily uninstalls.

Get Webhook Template Translation Source

Read default source values inside a webhook template's translation tags.

Identify Users

Assign external IDs to alias-only, email-only, or phone-only Braze profiles, merging into an existing identified profile when applicable.

List Campaigns

Return one page of Braze campaigns for discovery, optionally including archived campaigns and filtering by last edit time.

List Campaign Translations

View every configured locale translation map for one campaign message variation, or filter by locale.

List Canvases

Return one fixed provider page of up to 100 Braze Canvases for discovery, optionally including archived Canvases and filtering by last edit time.

List Canvas Translations

Preview configured locale translations for one Canvas step message variation.

List Catalog Items

Return one fixed provider page of up to 50 items from a Braze catalog, preserving arbitrary item attributes and exposing Braze Link-header pagination.

List Catalogs

Return all catalogs in the connected Braze workspace.

List Cloud Data Ingestion Integrations

Return one 10-item page of configured Cloud Data Ingestion integrations.

List Cloud Data Ingestion Sync Statuses

Return one 10-item page of sync statuses for a Cloud Data Ingestion integration.

List Content Blocks

Return one offset-based page of persisted Braze Content Blocks.

List Content Block Translations

View every configured locale translation map for one Content Block, or filter by locale.

List Custom Attributes

Return one fixed provider page of up to 50 alphabetically sorted custom-attribute definitions and a Link-header continuation cursor.

List Custom Event Names

Return one fixed provider page of up to 250 alphabetically sorted custom event names.

List Custom Events

Return one fixed provider page of up to 50 alphabetically sorted custom-event definitions and a Link-header continuation cursor.

List Email Template Locale Translations

View email template translations, optionally filtered to one locale.

List Email Templates

Return one offset-based page of stored HTML email templates.

List Email Template Translations

View all configured translations and locales for one email template.

List Hard Bounced Emails

Return one newest-first offset page of hard-bounced emails.

List Invalid Phone Numbers

Return one newest-first offset page of invalid SMS numbers by UTC date range, or check exact E.

List Preference Centers

List all available Braze preference centers and their IDs and timestamps.

List Purchase Products

Return every product ID from an optional caller-selected provider page.

List Scheduled Broadcasts

List dashboard and API scheduled campaigns and Canvas entries through an ISO 8601 end date.

List SDK Authentication Keys

HIGH IMPACT SECURITY READ: list all SDK Authentication public keys, IDs, descriptions, and primary status for one exact app.

List Segments

Return one fixed provider page of up to 100 Braze segments and their IDs for audience discovery.

List Unsubscribed Emails

Return one offset page of latest unsubscribe records for a UTC date range or exact email.

List User Subscription Groups

Return one offset page of subscription groups that have status history for users selected by exactly one email or phone identifier type.

List Webhook Template Translations

View configured translations for one webhook template, optionally filtered by locale.

Merge Users

Asynchronously merge up to 50 Braze source profiles into retained target profiles.

Remove Deprecated External IDs

Permanently remove up to 50 deprecated Braze external IDs.

Remove Hard Bounced Emails

HIGH IMPACT: remove one to 50 exact addresses from both the Braze bounce list and the email provider's bounce list, potentially making them deliverable again.

Remove Invalid Phone Numbers

HIGH IMPACT: remove one to 50 exact E.

Remove Emails From Spam List

HIGH IMPACT: remove one to 50 exact addresses from both the Braze spam list and the email provider's spam list, potentially making them deliverable again.

Rename External IDs

Rename up to 50 primary Braze external IDs, preserving each old ID as deprecated.

Replace Catalog Item

Synchronously replace a Braze catalog item, creating it if item_id does not exist.

Replace Multiple Catalog Items

Asynchronously replace or create up to 50 Braze catalog items by id.

Replace Media Library Asset File

HIGH IMPACT: request replacement of the file associated with one exact Braze media-library asset ID using a public HTTP(S) URL.

Send Campaign Trigger

HIGH IMPACT: immediately request an API-triggered campaign send.

Send Canvas Trigger

HIGH IMPACT: immediately request entry into an API-triggered Canvas.

Send API-Only Messages

HIGH IMPACT: immediately request API-only messages to existing Braze users.

Send Transactional Campaign

HIGH IMPACT: send one immediate transactional email from a Braze Transactional Email campaign to exactly one external-ID or alias recipient; an accepted send cannot be retracted.

Set Global Email Subscription Status

HIGH IMPACT: set the global email subscription state for one to 50 exact addresses, including addresses not yet attached to a profile.

Set Primary SDK Authentication Key

HIGH IMPACT SECURITY OPERATION: make one exact existing SDK Authentication key the primary key for one exact app.

Set Subscription Group Status

HIGH IMPACT: batch subscribe or unsubscribe up to 50 users in one exact group.

Set Subscription Group Statuses

HIGH IMPACT: batch subscribe or unsubscribe users across multiple groups.

Start Live Activity

HIGH IMPACT: remotely request an iOS Live Activity start for exactly one target mode: up to 50 external users, one Connected Audience, or one segment.

Create and Update Users

Asynchronously ingest Braze attributes, custom events, or purchases, up to 75 combined objects per portable request.

Trigger Cloud Data Ingestion Sync

HIGH IMPACT: enqueue a sync for an existing Cloud Data Ingestion integration.

Update Campaign Translations

Submit a durable update request with translation-tag string values for one campaign message locale.

Update Campaign Trigger Schedule

HIGH IMPACT: durably replace the full schedule for a previously scheduled API-triggered campaign.

Update Canvas Translations

Submit a durable update request with translation-tag string values for one Canvas step message locale.

Update Canvas Trigger Schedule

HIGH IMPACT: durably replace the full schedule for a previously scheduled API-triggered Canvas.

Update Catalog Item

Synchronously patch one existing Braze catalog item.

Update Multiple Catalog Items

Asynchronously patch up to 50 existing Braze catalog items.

Update Content Block

Persist changes to one existing Braze Content Block by API identifier.

Update Content Block Translations

Submit a durable update request with translation-tag string values for one Content Block locale.

Update Email Template

Persist one or more changes to an existing Braze email template by API identifier.

Update Email Template Translations

Submit a durable update request with translation-tag string values for one email template locale.

Update Live Activity

Update an SDK-registered iOS Live Activity without ending it.

Update Message Schedule

HIGH IMPACT: durably update the schedule, documented channel message objects, or both for an API-only scheduled message.

Update Preference Center

HIGH IMPACT: durably update a Braze preference center's required page HTML and confirmation HTML, plus an optional title, state, or options configuration.

Update Push Credentials

HIGH IMPACT: replace one app's push credentials for exactly one platform.

Update User Aliases

Asynchronously request renaming of up to 50 existing Braze aliases.

Update Webhook Template Translations

Submit a durable update request with translation-tag string values for one webhook template locale.

FAQ

Frequently asked questions

With a standalone Braze MCP server, the agents and LLMs can only access a fixed set of Braze tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Braze and many other apps based on the task at hand, all through a single MCP endpoint.

Yes, you can. Atomic Agent fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Braze tools.

Yes, absolutely. You can configure which Braze scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Braze data and credentials are handled as safely as possible.

Start with Braze.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Braze tool your agent needs.Free to start.

Start building