Meta Ads MCP for Shopify stores: setup and what it can answer

Meta's official MCP server connects your ad account to Claude in five minutes. Here's the setup, what to ask it, and the one question it can't answer on its own.

Raphael Gonzalez, Founder, Anry
QuestionAnswer
What is it?Meta's official MCP server for ads, part of "Meta ads AI connectors"
Server URLhttps://mcp.facebook.com/ads
Who makes it?Meta. Open beta since 29 April 2026
Works inClaude (web and desktop), Claude Code, ChatGPT. Cursor needs your own Meta app
Read or write?Both. New campaigns, ad sets and ads are created paused
What it can't seeYour store: orders, refunds, what visitors do on your site

What the Meta Ads MCP does

The Ads MCP Server is Meta's own remote server that lets an AI agent read and manage your ad account (Meta docs). Meta says no developer credentials, API setup or coding are needed for the basic path (Meta for Business). When I connected it on 19 October 2026 it listed 97 tools. The ones that matter for a store:

GroupWhat you can ask forExample tools
ReportingSpend, results, cost per result, trends, anomalies, benchmarksads_get_ad_entities, ads_insights_performance_trend, ads_insights_anomaly_signal
AdsCreate, edit, pause, preview ads, ad sets and campaignsads_create_campaign, ads_update_entity, ads_get_ad_preview
SignalsPixel and Conversions API health, event match qualityads_get_dataset_quality, ads_get_dataset_stats
CatalogFeed errors, whether catalog ads can runads_catalog_get_diagnostics, ads_catalog_get_dynamic_ads_health
HelpDelivery errors, Meta Help Center searchads_get_errors, ads_get_help_article
TestsA/B tests and lift studiesads_experiment_abtest_create_test
HistoryWhat changed in the account, and who changed itads_account_get_activity_logs

Tool names are from Meta's tool reference.

Before you start

  • A Facebook profile with access to the ad account, through a business portfolio.
  • Your ad account has to be in Meta's rollout. If it isn't, you'll see is_ads_mcp_enabled: false (more in the errors below).
  • On claude.ai's free plan you get one custom connector. On Team and Enterprise, an owner adds the connector in Organization settings first (Claude Help).
  • When you sign in, you pick a business portfolio and the access covers that whole portfolio. Connect only the one you need.

Set it up in Claude

  1. In Claude, open Customize, then Connectors.
  2. Click "+" and choose "Add custom connector".
  3. Name it "Meta Ads" and paste https://mcp.facebook.com/ads, then click Add.
  4. Click Connect, sign in with Facebook, and choose the business portfolio to connect.
  5. In a new chat, open "+", then Connectors, and switch Meta Ads on.

Claude Code

claude mcp add --transport http meta-ads https://mcp.facebook.com/ads

Then run /mcp inside Claude Code and finish the login in your browser. This plain form works on my setup as of October 2026. Meta's docs show the version with your own Meta app, which you need for agency or system-user setups (Meta get started):

claude mcp add --transport http --client-id <META_APP_ID> meta-ads https://mcp.facebook.com/ads

Cursor

The plain config fails with "Dynamic registration is not available for this client", because Cursor's redirect isn't on Meta's allowlist (Cursor forum). For now, use Cursor through your own Meta developer app (Use cases, then "Create & manage ads with ads MCP server", as in Meta's July update), or use Claude.

What to ask once it's connected

For a Shopify store, these are the useful first questions:

  • "Which campaigns spent the most in the last 30 days, and what was the cost per purchase for each?"
  • "Is my pixel healthy? Show event match quality for Purchase and AddToCart."
  • "Are there any errors stopping my ads or my catalog from delivering?"
  • "Which ads have the worst cost per result this week compared with last week?"
  • "What changed in the account in the last 7 days?"

What it can't answer on its own

Every number the Meta MCP gives you is Meta's own count. None of its tools reads your store's orders, refunds or what people do once they land on your site (Meta tool reference). And Meta's conversions use its attribution windows and statistical modelling for part of iOS traffic (Meta), which is why so many merchants ask why Meta purchases don't match Shopify orders (Shopify Community).

So it can tell you an ad is cheap. It can't tell you whether the people it sends ever look at your page.

Here's a real one, from our own ad account for anry.io. We ran a campaign optimised for landing page views. This is what Meta reports for it through the MCP:

anry-traffic-lpv
amount_spent      A$122.03
link_click        498
landing_page_view 460
cost_per_result   A$0.27 per landing page view

Cheap. On Meta's numbers, a good campaign. Then I asked the same question with Anry connected next to it: what did those visitors actually do on the page? Anry follows each click from the ad to the visit and the order. About 98% of those visits never scrolled or tapped anything, and nearly all of them came from Instagram Reels and Stories placements. Mistaken taps, basically. We paused the campaign the same day.

Neither tool alone would have said that. Meta counted a landing page view the moment the page loaded. The store side only knew it got traffic. The answer was in the join between the ad and the page, which is the part Anry adds. Add it the same way as Meta's:

claude mcp add --transport http anry https://mcp.anry.io/mcp

Official MCP vs Anry vs a CSV export

Meta Ads MCPAnry MCPCSV export into Claude
Ad spend and Meta resultsYes, liveYes, per campaign and per adYes, a snapshot
Your store's real ordersNoYesNo
What visitors do on the pageNoYesNo
Changes adsYes, created pausedNo, read-onlyNo
CostFree in betaFrom $99/moFree

If you only want to report on and manage your Meta ads from Claude, Meta's own server is enough. Add Anry when the question is why the clicks don't turn into orders.

Is it safe?

Meta's server is the permitted route. By using it you and your agent are bound by the Meta Platform Terms (Meta MCP hub). Some guardrails are built in. New campaigns, ad sets and ads are created paused, the create tools ask for confirmation, and turning an ad on is a separate step (Meta docs). In Meta Business Suite you can also set server rules, for example blocking any budget increase above 20% or blocking campaign creation entirely (Meta, server rules).

Stories about accounts banned for using AI tools mostly involve third-party tools doing bulk changes overnight. Meta hasn't confirmed any of them. Keep a human approving every write and you're using the product as Meta designed it. Anry itself can't change anything in your ad account: every one of its tools is read-only.

Common errors and the fix

ErrorWhat it meansFix
is_ads_mcp_enabled: falseYour ad account isn't in the rollout yetNothing to do on your side. Wait, or use a third-party MCP meanwhile
"You can't connect to Ads MCP server with this account."Wrong Facebook profile, or no role on the ad accountSign in with the profile that has access
"Dynamic registration is not available for this client"Your client (often Cursor) isn't on Meta's allowlistUse Claude, or connect through your own Meta app
"The provided redirect_uris are not registered for this client."An older Claude Code OAuth issueUpdate Claude Code, or use --client-id with your own Meta app

Frequently asked questions

Is there an official Meta Ads MCP server?

Yes. Meta launched the Ads MCP Server in open beta on 29 April 2026, at https://mcp.facebook.com/ads. It works with Claude, ChatGPT and other MCP clients.

Is the Meta Ads MCP free?

It's free during the open beta. Meta hasn't published a price.

Can Claude create and publish Meta ads through the MCP?

It can create campaigns, ad sets and ads, but they're created paused and need your confirmation. Making them live is a separate step, and server rules in Meta Business Suite can block it.

Will connecting Claude get my ad account banned?

Using Meta's own MCP server is the permitted route, under the Meta Platform Terms. The reported bans involve third-party tools making bulk changes without a human in the loop, and Meta hasn't confirmed them.

Why do Meta's purchases not match my Shopify orders?

Meta counts conversions in its own attribution windows, models part of them, and its purchase value usually includes shipping and tax. Shopify counts real orders. The Meta MCP only gives you Meta's side.

Does the Meta Ads MCP work with Cursor?

Not with the plain URL as of October 2026. Cursor needs your own Meta developer app to connect.

Sources

See which ad clicks leave your store before they buy.

14-day free trial, no card. Works in Claude, Claude Code and Cursor.

Start free trial