Camberstack

Free for 1 Google Ads account. No card.

A hosted Google Ads MCP server

Your AI reads your Google Ads account and proposes changes. Nothing changes until you approve, and undo takes one message; the few changes Google can't reverse are flagged first.

Works with ClaudeChatGPTCursorClaude Codeany MCP app

Demo account · sample plumbing business

Which search terms are wasting money in Emergency Plumbing?

"plumber jobs near me" cost $84.60 and "plumber salary" $41.20, with no conversions: people looking for work, not a plumber. I can add "jobs" and "salary" as negative keywords.

Proposalproposed
  • Add 2 negative keyword(s) to campaign "Emergency Plumbing – Search": "jobs", "salary"
Checked with Google, nothing changed yet

Apply it.

applied  Done. If it blocks searches you wanted, ask me to undo it: that removes exactly these two negatives.

Undo on every plan

Ask your AI to undo a change, and it reverses exactly that change. Every applied change is listed on your account page, with its undo if it has one. The few Google can't reverse warn you before you approve.

Warnings before you approve

Turning a campaign on, more than doubling a budget or bid, or switching bid strategy is flagged in the proposal.

A demo account to try first

Every tool works on a sample account before you use your own. Changes there never reach Google.

  • Negative keywords and budgets up to whole new Search, Performance Max, Display and YouTube campaigns
  • One URL and a Google sign-in for Claude, ChatGPT, Cursor or any MCP app. Works with manager (MCC) accounts
  • Optional, read-only Search Console: where you already rank, and which searches you may be paying for twice
  • Optional Google Analytics 4: which landing pages turn ad clicks into conversions

Google Ads

What it can change

Every change is a proposal you approve, and all but a few have an undo: the ones Google can't reverse warn you first. A new campaign is always created paused, so building it and letting it spend are two separate approvals.

  • Add negative keywords to a campaignUndo: Removes exactly the negatives it added
  • Pause or re-enable a campaign, ad group or keywordUndo: Restores the previous status
  • Change a campaign's daily budget (not shared budgets)Undo: Restores the previous amount
  • Set or remove the last day a campaign runsUndo: Restores the previous end date
  • Build a Search campaign: budget, bidding, locations, languages, ad groups, keywords, responsive search ads, negatives, sitelinks. Created pausedUndo: Removes the campaign it built
  • Build a Display campaign: responsive display ads from your image URLs or existing image assets, budget, bidding, locations, languages. Created pausedUndo: Removes the campaign it built
  • Build a Demand Gen campaign with YouTube video ads (the API's route onto YouTube; Google doesn't let it create Video campaigns). Created pausedUndo: Removes the campaign it built
  • Build a Performance Max campaign: asset groups of headlines, descriptions, images and videos, business name and logo, conversion bidding, locations, languages (no shopping feed). Created pausedUndo: Removes the campaign it built
  • Add an ad group, keywords, a responsive search ad or sitelinks to an existing campaignUndo: Removes exactly what it added
  • Make a campaign count and bid on one conversion category only (e.g. sign-ups)Undo: Restores the previous goals
  • Change a keyword's or ad group's max CPCUndo: Restores the previous bid
  • Pause or re-enable an ad (add the new ad and pause the old one to replace it)Undo: Restores the previous status
  • Add or remove a campaign's locations and languages; in-location-only or also interestedUndo: Restores the previous targeting
  • Switch bid strategy: manual CPC, maximize clicks, maximize conversionsUndo: Restores the previous strategy
  • Set a campaign's tracking URL suffixUndo: Restores the previous suffix
  • Create a conversion action, or set how many conversions a click can count, or its value, window and attributionUndo: Removes it / restores the previous setting
  • Remove a conversion actionUndo: None: Google can't restore it, so it warns you first (a GA4 import can be imported again)
  • Edit a responsive search ad in place: it keeps its statsUndo: Restores the previous text and link
  • Negative keywords on an ad group, and shared negative listsUndo: Removes them, or restores the list
  • Ad schedules and device bidsUndo: Restores the previous settings
  • Add callouts, structured snippets, a business name, logos and imagesUndo: Takes them off again
  • Turn AI Max and Google-written text on or offUndo: Restores the previous settings
  • Create a remarketing list of site visitors and add it to a campaign in observation (no customer data)Undo: Removes the list / takes it off
  • Delete keywords, negatives or sitelinksUndo: Adds them back; a sitelink comes back as a new one, so its history restarts
  • Delete an ad, ad group, campaign or shared negative listUndo: None: these can't be restored, so each warns you first
  • Apply or dismiss one of Google's recommendationsUndo: None: applying warns you first, and Google picks the details

Besides the warnings above, a proposal also warns before removing a campaign's last location. It deletes only what you approve, and it cannot touch billing or edit anything outside Google Ads and the Google Analytics setup changes below. Any question beyond these tools is answered with read-only queries. Every tool and what it can do; the code is open source.

Optional · read-only

Search Console

Leave the Search Console box ticked when you connect, and your AI can read your site's Google Search clicks, impressions, queries and positions, and line them up against your ads:

Paid and already ranking
Searches you pay for where your site is already in the top few organic results, with the ad spend on each.
Organic gaps
Searches your site shows up for on page 2 or lower, with no ad covering them.
Site totals
Clicks, impressions, CTR and position against the previous period.
Trends
Which searches and pages are rising, falling, new or gone since the period before.
Opportunities
Searches just off page 1, and top results with a click-through rate low enough to point at the title.
Indexing
Whether Google has indexed a page and why not, when it last crawled it, and when it last read your sitemap.

Camberstack can't change anything in Search Console. The Search Console tools work without a Google Ads account too: Search Console MCP.

Optional

Google Analytics 4

Leave the Google Analytics box ticked when you connect, and your AI can read your GA4 properties next to your ads:

Landing pages
Sessions, engagement and key events (GA4's conversions) per landing page, for all traffic or one channel, such as Paid Search.
Reports
Any GA4 report by dimension and metric, for example paid against organic traffic last month.
Setup check
Each property's web streams and measurement IDs, which events count as key events, and which Google Ads accounts it's linked to.

It can also change that setup, with the same proposal, approval and undo as a Google Ads change:

  • Create a GA4 property with a web stream (the result gives the measurement ID and the tag your site needs)Undo: Moves the property it created to Google Analytics' trash (restorable there for 35 days)
  • Mark or unmark an event as a key eventUndo: Restores the previous setting
  • Link or unlink a Google Ads accountUndo: Restores the previous link

Google Ads, Search Console and Google Analytics are each optional: untick any of them, and when you later ask about it Camberstack gives you a one-click link that adds it. The demo includes a sample GA4 property.

Two minutes

Connect

Add this server URL to your AI app, then sign in with Google.

https://camberstack.io/mcp

Claude web and desktop

Camberstack is in Claude's connector directory: open it there and click Connect, then sign in with Google.

Setup guide →

ChatGPT web and phone app

Camberstack is in ChatGPT's plugin directory: open it there and click Install plugin, sign in with Google, then type @Camberstack in a chat.

Step-by-step setup guide →

Claude Code

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

Cursor, VS Code, others

{ "mcpServers": { "camberstack": { "url": "https://camberstack.io/mcp" } } }

Your AI app handles sign-in. Google shows exactly what Camberstack asks for before anything is shared: your Google Ads, and (optional) read-only Search Console and Google Analytics, which changes nothing without your approval.

Want to look first?

Connect, then ask "Show me Camberstack's demo account". It's a sample plumbing business with six months of campaigns and search terms, so you can try questions, proposals, applying and undo without touching a real account. Changes there never reach Google, and the demo doesn't count as one of your plan's accounts. A Google login with no Google Ads access gets the demo automatically.

Pricing

Free for one account. $7/month for all three, $15/month for 5 accounts, $49/month for 25.

Free

$0

Every tool, with unlimited applied changes and undo, on 1 Google Ads account. No card.

From November 15: one Google service at a time (Google Ads, Search Console or Google Analytics).

Connect for free

Plus

$7/month

Google Ads, Search Console and Google Analytics together, on 1 Google Ads account, for anyone who wants one connection for all of it. Cancel any time.

Available from November 15.

Pro

$15/month

Google Ads, Search Console and Google Analytics together, on up to 5 Google Ads accounts, for owners with a few brands and freelancers with a few clients. Cancel any time; you keep Pro until the end of the month you paid for.

Upgrade to Pro

Connect Camberstack to your AI app first; you'll sign in with the same Google account.

Agency

$49/month

Google Ads, Search Console and Google Analytics together, on up to 25 Google Ads accounts, for agencies and anyone managing clients through a manager (MCC) account. Already on Pro? Switch from your account page; the difference is prorated.

Upgrade to Agency

Questions

Can the AI change my account without asking?

Not without a proposal. Every change is first stored as a proposal and checked with Google; applying it is a separate tool call, and the server refuses anything that wasn't proposed first or belongs to someone else. If the account changed since the proposal, it isn't applied: you get an updated proposal to approve instead. Claude and ChatGPT normally ask you before running a tool that changes things, but if you've set that tool to "always allow", the AI could propose and apply in one go. Keep the confirmation on for apply_changes.

What data do you keep?

Your Google email, an encrypted Google refresh token, and the proposals you make (with their results, so you can undo them). Reports and query results are not stored. Details in the privacy policy.

How do I disconnect?

Sign in at camberstack.io/account and choose Disconnect Google Ads, or remove Camberstack at myaccount.google.com/permissions. You can also ask your AI to use the disconnect tool, though some apps (ChatGPT, for one) block disconnect requests from chat.

What does Free cover?

Until November 15, every tool on 1 Google Ads account, with Search Console and Google Analytics included. From then, one Google service at a time: Google Ads (1 account), Search Console or Google Analytics, with every tool and unlimited changes. The first time, your AI asks which one; another opens 30 days after the current one was last used. Plus ($7/month) covers all three together on 1 Google Ads account, from November 15. Pro and Agency cover all three on more accounts.

What counts as an account?

Each Google Ads account you actually use Camberstack on in the last 30 days, not every account your login can see. A manager (MCC) account and the demo account don't count. Free covers one account at a time, and you can switch to another once every 30 days: the new one becomes active and the old one is locked. Past that, a plan-limit error comes with a personal checkout link. Undo and change history always work.

Ask your Google Ads account a question.

Free for one account, with unlimited changes and undo.