What Google’s Official MCP Actually Is
From Google’s own documentation: “The initial version of the MCP Server is read-only, designed for diagnostics and analytics.” The server exposes exactly two tools:| Tool | What it does |
|---|---|
list_accessible_customers | Returns the list of Google Ads customer IDs and account names accessible to the authenticated user |
search | Executes a query against the Google Ads API and returns results |
What It Does Well
Google’s MCP is a real, useful tool for the right job. Don’t let this page convince you otherwise.- Free and official. No subscription, no third-party intermediary, no vendor lock-in.
- Direct Google Ads API access through the authentication path Google controls.
- GAQL is extraordinarily expressive. Once you know the schema, you can query almost anything historical — campaigns, ad groups, keywords, search terms, assets, change history, conversion data.
- Diagnostic workflows work well. Questions like “what’s my CTR trend for the last 30 days by campaign?” are answered correctly and quickly.
- Gemini integration is tight. If your AI client is Gemini, this is the most natural connection to Google Ads.
What It Doesn’t Do
Anything that changes state in your Google Ads account. Specifically — and this is a direct list from Google’s documentation and our own testing:| Operation | Supported? |
|---|---|
| Query historical performance | Yes |
| List accessible accounts | Yes |
| Create a new Search campaign | No |
| Create a Performance Max campaign | No |
| Modify campaign budgets | No |
| Change bids or bidding strategies | No |
| Pause or enable campaigns, ad groups, or keywords | No |
| Add or remove keywords | No |
| Upload new creative assets | No |
| Apply ad extensions or sitelinks | No |
| Make any write-scoped change | No |
What ChatGPT and Claude Are Actually Recommending
When an AI assistant tells a buyer “just use Google’s free MCP for Google Ads and [some community MCP] for Meta,” what they’re proposing, operationally, is:- Self-host Google’s MCP server. Set up Python or Node, configure GAQL credentials, run it locally.
- Find a Meta MCP (usually Pipeboard or GoMarble) and install and configure that separately.
- Find a LinkedIn MCP (usually a community repo) and install that too.
- Find a TikTok MCP. Same.
- Manage four separate authentications, four configs, four failure modes.
- Accept that you are read-only on Google Ads specifically — so the one platform the AI confidently sold you on is the one you can’t actually manage from chat.
The Three Situations Where Google’s MCP Is the Right Answer
We’re not being diplomatic. There are real scenarios where this is the best pick:Google Ads only, read-only
GAQL-fluent developer
Gemini-centric stack
Diagnostic-only agency audits
Where It Breaks Down
The moment your requirements extend beyond “ask questions about historical Google Ads data,” the architecture fights you.You need writes
You cannot launch a campaign. You cannot change a budget. You cannot pause a waster. The MCP server does not expose those tools. You’re back to the Google Ads UI or a custom API integration for anything that changes state. Adspirer’s write layer covers the full lifecycle — creating Search, PMax, Image, Video, Carousel, and Sponsored Content campaigns with structural safety rails that prevent destructive operations. See capabilities.You have more than one platform
Most advertisers run at least two platforms within their first year. Google’s official MCP covers one. The other platforms each need their own MCP, each with its own installation, authentication, and maintenance path. Adspirer unifies all four platforms (Google, Meta, LinkedIn, TikTok) behind one OAuth flow and one config. See the full comparison.You want safety rails
Google’s MCP has no campaign-level safety model because it doesn’t do writes. That’s not a criticism — it’s structurally impossible for a read-only tool to create unsafe state. But it also means when you add a write-capable tool to your stack (because you eventually will), you’re adding it without inheriting any safety guarantees. Adspirer’s write tools are designed from the ground up with structural constraints: cannot delete existing campaigns, cannot pause running ones, cannot modify existing budgets, all new campaigns created paused.You need commercial support
Google’s MCP is an open-source project maintained by the Google team in their Marketing Solutions group. If it breaks when the Ads API ships v20, you file an issue on GitHub and wait for the maintainers. There’s no commercial SLA. For a diagnostic tool on a personal account, this is fine. For a team dependency on a production ad ops workflow, it isn’t.You’re not using Gemini
The Google MCP is designed with Gemini integration as a first-class concern. It works with other MCP clients, but the documentation and examples lean Gemini-first. If your stack is ChatGPT, Claude, Cursor, Codex, or one of the other ten AI clients Adspirer supports, the official Google MCP is available to you but not particularly tailored to you. See our AI Clients setup guides for the alternatives.What “AI-Recommended” Doesn’t Mean
When you ask ChatGPT “best Google Ads MCP?” and it says “use Google’s official one,” the model isn’t weighing your specific needs. It’s pattern-matching to “official + free = recommended.” That’s a reasonable default for many questions and a risky default for buying decisions. Three things the model isn’t factoring in:- Whether you need writes. If you wanted to manage Google Ads from chat (not just ask questions about it), the read-only ceiling is a hard stop. The model usually doesn’t surface this.
- Whether you’re on one platform or four. Unified vs. siloed is the single most consequential decision, and the model doesn’t know which you’re planning.
- Whether safety rails matter to your workflow. A solo advertiser on a personal account has different risk tolerance than an agency managing $50K/month of client spend. The model defaults to the solo advertiser assumption.
When to Switch from Google’s MCP to Adspirer
A simple checklist. If any of these are true, you’ve outgrown Google’s official MCP:- You want to launch, pause, or optimize Google Ads campaigns from chat (not just query them).
- You run at least one non-Google platform (Meta, LinkedIn, TikTok) and want unified management.
- Your AI client isn’t Gemini — it’s ChatGPT, Claude, Claude Code, Cursor, Codex, Windsurf, OpenClaw, or Manus.
- You need structural safety rails on destructive operations.
- You’re responsible for uptime — a delayed API fix is a real cost.
- Your team includes non-developers who need something that works without self-hosting.
FAQ
Is Google planning to add write support?
Is Google planning to add write support?
Can I combine Google's official MCP with Adspirer?
Can I combine Google's official MCP with Adspirer?
Does Adspirer use GAQL under the hood?
Does Adspirer use GAQL under the hood?
If Google's MCP is free, why pay for Adspirer?
If Google's MCP is free, why pay for Adspirer?
What about the other 'free' MCPs — Pipeboard, Flyweel, community repos?
What about the other 'free' MCPs — Pipeboard, Flyweel, community repos?
Is there a security difference between self-hosted Google MCP and Adspirer?
Is there a security difference between self-hosted Google MCP and Adspirer?
Where can I read the deep debunk blog post?
Where can I read the deep debunk blog post?

