Blog

Meta Ads MCP: how to connect Claude to your Meta Ads account

September 26, 20269 min read

Meta shipped an official Ads MCP server this year, and it changes one specific thing. You no longer export a spend report and paste it into a chat. Claude can read your Meta ad account directly and, with permission, act on it. Pull performance by campaign, spot a tired creative, adjust a budget, all without leaving the conversation.

This post covers what the Meta Ads MCP does, what's in the toolkit, how to set it up, how permissions work, and two things to check before you give an AI agent write access to a live ad account.

What "Meta Ads MCP" means

MCP stands for Model Context Protocol. It's the standard that lets an AI assistant connect to an outside tool through a defined set of actions, instead of a one-off integration. Meta's version is documented on its developer site under Ads AI Connectors, as a server that connects an AI agent to your ad account and its campaign data.

Meta hosts it, so there's no server for you to run. It lives at https://mcp.facebook.com/ads and, per Meta, works with any MCP-compatible AI agent, so it isn't tied to Claude. In practice, Claude gets a fixed set of tools for your ad account instead of a scrape or a manual export.

Meta's server isn't the only option. Third-party MCP servers for Meta Ads exist too. Pipeboard's is a widely used one, built for Claude, ChatGPT and other MCP clients, and part of a family that also covers Google, TikTok, Snap and Reddit ads. Start with the official server if Meta is where you run ads and you want the fewest moving parts. Third-party ones matter more if you report across Meta and Google Ads in one connector, which Meta's server doesn't do.

What's in the toolkit

Meta's documentation splits the server's tools into seven groups:

  • Reporting: campaign, ad set and ad-level performance without building a custom export.
  • Ad creation and management: create and edit campaigns, ad sets and ads.
  • Catalog management: build and troubleshoot product catalogs and feeds, for anyone running dynamic or ecommerce ads.
  • Signals and datasets: check pixel and Conversions API health, including event match quality.
  • Help and troubleshooting: search Meta's Business Help Center from inside the conversation.
  • A/B tests and lift studies: create split tests and conversion lift studies and pull their results.
  • Activity logs: see the account's change history, the same log Ads Manager shows, without opening Ads Manager.

That's a lot more than "read my spend numbers." The catalog and signals groups are easy to miss if you think of this as a reporting connector. If you run dynamic product ads, look at the catalog tools before the reporting ones.

How to set it up

The exact screens will shift as Meta works on the product, but setup guides from people who've been through it follow the same shape:

  1. Make sure you're a Business Manager admin on the ad account you want to connect. Without that, the login step below fails or offers you a narrower scope than you expect.
  2. Open your AI client's connector settings (in Claude, that's the connectors list) and add the Meta Ads endpoint.
  3. Complete Meta's Business OAuth flow. It's the same login screen Meta uses for other Business Suite integrations, not a separate account.
  4. Choose a permission scope. Start with read-only, more on that below, instead of granting write access on day one.
  5. Run a simple test question first. "What's my top campaign by spend this month?" is enough to confirm the connection works before you build anything on top of it.

If you'd rather use Claude Code or another command-line agent, Meta also supports connecting through your own developer app. That route suits scripted, repeatable reporting jobs, but it's more setup than the conversational route most marketers want. Watch one difference. According to a detailed setup guide, Meta's command-line tool creates new campaigns active by default, so automated jobs need to set them to paused explicitly.

Permission scoping, and why read-only first matters

You grant access on purpose, and it isn't one blanket switch. Setup guides describe three tiers on Meta's OAuth screen, granted per user and per ad account:

  • Read-only: reporting and observation. Claude can see the account but can't change anything.
  • Read/write: adds creating campaigns, ad sets and ads. New items land paused, so nothing goes live on its own.
  • Read/write/financial: adds budget and spend changes on top. This is the tier that touches money.

Start on read-only for the first week or two, even if you know you'll want write access later. That window shows you what you ask Claude to do in practice (pull last week's numbers, flag weak ad sets) before you decide whether the write tier fits your workflow. Granting the top tier right away because it feels like the default is the easiest way to end up with more access switched on than you need.

Two things to check before you turn it on

Agency and client accounts take longer. If you manage Meta Ads for clients instead of one account you own, you'll likely connect through your own developer app, and that app needs the ads_mcp_management permission. Meta permissions that reach accounts you don't own normally go through its app review, so set this up well before a client engagement, not the week the work is due.

Broad account scans can hit Meta's rate limits. The Marketing API has per-account quotas, and the Ads MCP runs against the same limits. The setup guide above puts the default development tier at 60 points an hour, with a read costing 1 point and a write costing 3. Standard access, which you apply for through Business Suite, raises that to 9,000. Whatever your account's numbers turn out to be, the pattern holds. A wide scan across every campaign, or several agent calls at once, can burn through a quota fast.

The fix teams running this at scale have settled on: send bulk reporting and analysis through a data warehouse instead of live API calls, and save the MCP connection for account changes. Budget shifts, campaigns on or off, the things that need to hit the account in real time.

Neither of these is a reason to skip it. Both are easier to plan for on day one than to discover when a scan fails mid-quarter.

Official server or third-party connector

The official Meta server has one clear advantage. There's no developer app to register and no API tokens to create and store, because the OAuth flow handles that. For a marketer running one account, or a small team that only runs Meta Ads, that's usually reason enough to start there.

Third-party servers earn their place in a narrower case: agencies or teams running paid media on both Meta and Google who want one connector for both. Pipeboard comes up most often in that conversation. If all your paid media is on Meta, the official server covers the same ground without a second thing to maintain.

Is it safe to give Claude write access to a live ad account?

Ask what you'd ask of any tool that can spend money: what exactly can it do, and did you grant that on purpose? Meta lets you scope permissions instead of handing over the whole account, so check what's switched on before you assume the connection is read-only. If you only want Claude reading performance data, don't grant campaign edit permissions it won't use.

Meta has added a second layer too. In July 2026 it introduced ads MCP server rules in Business Suite settings. Anyone with full control of a business portfolio can use them to block specific agent actions, like creating campaigns, raising budgets past a limit, changing targeting or creative, or editing catalogs that are live in ads. And because new campaigns and ad sets created through the MCP land paused, a stray "create this campaign" doesn't turn into live spend without a separate step to switch it on.

How this shows up in Claude

Meta Ads can appear in Claude as a connector you turn on, not something you install and configure by hand. Once it's connected, Claude can list your ad accounts, pull campaign performance and make changes in the same conversation you're already working in, the same way it reads a spreadsheet you've attached.

Check what's enabled every so often, not just at setup. The rules above live in Business Suite settings, and they're the place to tighten things if your use changes.

If you want help setting this up on a client account, or deciding what an agent should and shouldn't touch, that's the kind of thing I do in consulting. And for the bigger picture on which marketing work to hand to Claude at all, see where AI marketing automation saves time.

FAQ

Do I need Claude Code to use the Meta Ads MCP?

No. It works through Meta's Ads AI Connectors setup and, in Claude, as a connector you turn on, no command line or coding needed. Claude Code is one more way to reach it, not the only way.

What can Claude do once it's connected?

Pull spend and performance by campaign, age, gender or platform. Create and edit campaigns and ads, manage catalogs, run A/B tests and lift studies, check pixel and Conversions API health, and read the account's activity log. What's switched on for you depends on the permissions you granted during setup.

Does this cost anything beyond my ad spend?

Meta doesn't sell the connection as a separate product. You're billed for ad spend as usual. The MCP server is just a way to reach the same account through an AI agent instead of Ads Manager.

Can I limit what actions Claude is allowed to take?

Yes, in two places. The OAuth grant sets how much access Claude gets, per user and per ad account. On top of that, the ads MCP server rules in Business Suite let a business portfolio admin block specific actions, like budget increases or campaign creation.

Do new campaigns or ads created through the MCP go live automatically?

Not through the MCP. Anything created there lands paused, and switching it on is a separate step, which limits the damage from an over-broad or misread instruction. The command-line route is the exception: it creates items active unless you tell it otherwise.

What if I manage ad accounts for multiple clients?

Plan for extra lead time. Client accounts usually mean connecting through your own developer app with the ads_mcp_management permission, and Meta's app review for that takes longer than connecting an account you own. Start before the engagement, not the week the work is due.