Open-source MCP server
Connect Claude to your Google Ads in 60 seconds.
One-click OAuth, no local install. Lets any MCP-compatible host analyze your ad accounts — campaign performance, wasted spend, search terms, keyword quality — straight from a conversation. Read-only: it can't change bids, budgets or ads.
We never store your Google Ads data. Only an OAuth refresh token, encrypted at rest, so the connector can act on your behalf.
How it works
-
1
Click "Connect with Google"
Standard Google consent screen. You grant access to Google Ads. We capture an offline refresh token, encrypt it with AES-256-GCM, and mint a personal MCP bearer token for you.
-
2
Paste the install command
One
claude mcp addcommand, pre-filled with your token, ready to copy. Works in Claude Code, Claude Desktop, Cursor, Continue.dev — anything that speaks MCP. -
3
Ask about your ad accounts
Just ask. Examples:
- "Which campaigns spent the most last month, and what was the cost per conversion?"
- "Find search terms that cost over ₹500 in the last 30 days with zero conversions."
- "Compare this month to last month by campaign — what changed the most?"
10 tools, ready to call
list_accountsAccounts you can reach, incl. under manager accounts.
account_summaryAccount totals, optionally per day.
campaign_performanceSpend, clicks, conversions per campaign.
ad_group_performanceSame, per ad group.
keyword_performanceKeywords with match type + quality score.
search_terms_reportReal queries that triggered ads — find wasted spend.
ad_performancePer-ad metrics, approval status, ad strength.
compare_periodsPeriod-over-period deltas: biggest movers first.
run_gaqlAny read-only GAQL query.
search_gaql_fieldsDiscover GAQL fields and compatibility.
Security model
- • Google refresh tokens are encrypted with AES-256-GCM before being written to Mongo. Key lives in env, never in the database.
- • MCP bearer tokens are stored as sha256 hashes only — the plaintext is shown once on connect, then unrecoverable.
- • Per-request OAuth client is built from the decrypted refresh token, used for that single call, then discarded.
- • Revoke at any time — server-side revocation is instant.
- • Code is open-source on GitLab; self-host if you'd rather not trust a hosted service.