
InsightfulPipe publishes this guide, and the steps use its hosted Google Ads connector. Other ways to connect, including Google's own read-only server, come near the end.
Last updated: 2026-09-30
Short answer: To connect Google Ads to Claude, connect Google Ads in InsightfulPipe, add https://google-ads.insightfulmcp.com/ as a custom connector in Claude, and click Connect. InsightfulPipe's Google Ads MCP server needs no developer token, no OAuth app and no Google Cloud project of your own. Plans start from $29.99 a month.
Connect Google Ads to Claude: the quick version
Six steps take you from sign-in to a first safe question, and each gets its own section below.
- In InsightfulPipe, open Connected accounts, click Connect account and choose Google Ads.
- Pick Read-only or Read & write, click Continue with Google Ads and select your accounts.
- In Claude, open Customize > Connectors, click +, then Add custom connector.
- Paste
https://google-ads.insightfulmcp.com/, click Continue, then Add and Connect. - In a new chat, click +, open Connectors and switch Google Ads on.
- Run the read-only check under Verify it worked before the assistant changes anything.
Here is the hosted route beside Google's own server, at a glance.
InsightfulPipe | Google's official server | |
|---|---|---|
Setup | Sign in with Google, paste one URL | A Google Cloud project, OAuth credentials and Python |
Hosting | Hosted, nothing to install | You run it, on your computer or your own deployment |
Google Ads actions | 99: 37 read, 59 write, 3 destructive | 3 tools, all read-only |
Changes campaigns | Yes, within switches an admin sets per account | No |
Destructive actions | Off until an admin switches them on | None |
Works in | Claude, ChatGPT, Claude Code, Cursor, Gemini CLI, Codex CLI | MCP clients you set up yourself |
Price | From $29.99 a month | Free, Apache-2.0 |
What you are actually connecting
You connect Claude to InsightfulPipe's hosted Google Ads server, and that server to the Google Ads accounts you authorize. The whole path fits on one line:
Claude → InsightfulPipe Google Ads MCP server → your authorized Google Ads accounts
Claude never sees your Google password. It sends a structured request over MCP, and InsightfulPipe runs the matching Google Ads API call with the OAuth access you granted. Reports run as GAQL through Google's search stream, which cannot change data. Changes travel through a separate tool, execute_action.
Four things bound what the assistant can reach: your InsightfulPipe workspace, the accounts you connected, the actions switched on for each account, and your own Google Ads access level. You need no developer token, no OAuth app, no Google Cloud project, no server to host and no API version to track.

Before you start
You need four things: access to the Google Ads account, an InsightfulPipe workspace, a workspace role that can connect accounts, and a Claude plan with custom connectors.
- Google Ads access. A Google login that can open the account, or the manager (MCC) account above it.
- An InsightfulPipe workspace. Plans start from $29.99 a month; Starter covers 8 connected accounts, and each Google Ads account counts as one. Start a trial or compare plans.
- A role that can connect. Owners, Administrators and Operators can connect accounts and set their actions. Members on the User role run only the enabled reads on accounts granted to them.
- A Claude plan with custom connectors. Claude's Free, Pro, Max, Team and Enterprise plans include them, and Free allows one (Anthropic, checked 2026-09-30).
Google's own access levels still apply. Its access levels page lists Email-only, Billing, Read-only, Standard and Admin. Read-only can view campaigns and run reports but cannot edit campaigns; Standard and Admin can. InsightfulPipe never widens what your Google login may do.
Step 1: Connect Google Ads in InsightfulPipe
Step 1 links your Google Ads accounts to your InsightfulPipe workspace, and you choose how far the assistant may go before you sign in.
- Open Connected accounts and click Connect account.
- In Add an integration, find Google Ads and click Connect.
- Choose Read-only or Read & write. The action list underneath shows what each choice allows.
- Click Continue with Google Ads, then sign in with Google and approve access.
- Select the accounts to connect. Client accounts under a manager account appear in the list too.


Each account becomes its own connection, with its own access badge and action switches. Google Ads has one scope for reading and changing, so InsightfulPipe enforces Read-only on its own server: it locks every write until an admin reconnects the account with Read & write. Start with Read-only if reporting is the job.
Pick client accounts from the list under the manager rather than typing an ID. InsightfulPipe stores each listed account with its manager, so requests carry the right login-customer-id header. A typed ID has no manager stored with it.

Step 2: Add the connector URL in Claude
Step 2 adds the Google Ads server to Claude as a custom connector. It takes one URL and one sign-in.
- Copy the server URL:
https://google-ads.insightfulmcp.com/. The app shows it under MCP Servers too. - In Claude, open Customize > Connectors.
- Click +, then Add custom connector.
- Name it Google Ads, paste the URL, click Continue, then Add.
- Click Connect on the new connector.
- Sign in to InsightfulPipe if asked. Claude then lists the connector as connected.


Once you're signed in, the connection finishes on its own. Claude reaches only the Google Ads accounts your workspace has connected and granted to you. If you have none yet, Claude can't connect, so go back to step 1.
On Team and Enterprise plans, an Owner first adds the connector under Organization settings > Connectors (Add, Custom, Web). Each member then clicks Connect in Customize > Connectors (Anthropic, checked 2026-09-30).
Or click Open Claude Directory in the app to connect the full InsightfulPipe server with every connected account.
Step 3: Turn the connector on in a new chat
Claude switches connectors on per conversation, so turn Google Ads on in each chat where you want it.
- Start a new chat.
- Click + at the lower left.
- Open Connectors and switch Google Ads on.
Claude adds its own approval layer. In the connector's Tool permissions, set each tool to Always allow, Needs approval or Blocked; on Team and Enterprise plans an Owner can set this for everyone (Anthropic, checked 2026-09-30). Reports run through query_data and changes through execute_action, so allow the first and put the second on Needs approval.

Step 4: Choose which actions the assistant may run
Step 4 decides, account by account, which of the 99 Google Ads actions the assistant can use. A new Read & write connection starts with 96 of 99 on: every read and write action, with the 3 destructive actions off.
- In InsightfulPipe, open Connected accounts.
- On the account's row, click the actions button. It shows the enabled count over the total, such as 96/99 actions.
- Use the All, Read only, Write and Destructive tabs to switch actions on or off.
- Click Save actions.
Only an owner, admin or operator can change these switches, and they can change them again at any time. The server refuses a switched-off action in every AI client and tells the assistant: "This action is disabled for this connected account. An owner or admin must enable it for the account."

Step 5 (optional): ChatGPT, Claude Code, Cursor, Gemini CLI and Codex CLI
The same URL works in any client that supports remote MCP servers. Each one finishes with the same InsightfulPipe sign-in, and the same account switches apply in each.
ChatGPT. Custom servers need Developer mode, offered on Plus, Pro, Business, Enterprise and Education accounts on the web. Turn it on under Settings > Security and login. In ChatGPT Plugins, click +, paste the URL, create the app and sign in to InsightfulPipe if asked. In each new chat, pick Developer mode from the + menu and select the app. Write actions require confirmation by default (OpenAI, checked 2026-09-30).
Claude Code, Gemini CLI and Codex CLI. One line each:
claude mcp add --transport http google-ads-mcp https://google-ads.insightfulmcp.com/
gemini mcp add --transport http google-ads-mcp https://google-ads.insightfulmcp.com/
codex mcp add google-ads-mcp --url https://google-ads.insightfulmcp.com/In Claude Code, run /mcp, select google-ads-mcp and choose Authenticate. The default local scope covers you in the current project, and --scope user covers every project (Claude Code docs, checked 2026-09-30). In Gemini CLI, run /mcp auth google-ads-mcp. If Codex CLI opens no browser, run codex mcp login google-ads-mcp.
Cursor. Use the install link in the setup section of the Google Ads MCP page, or add the URL to ~/.cursor/mcp.json. When the server shows Needs authentication, click Connect, then Open, and sign in to InsightfulPipe if asked.

Verify it worked
Three checks, shortest first, confirm the connection without changing anything in Google Ads.
1. The connection is live. In a new Claude chat, open +, then Connectors, and find Google Ads switched on. In Claude Code, claude mcp list shows google-ads-mcp as "✔ Connected", or "! Needs authentication" until you finish /mcp.
2. A prompt that cannot do harm. Paste this as it is. It reads a list, and its last line tells the assistant to leave everything alone.
List the Google Ads accounts available to this connection.
Return the account name, customer ID, currency, and status.
Do not run a report and do not change anything.3. A real read. Ask for last week's cost by campaign. Then open Google Ads, set the same dates and compare one number. If they disagree, check the date range, the account's time zone and the account itself before you suspect the connection.
If check 1 shows no connector, or check 2 returns an error, see Troubleshooting below.
Prompts to run first
Start with reads that answer a real question, then one change that stays paused. Name the account first in anything that matters; each request works on one account.
Prompt | What the assistant runs |
|---|---|
"What was ROAS by campaign over the last 30 days?" | A GAQL report of cost and conversion value per campaign |
"Which search terms spent over $50 last month without a conversion?" |
|
"Generate 30 keyword ideas for 'running shoes' in the United States" |
|
"Compare conversions and CPA across all my client accounts" | The same report on each connected account |
"Create a paused Search campaign for our spring sale with a $50 daily budget" |
|
Two prompts to paste as they are:
Use Google Ads account [CUSTOMER_ID].
Compare the last 30 complete days with the previous 30 complete days.
Break the report down by campaign.
Include cost, impressions, clicks, conversions, cost per conversion and conversion value.Use Google Ads account [CUSTOMER_ID].
List every search term from the last 14 days with more than [SPEND] in cost and zero conversions.
Group them by campaign and ad group.
Propose them as negative keywords, but do not add anything yet.The prompt library and the Google Ads Claude skills are free to use, and 50 Google Ads prompts for Claude goes further.
What the assistant may change, and who decides
The assistant can use only the actions an admin has switched on for that account, and every new connection starts on the careful side. That makes InsightfulPipe the safest way to let an AI agent change a Google Ads account: each limit below is a switch, and your admin decides where it sits.
- 99 actions: 37 read, 59 write and 3 destructive, across eight campaign types, from Search and Shopping to Performance Max and App.
- New campaigns, ad groups and ads start paused, for you to set live when they are ready. A request for ENABLED still gets PAUSED.
- Keywords, negative keywords and conversion actions go in enabled, so a keyword added to a live ad group can serve at once. An admin can switch those add actions off per account.
- Setting something live is an update.
update_campaign,update_ad_group,update_adandupdate_asset_groupaccept ENABLED, PAUSED or REMOVED, Google's permanent removal;resume_adandresume_ad_groupset ENABLED. They start on for Read & write connections, and an admin can switch off the update actions for any account where the agent should not change spend or status. - The assistant is told to ask you first. The server instructs the assistant to get your confirmation before it sets anything live, removes anything or switches a bid strategy. Needs approval on
execute_actionin Claude adds a second check. - Destructive actions stay off until an admin switches them on:
remove_keywords,remove_negative_keywordsandremove_customer_list_members. Campaigns, ad groups, ads and budgets have no delete action, so removal always runs through the update switches. - Budgets and bids go to Google as you state them, in the account's currency. Leave a bid target out and the server fills in a default: a $10 target CPA, a 3.0 target ROAS, or a 50% target impression share with a $10 CPC ceiling. The update switches decide whether the agent may change them at all.
- Read-only locks every write until an admin reconnects the account with Read & write.
- Roles hold. Members on the User role run only enabled reads on granted accounts. Writes need an operator, admin or owner, and an owner or admin decides who holds which role.
Start a trial to set these switches on your own accounts.
Troubleshooting
Most failures come from a connector switched off in the chat, an account nobody granted, or an action switched off for that account.
- The connector does not appear in the chat. Switch it on from +, then Connectors, in a new chat. In ChatGPT, pick Developer mode from + each time; in Claude Code, run
/mcpand authenticate. - Claude can't finish connecting. You have no Google Ads account connected or granted yet. Finish step 1, or ask an owner or admin to grant one, then click Connect again.
- "This action is disabled for this connected account. An owner or admin must enable it for the account." The switch is off for that account, and an owner, admin or operator can turn it on.
- "This account is connected read-only, so this action cannot be enabled for it. An owner or admin must reconnect it with Read & Write permissions." Reconnect the account and choose Read & write.
- "Your role does not have permission to execute write actions. Only operators, admins, and owners can execute write operations." Your workspace role is User. An owner or admin can make the change or change your role.
- The assistant picks the wrong account. Ask it to list your Google Ads accounts first, then name the one you mean by customer ID.
- A client account under your manager fails. Someone probably typed its ID, so InsightfulPipe stored no manager with it. Reconnect it from the list under the manager.
- The report is empty. Try a wider date range and remove optional filters. Confirm the account had delivery in that period. An empty report is not always an authentication problem.
Google's official server, and the other routes
Google publishes its own Google Ads MCP server, free and open source. It reads your account, changes nothing, and runs wherever you host it.
- Release. google-ads-mcp v0.0.4 shipped on September 25, 2026, under Apache-2.0, adding a login-customer-id option to every tool that can use it (releases, checked 2026-09-30).
- Tools. Three:
searchfor GAQL,get_resource_metadataandlist_accessible_customers. Google's guide calls it "strictly read-only": it "cannot modify bids, pause campaigns, or create new assets". - Hosting. It runs on your computer with Python 3.10 or later, or on Cloud Run or other infrastructure you deploy. Claude's custom connectors and ChatGPT both need a server on the public internet.
- Access. A Google Cloud project with the Google Ads API on, OAuth credentials, and Explorer, Basic or Standard access. Google sunset developer tokens on September 9, 2026, so the latest version needs none (Google).
Google's server reads only, and a developer has to run it with Python and a Cloud project. InsightfulPipe runs hosted in claude.ai and ChatGPT, and makes changes within switches your admin sets per account.
Search results and AI answers also name Windsor.ai, Supermetrics, Whatagraph, Markifact and Ryze AI. This guide covers the InsightfulPipe route; the best Google Ads MCP servers compares 12 servers, Markifact, Windsor.ai and Ryze AI among them, from each vendor's own documentation.
Frequently asked questions
Sources (checked 2026-09-30)
We checked each third-party claim on its own page on 2026-09-30, and took our action counts from the Google Ads MCP page.
- Anthropic: custom connectors using remote MCP and using connectors
- OpenAI: ChatGPT Developer mode and Codex MCP
- Claude Code: MCP documentation
- Gemini CLI: MCP servers
- Google: google-ads-mcp on GitHub, releases, Google Ads MCP server guide, developer token sunset and Google Ads access levels
- InsightfulPipe: Google Ads MCP server and pricing





