MCP

Pinterest Ads MCP server: ad-only Pins and paused campaigns from Claude or Codex

TL;DR

Pinterest announced an official MCP server on 17 June 2026, but it is in alpha with named agency partners and not generally available at the time of writing. This guide covers a hosted Pinterest Ads MCP server you can configure today, what a person must approve, and the API behaviours measured on a live account.

What already exists for this platform

Pinterest announced Pinterest MCP on 17 June 2026 as secure access to campaign, analytics and keyword insights, and is developing it with alpha partners — PMG, Pacvue, Dentsu, Havas, Innovid by Mediaocean and Omnicom's Jump450. Pinterest had not announced a general-availability date at the time of writing (September 2026).

  • Official, but not open. Unless you work through one of the alpha partners, there is no way to connect to it yet.
  • Community servers exist, self-hosted with your own Pinterest app and token.
  • Every Pinterest ad is built on a Pin, so a server that creates ads also needs the boards and Pins write scopes — the same permission that can publish to your public profile.

What a full MCP server adds

Pinterest's alpha serverAgent Planners MCP
Pinterest Ads toolsAlpha partners only27 reads, 32 writes
ReportingCampaign, analytics and keyword insightsAccount to ad level, asynchronous reports, organic analytics, and whether a day's numbers are final
CreatesNot announcedCampaigns, ad groups, ads and product-group promotions, always paused
PinsNot announcedAd-only Pins by default; a public Pin waits for a person
Other platforms in the same sessionPinterest only28 more platforms on one endpoint
Counted from the tool registry, which the MCP catalogue matches one for one: tools/list offers 59 Pinterest Ads tools of the 1012 on the endpoint (a key that lists its tools on demand reaches the same ones with search_tools and call_tool). A key only sees the writes if it carries tools:write.

How to configure it

  1. 1Create a key in API & MCP. tools:read for reporting; add tools:write for changes. Tools mode needs a paid plan and fails closed.
  2. 2Connect Pinterest Ads under Integrations with the Pinterest account that manages your ads. Every ad account it reaches — its own and those shared with it through Business Access — becomes its own row. The grant asks for ads (read and write), billing and business access (read), boards and Pins (read and write), catalogs and your account (read), and never for billing:write, whose only endpoint redeems ad credit.
  3. 3Add the server to Claude Code, Claude Desktop or Codex with the snippet below.
  4. 4Run describe_permissions, then list_accounts for the ad account ids, and scope every call with one.
bash
claude mcp add --transport http agentplanners https://www.agentplanners.com/api/mcp \
  --header "Authorization: Bearer ap_live_…"
Codex uses the same endpoint from ~/.codex/config.toml, with the key in an environment variable rather than the file: [mcp_servers.agentplanners] / url = "…/api/mcp" / bearer_token_env_var = "AGENTPLANNERS_API_KEY".

What waits for a person, whatever the key allows

A tools:write key's writes either run inside the organization's autonomy guardrails or queue for an admin, depending on how the key was minted. The calls below are held in the approval queue for a person on every key mode and decided one at a time — never inside a bulk approval.

  • Archiving campaigns, ad groups, ads or keywords. Pinterest has no delete for them; archive is the closest thing, a restore is not documented, and archiving a keyword effectively deletes it.
  • Removing an audience from the ad account — ad groups that target it lose it.
  • Deleting a Pin, which cannot be restored and stops every ad built on it, and publishing a public Pin to a board. Ad-only Pins, the default, never appear on your profile.
  • Flipping a budget between daily and lifetime, or a schedule change that raises a lifetime budget's spend rate or clears a daily budget's end date. The number does not move, so a percentage cap cannot see the change.
  • Campaign bid multipliers (bid_options, up to 10×), which carry no money field a cap can compare, and a live conversions upload — test mode is the default.
Redeeming ad credit and editing billing move the advertiser's money and are not built at all.

No raw_request tool — the typed gateways instead

There is no pinterest_ads__raw_request. pinterest_ads__get reads the v5 surface and pinterest_ads__mutate writes the rest of the allowlist, with two things a raw passthrough would drop: every item of a batch response is checked, and the person gate above still applies to archiving, bid multipliers and budget-type flips.

Pinterest API behaviours measured on a live account

  • Your own ad accounts are missing from the shared listing. include_shared_accounts=true returns only the shared ones, so discovery has to read the list both ways and merge by id — otherwise a first connect shows zero accounts.
  • An array parameter is one comma-joined key. A repeated key is read as its first value only: entity_statuses=ACTIVE&entity_statuses=PAUSED returns none of the paused campaigns, although the spec describes exploded arrays.
  • New advertisers must use campaign budget optimization. An ad-group budget is refused with code 2454, so the budget has to live on the campaign.
  • Spend caps are microcurrency. A daily_spend_cap of 1000000 — one dollar on a USD account — was accepted; 100 and 500000 were refused as invalid. The tools take major units and convert.
  • A batch can answer success while items in it failed. Each item has to be checked; the tools report the ones that did not apply.
Quota, for anyone self-hosting: a new Pinterest app starts on the Trial tier — 1,000 calls a day for the whole app, shared by every customer of it — until Pinterest raises the tier.

Use cases

  • Pinterest against Meta on one definition of cost per result, in one session on one key.
  • Budget-limited ad groups — which ad groups spent their whole budget every day, and what they returned.
  • Catalog-driven builds — product-group promotions created paused from your shopping catalog.
  • Landing page and UTM hygiene — UTM parameters merged into the destination URL, so existing parameters and Pinterest macros such as {campaignid} are kept.

Frequently asked questions

Is there an official Pinterest Ads MCP server?
Pinterest announced one on 17 June 2026 and is developing it with alpha partners — PMG, Pacvue, Dentsu, Havas, Innovid by Mediaocean and Omnicom's Jump450. At the time of writing (September 2026) it is not generally available.
Can an agent post Pins to my profile over MCP?
It creates ad-only Pins by default, which never appear on your profile. A public Pin, or deleting any Pin, is held for a person's approval whatever the key's write mode.
Why does Pinterest refuse my ad-group budget?
New advertisers are required to use campaign budget optimization, and Pinterest answers an ad-group budget with code 2454. Put the budget on the campaign instead.
How do I revoke a Pinterest connection?
Disconnect removes it here, but Pinterest gives apps no revoke endpoint — also remove the app from your Pinterest account settings.
Put a human-approved agent on your ad ops

Start free — 2,500 credits a month, no credit card. Reads are free; every write waits for you.

Related reading