Snapchat Ads MCP server: reports and paused builds from Claude or Codex
Snapchat's Marketing API is public and, as of September 2026, has no official MCP server. This guide covers what exists today, what a hosted server adds, the configuration for Claude Code, Claude Desktop and Codex, and the one property of Snap's API that shapes everything else: there is no archive state, so a delete is permanent.
What already exists for this platform
Snap publishes the Marketing API and had not shipped an official MCP server at the time of writing (September 2026). Community wrappers exist and are typically read-only.
- No official server, and no hosted endpoint from Snap.
- A Business Manager OAuth app, not a Snap Kit project — the wrong app type is a common first wrong turn.
- Three different hosts. The Ads API, the Public Profile API and the Conversions API are separate hosts with separate rules; a wrapper that assumes one will 404 on the others.
What a full MCP server adds
| Typical option today | Agent Planners MCP | |
|---|---|---|
| Snapchat Ads tools | Community wrappers, varying | 23 reads, 25 writes |
| Reporting | Usually | Campaign, ad squad and ad stats in the ad account's own days, finalized 48 hours after the day |
| Creates | Rare | Campaigns, ad squads and ads — always created paused |
| Account binding | Your own discipline | An ad squad through its campaign, an ad through its ad squad, all bound to the selected ad account |
| Deletes | Whatever the wrapper does | Held for a person on every key mode — Snap has no archive, so a delete is permanent |
| Conversion events | Sent | Validate by default; sending live is a separate, person-held decision |
| Other platforms in the same session | No | 28 more platforms on one endpoint |
How to configure it
- 1Create a key in API & MCP.
tools:readfor reporting; addtools:writefor changes. Tools mode needs a paid plan and fails closed. - 2Connect Snapchat Ads under Integrations, signing in with a member of the Snap organization. One row is created per ad account the login reaches.
- 3Add the server to Claude Code, Claude Desktop or Codex with the snippet below.
- 4Run
describe_permissions, thenlist_accountsfor the ad account ids, and scope every call with one.
claude mcp add --transport http agent-plannershttps://www.agentplanners.com/api/mcp \
--header "Authorization: Bearer ap_live_…"Raw requests in Snapchat's own format
snapchat_ads__raw_request (keys and connections with tools:raw) calls the Snapchat Marketing API v1 in its own format. Paths start with adaccounts/{id}/ of the connected ad account, or name ONE object of it (campaigns/{id}, adsquads/{id}/stats …) proven to be the account's before Snap is called. Creates are PAUSED unless the body sets a status. Snap's update is a PUT that REPLACES the whole object — read it first and send it complete — so every PUT, like every DELETE, waits for a person; members, roles, billing, funding sources, lead forms and segment user uploads are refused. Money is Snap's micro-currency there. The full guide is /docs/platform-api.
No archive state, so no quiet deletes
Most ad platforms let you archive something and change your mind later. Snap does not: a delete is permanent and there is nothing to restore from.
So every delete — campaign, ad squad, ad, segment, and removing users from a customer list — is held for a person on every key mode, including a key carrying tools:write, and is never bulk-approved. An approval dialog in front of an irreversible action is the only control that means anything.
{{campaign.id}}, {{ad.name}} and the rest) pass through literally and are never percent-encoded — an encoded macro is a broken link that still looks right.Frequently asked questions
- Is there an official Snapchat Ads MCP server?
- Not as of September 2026. Snap publishes the Marketing API but has shipped no MCP server, official or hosted; the options are community wrappers run locally, or a hosted server like this one.
- Can an MCP client delete a Snapchat campaign?
- Not on its own. Snap has no archive state so a delete is permanent, and every delete is held for a person on every key mode — including one carrying tools:write — and is never bulk-approved.
- Are Snapchat amounts micro-currency over MCP?
- No. Snap's API is micro-currency, but every argument and result in these tools is in major units, so a budget reads as 250 rather than 250000000 and never needs dividing again.
- Will it send live Snapchat conversion events?
- Only with approval. Conversion events validate by default; sending them live is a separate, person-held decision that never happens unattended.