Both ad platforms now ship an official MCP server. They are not the same kind of thing.
Google’s cannot change anything in your account. Meta’s can create campaigns and move budgets. Same protocol, same three-minute setup, completely different blast radius.
👉 The short version
Connect Google’s first. The worst a read-only server can do is tell you something wrong.
Connect Meta’s only if you actually want an assistant taking actions, and when you do, keep a human between the suggestion and the spend.
If you only ever want to ask questions about performance, Google’s model is the one you want, and Meta lets you approximate it with a permissions choice.
The comparison, in one table
Everything here was checked on 29 July 2026 against the platforms’ own repos and docs. Sources are linked in each row’s detail below.
| Google Ads MCP | Meta Ads MCP | |
|---|---|---|
| Official? | Yes, googleads/google-ads-mcp | Yes, hosted at mcp.facebook.com/ads |
| Can it change your account? | No. Read-only | Yes. Creates campaigns, edits budgets |
| Where it runs | Your machine | Meta’s servers |
| Setup | Python install, developer token, OAuth client | Paste a URL, then browser sign-in |
| Hardest part | Waiting for the developer token | Nothing, unless you are an agency |
| Live since | 3 October 2025 | 29 April 2026 |
| Cost | Free, open source (Apache-2.0) | Free, in open beta |
| Works with Claude Desktop connectors | No, it runs locally | Yes, paste the URL |
| Works with Claude Code | Yes, this is its natural home | Yes |
Google’s server: it reads, and that is the point
Google’s server has been open source since October 2025 and is still actively maintained. The most recent commit at the time of writing was 13 July 2026, and it was a security fix preventing OAuth credentials from being written to logs. Worth knowing that it came from an outside contributor rather than from Google, which is a fair sign the project is being used by people who read the code.
The important line is in Google’s own documentation:
This implementation is strictly read-only. It cannot modify bids, pause campaigns, or create new assets.
It exposes three tools: list_accessible_accounts, search to run a GAQL query, and get_resource_metadata to describe what fields exist. Alongside them sit four read-only resources, including the API discovery document and the release notes. Every one of them answers a question. None of them changes anything.
An assistant connected to this can tell you your Brand campaign’s CPA tripled last Tuesday. It cannot then pause it.
This is a feature and it is why I would connect this one first. The failure mode of a read-only server is that it tells you something wrong, and you can check it. The failure mode of a write-enabled server is that it does something wrong, and you find out from the invoice.
The bit the tutorials skip
You need a Google Ads developer token to use it. That means an application through API Centre against a manager account, and approval is not instant.
Google publishes the timelines: Basic Access is reviewed within five business days and Standard Access within ten . So the honest answer to “how long until I can use this” is up to two working weeks, not an afternoon.
That single requirement is the real reason this server has not gone mainstream with PPC managers, and no amount of “5 minute setup” framing changes it. If you have a developer token already, you are ten minutes away. If you do not, start the application before you read the rest of this.
Because it runs locally, Claude Desktop’s connector feature will not reach it. Anthropic’s cloud connects to remote servers, and this one lives on your laptop. Claude Code is the natural home for it.
Meta’s server: it writes, and that is the risk
Meta announced theirs on 29 April 2026 , and it is a genuinely different animal. It is hosted by Meta, so there is nothing to install. You add https://mcp.facebook.com/ads as a custom connector in your AI assistant and sign in with your Meta Business account.
For an advertiser connecting their own account, that really is the whole setup. No developer app, no token in a config file.
If you manage other people’s accounts, it is not. Meta’s July 2026 developer update is explicit: “If you manage data on behalf of other businesses (agency or partners), you need to submit your app for review”, and you have to request Advanced Access on the ads_mcp_management permission. So the easy path is the advertiser path, and agencies inherit the review process they were hoping to skip.
The permissions, from the endpoint itself
You do not have to take anyone’s word for what this server is allowed to do. The endpoint tells you, in a header, before you authenticate.
Ask Meta's MCP server what it wants access to
curl -s -D - -o /dev/null -X POST https://mcp.facebook.com/ads \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"probe","version":"1.0"}}}' \
| grep -i www-authenticate Run on 29 July 2026, that returns a 401 and this scope list:
ads_management ads_read catalog_management business_management
pages_show_list instagram_basic ads_mcp_management
ads_read is the one that just looks. ads_management is the one that spends. The other five reach your catalogue, your business assets, your Pages and your Instagram account.
That is the entire story in one line of an HTTP header. Meta built theirs to act. Google built theirs to answer.
Where this genuinely bites
You will find plenty of forum posts blaming AI tools for disabled ad accounts. I could not verify a single one against a source that publishes numbers, so I am not going to repeat them as fact.
What Meta does publish is more useful anyway, because it names the actual mechanism. Marketing API calls are scored , and the scoring is not symmetric: “a read API call is equal to 1 point, and a write API call is equal to 3 points”. Exceed your score and “You will be blocked for 60 seconds”. Meta also says that where it detects abnormal activity, “we will temporarily reduce the API Rate Limit quota of the abnormal accounts”.
So the platform is not watching for AI. It is watching for volume of writes, and it charges you triple for every one of them.
An assistant that makes one considered edit is behaving like a person. An assistant looping through forty edits an hour is spending your quota three points at a time and looking like the abnormal activity that documentation describes.
Your assistant will tell you the same thing at the moment you connect it, if you read the dialog rather than clicking through it.
“You are responsible for all actions taken with Claude” is not boilerplate here. With ads_management granted, those actions spend money.
If you connect Meta's server, do these three things
1. Start with read-only permissions. At the sign-in step, grant ads_read and withhold ads_management until you actually want it to act. You can always come back.
2. Test on your smallest account. Not the client spending £40k a month. Not on a Friday.
3. Approve every write yourself. Ask it to tell you what it would do, then do it, or approve one action at a time. The moment you let it batch changes unattended, you are the person in those reports.
So which one should you connect?
The honest answer depends on a question nobody asks first: do you want an analyst or an operator?
Connect Google’s if you want an analyst
You want to ask “which campaigns wasted money last month” and get a real answer from real data instead of a hallucinated one. You are comfortable with a terminal, or you have a developer token already.
That is the shape of the answer you get: named keywords, real spend, zero conversions, and a second list of what is working so you do not cut the wrong thing. It names the waste. It cannot act on it.
You get the safety for free. There is no setting to get wrong, because the capability does not exist.
Connect Meta’s if you want an operator, and you mean it
You genuinely want an assistant that builds campaigns and adjusts budgets, and you accept that you are now supervising something that spends money. The setup is easier and the capability is real.
Do not drift into this one. Choosing the easy setup because it is easy, and inheriting write access you never wanted, is the actual mistake this article exists to prevent.
Connect neither if you just want a PPC audit
If what you actually want is “tell me what is wrong with my account”, MCP is a heavy way to get there. You are installing a data pipe and then still having to know which questions to ask.
Our audit agent reads the account and hands back findings with no MCP wiring at all. I would rather say that plainly than pretend everyone needs a protocol.
What about ChatGPT?
ChatGPT does support MCP, through Developer Mode and the Apps SDK. The catch worth knowing before you plan around it: write-capable custom connectors are reported to be limited to Business, Enterprise and Education plans, with Plus and Pro getting read and fetch only.
OpenAI’s help centre blocks automated access, so I could not read the developer mode article to confirm the split myself. Open it on your own account before you plan a workflow around it. If you are on Plus and expecting to build campaigns by chat, that is the one thing to check first.
What Zapier was for, and why I stopped recommending it
Both of my original guides routed through Zapier, and for most of 2025 that was the right call, because it was the only bridge that existed for someone without a developer token.
It also had a ceiling nobody mentioned. Search the tool picker for Facebook Ads and you get lead-ads plumbing, not your ad account.
It still works and it has not been deprecated. But the economics changed. Zapier’s own page is blunt about it: “Each MCP tool call uses two tasks from your plan’s quota, the same task bucket your Zaps use.” Against the free plan’s 100 tasks a month that is fifty calls, and an analysis session can burn fifty calls in an afternoon.
More to the point, you are now paying a middleman to reach a destination that both platforms will connect you to directly, for free. Zapier earns its place when you want ads data flowing into something else. It no longer earns its place as the way to talk to your own ad account.
The thing I got wrong
I wrote the Google Ads MCP guide and the Facebook Ads MCP guide in April 2025, months before either platform shipped anything official. At the time, wiring Zapier in between was genuinely the only route for a non-developer.
Then Google shipped in October, Meta shipped in April, and I did not revisit either page. Anyone landing on them this year got a 2025 workaround presented as current advice, and both pages are being updated alongside this one.
The general lesson, which applies to anything you have written about a fast-moving platform: a tutorial about someone else’s product has a shelf life set by their roadmap, not yours. If they ship the thing you were working around, your page is wrong the same day, and nothing tells you.
- Is the Google Ads MCP server really read-only?
- Yes. Google's documentation states it 'cannot modify bids, pause campaigns, or create new assets'. It exposes three tools: listing accessible accounts, running a GAQL query, and describing available fields. If you want an assistant that changes things in Google Ads, this server is not it.
- Can Meta's MCP server actually spend my money?
- It can create campaigns and change budgets if you grant it the ads_management permission during sign-in. Grant only ads_read and it behaves like a read-only server. The permissions choice at sign-in is the safety control, so make it deliberately rather than clicking through.
- Do I need a developer token for Meta's server?
- Not if you are connecting your own ad account: Meta's server is hosted and authenticates through your Meta Business account in a browser. If you manage accounts for other businesses, Meta's July 2026 developer update says you must submit your app for review and request Advanced Access on the ads_mcp_management permission, so agencies do not get the easy path. Google's requires a developer token either way, reviewed within five business days for Basic Access and ten for Standard.
- Which one works with Claude Desktop connectors?
- Meta's, because it is hosted at a public URL that Anthropic's cloud can reach. Google's runs locally on your machine, so Claude Desktop's connector feature cannot see it. Use Claude Code for Google's server.
- Can connecting an AI assistant get my ad account banned?
- Forum reports exist but none of them publish figures, so treat them as rumour. What Meta does document is rate limiting: a write call costs three points against your score where a read call costs one, exceeding the score blocks you for 60 seconds, and Meta says it temporarily reduces the quota of accounts showing abnormal activity. The risk is write volume, not AI, so keep a human approving each action.
- Is Zapier MCP still worth using for this?
- Not as the primary route. Both platforms now connect directly and free. Zapier still makes sense when you want ad data flowing into other apps as part of a wider automation, but as a bridge to your own ad account it adds cost and a middleman for no benefit.
Where this leaves you
Two servers, one protocol, one meaningful difference. Google’s answers questions. Meta’s takes actions.
Connect the read-only one first, get used to what an assistant with real account data can actually tell you, and only reach for write access once you know what you would use it for. That order costs you nothing and it is very hard to regret.
P.S. If your reason for wanting any of this is “I want to know what is wasting money in my account”, start with the tools that already do that job before you install a protocol.