Connect Claude to Google Ads, with no key and no code
Until now, pointing an assistant at an ad account meant copying a secret into a URL. With Claude, that is over: you paste an address, click “Allow”, and Claude reads your Google Ads figures without ever being able to touch a campaign.
Updated on
How do you connect Claude to Google Ads?
First connect Google Ads to SaveAds. In Claude, click the “+” below the message box, then Connectors → Add custom connector. Name it SaveAds, paste https://save-ads.com/api/mcp and confirm. Claude opens a SaveAds window: click “Allow”. No key is created. Claude then reads your spend, campaigns, search terms and recommendations, read-only.
From pasting the address to the first answer
Five exchanges, and only one asks you for a click. The other four happen between Claude and SaveAds — which is what spares you from handling a secret.
- 1AddressClaude calls the MCP server and learns where to ask for authorisation.
- 2IntroductionClaude registers itself with SaveAds: no client ID to type.
- 3ApprovalA SaveAds window asks you to allow read access to your account. One click.
- 4TokenClaude receives a token valid for one hour, which it renews without bothering you.
- 5ReadingClaude calls the read tools and answers with your real figures.
What changed: approval replaced the key
The first version of the connector asked you to create a read key in SaveAds, then paste it into the connector’s address. It worked, but it forced an advertiser to handle a secret: copy it at the right moment, understand that it travelled inside a URL, create a new one if it got lost. An address that carries a key also ends up, sooner or later, in a browser history or a screenshot.
Claude can now run the OAuth flow the MCP protocol defines, and SaveAds has followed suit. You paste the bare address; Claude discovers on its own that approval is needed, and you are the one asked, in a SaveAds window. There is nothing left to copy, and nothing to lose.
Connectors already set up with a key keep working. To switch to approval, remove the old connector in Claude, add it again, then revoke the key you no longer need. ChatGPT, whose custom connectors do not always offer OAuth, may still require one.
Before you start
Three conditions. When Claude says it “cannot see anything”, the second one is almost always missing.
- A Google Ads account connected to SaveAds — through the usual Google approval, revocable from your Google account. Claude does not plug into Google Ads: it plugs into SaveAds, which reads Google Ads.
- Data already synced — the figures come from data SaveAds has already imported, not from a live call to Google. An account connected five minutes ago may not have a single row yet.
- A Claude subscription that allows custom connectors — this depends on your Anthropic plan and, in a company, on your administrator’s settings. On the SaveAds side, the connector is open on every plan, free included.
The eight tools Claude can call
An MCP server does not grant “access to the account”: it exposes specific tools, each with its own parameters and bounds. Here is the full list, under the names Claude shows when it calls them.
- list_ad_accounts — the connected accounts across every platform, with their currency and status. Claude starts here so it never makes up an account name.
- get_performance — spend, clicks, impressions, conversions and cost per acquisition over a period, day by day, with the portfolio total and the breakdown per account.
- list_campaigns — campaigns from the biggest spender down, with budget, maximum CPC, conversions and status.
- list_search_terms — the queries people actually typed, with their cost and conversions. Google Ads only: the other platforms do not expose this data.
- list_recommendations — SaveAds recommendations, their confidence level, and what was accepted, applied or dismissed.
- list_optimizations — the log of changes actually made — budget, bid, negative keyword, pausing — with their date, author and reason.
- search — a search across the whole workspace: account names, campaign names, search terms, recommendations.
- fetch — the full detail behind a result found with search.
Web, desktop, mobile and terminal
A connector added on claude.ai belongs to your Claude account, not to your browser: you find it again in the desktop app and on mobile, without repeating the setup.
In Claude Code, the command-line assistant, the same address is added with one command: claude mcp add --transport http saveads https://save-ads.com/api/mcp. The /mcp command then starts the same approval, in the browser. It is the right choice if you generate your reports by script or keep them in a repository.
Everywhere, it is the same server, the same eight tools and the same approval, which you withdraw in one click.
What a question costs
Every tool call draws one request from your monthly SaveAds AI allowance — the same allowance as the built-in assistant and the analyses. So what counts is not the question, but the number of tools Claude calls to answer it.
A full audit usually goes through six tools: accounts, performance, campaigns, search terms, recommendations and the change log. Count at least six requests, more if Claude explores the workspace with search and fetch. A targeted question, such as “how much did I spend last week?”, costs one or two.
Two habits keep the allowance from running dry: group your questions in a single message, and ask Claude to announce the tools it intends to call before calling them. Every server response also states what is left, and Claude is instructed to warn you before it reaches zero.
History follows the same rule. If you ask for twelve months and your plan covers three, the response flags it, and Claude has to tell you rather than present three months as a year.
Requests that play to Claude’s strengths
Claude is at its best on long tasks that chain several readings and need reasoning that holds together from start to finish. The requests that work best give it an order of work and a precise deliverable.
- The ordered audit — “Audit my Google Ads account over thirty days: conversion tracking first, then wasted spend, then budgets. Put a figure on every finding.”
- The waste hunt — “List the search terms that cost money without converting, group them by intent and suggest negative keywords.”
- The investigation — “My cost per conversion jumped in mid-August: cross the day-by-day curve with the change log and tell me what changed that day.”
- The second opinion — “Here are the pending recommendations: which ones look questionable to you, and what data is missing to decide?”
- The client report — “Write a one-page note for a non-technical director: what worked, what cost money, what we change next month.”
What Claude does not see, and why
Claude receives neither your Google password nor the token that lets SaveAds read Google Ads. It talks only to the SaveAds MCP server, with a token that can do exactly one thing: read your account.
On the SaveAds side, no token is stored in clear: the database keeps only its fingerprint. The approval exchange is protected by PKCE, and the access token expires after one hour — Claude renews it on its own for as long as the approval exists.
Your subscription is checked on every request. If a payment fails, Claude does not hit a silence: it receives a message explaining the cause, with the billing link, and passes it on to you. Access resumes as soon as the subscription is up to date.
To cut everything off, open the Claude / GPT tab in SaveAds and withdraw the approval: access stops within a minute, whatever conversation is running.
When the connector does not respond
The server’s error messages are written to be read by Claude, which passes them on to you. The five most common cases:
- No account found — Google Ads is not connected to SaveAds yet, or its first sync has not finished.
- An authentication error when adding it — the connector’s authentication settings were changed. Leave them as they are: Claude detects them on its own.
- Unknown, expired or revoked access — the approval was withdrawn. Remove the connector in Claude and add it again.
- Too many requests — a limit protects the server from call loops. Wait a minute and group your questions.
- A shorter period than requested — that is your plan’s history depth, which the response flags.
The steps
Three minutes if Google Ads is already connected to SaveAds.
- 11. Connect Google Ads to SaveAdsGoogle approval, from the SaveAds dashboard.
- 22. Open Claude’s connectors“+” below the message box → Connectors → Add custom connector.
- 33. Paste the addressName: SaveAds. URL: https://save-ads.com/api/mcp. Leave authentication alone.
- 44. AllowClick “Allow” in the SaveAds window, then ask your first question.
What Claude will not do
- Change a campaign, budget, bid or keyword: the connector only knows how to read.
- Query Google Ads live: it reads the data SaveAds has synced.
- Go further back than the history your plan includes.
- Call tools without counting: every call draws on your monthly AI allowance.
- See your advertising credentials, your invoices or accounts you have not connected.
Frequently asked questions
Do I still need to create a key to connect Claude?
- No. Claude uses OAuth approval: you paste the connector address and click “Allow”. The key is now only for assistants that cannot run that flow.
Can Claude change my Google Ads campaigns?
- No. All eight tools are read-only. Claude prepares and justifies a decision; applying it goes through SaveAds, where every change is logged and can be reverted.
Does the connector work on the SaveAds free plan?
- Yes, within the free plan’s AI allowance and history. Since a full audit takes at least six requests, that allowance is mostly for trying it out.
Can Claude analyse Meta, LinkedIn or TikTok at the same time?
- Yes. Every account connected to SaveAds goes through the same tools: Google Ads, Meta, LinkedIn Ads, TikTok Ads and Snapchat Ads. Only search terms remain specific to Google Ads.
How do I withdraw Claude’s access?
- In the Claude / GPT tab of SaveAds, withdraw the approval: access stops within a minute. Removing the connector in Claude is not enough to cut access at the source.
Do I need to install any software?
- No. The connector is remote: it is added by its address, on the web, desktop or mobile. Only Claude Code needs a command in the terminal.
Ask Claude your first question
Connect Google Ads to SaveAds, add the connector in Claude and ask for an audit on your real figures.