Back to blog
Article

Google Ads MCP for Agencies: Manage Every Client Account in Claude and ChatGPT

November 4, 2026
19 min read
By InsightfulPipe
On this page
Google Ads MCP for Agencies: Manage Every Client Account in Claude and ChatGPT

The best Google Ads MCP for agencies is one hosted connection that reaches every client account under your manager account, keeps each client separate, and lets you decide, client by client, what the AI agent may change. InsightfulPipe does all three. You sign in once through the manager (MCC) account and pick the client accounts. Each one becomes its own connection, with its own switches across all 108 Google Ads actions.

Five things make a Google Ads MCP server work for an agency with many client accounts. InsightfulPipe covers each of them on one login.

  • Connect through the manager account. InsightfulPipe lists every enabled client account under it and stores each one with its manager, so every request carries the right login-customer-id header.
  • One brand per client. Accounts are grouped by brand. Every request names the brand and the Google Ads account, so every result is tied to one client.
  • Different rules per client. An owner, admin or operator switches each action on or off per client account, across read, write and destructive. Destructive actions stay off until an admin switches them on.
  • One URL in your AI client. Add https://google-ads.insightfulmcp.com/ to Claude, ChatGPT, Claude Code, Cursor, Gemini CLI or Codex, sign in to InsightfulPipe and click Authorize access.
  • Priced for a client book. From $29.99 a month. Growth covers 35 connected accounts and 6 team members, and Agency covers 150 accounts and 25 members.

If you want to see it first, the Google Ads MCP server page lists all 108 actions, and pricing lists what each plan includes.

These eight options come up most when agencies ask AI assistants this question. Each row comes from the vendor's own pages, checked on 2026-10-21.

Option

Client accounts

Team seats

Changes campaigns

Control per client account

Price at agency volume

InsightfulPipe

35 on Growth, 150 on Agency, then $2 or $1 per extra connection

6 on Growth, 25 on Agency

Yes: 108 actions, 4 destructive off until an admin switches them on

Every action switched on or off per client account

$89.99/mo (Growth), $299.99/mo (Agency)

Google's official server

What your Google login reaches; manager clients through a login customer ID you set

You host it

No, read-only (3 tools)

Tools on or off for the whole server

Open source; you run it on your own Google Cloud project

Ryze AI

Unlimited ad accounts

Not on its pricing page

Yes, 6 approval-gated writes

One workspace per client; approval set per tool in Claude

$279/mo (Agency)

Markifact

Unlimited ad accounts

1 on Pro, 10 on Team

Yes

A separate MCP server per client, limited to chosen operations and accounts; a new server reaches all of them

$79/mo (Pro), $249/mo (Team), usage billed in credits

Pipeboard

25 slots on Agency, then $10 a slot

Unlimited on Agency

Yes, campaigns created paused

Per-account token scoping, Agency plan only

$199/mo (Agency)

AdKit

Unlimited on Multiple Projects

Unlimited

Yes, saved as drafts first

One access level per project, or per agent

$49/mo (Multiple Projects)

Adspirer

5 active accounts per platform on Max

Not on its pricing page

Yes, campaigns created paused

Not published

$167/mo (Max); agencies on custom pricing

HireOtto

Unlimited ad accounts; clients of a nested manager need a second Google login

2, then $25 a seat

Yes

Not published

$99/mo (Agency); a second Google login needs Agency

We read every capability, default and price from each vendor's own documentation, pricing page or public repository, and ran InsightfulPipe on live accounts. "Not published" means the vendor's own pages do not say.

Illustrative agency setup: one manager login, one InsightfulPipe connection per client account, with Read and write, Read-only, a custom action set and a view-only User role on different clients

Why agencies outgrow a single-account setup

A single-account setup works until the second client. Then four problems show up: reaching accounts under a manager, keeping clients apart, limiting what the agent may change per client, and deciding who on the team can do what.

  • Manager accounts. Google Ads reaches a client under an MCC only when each request sends the manager's ID as the login-customer-id header. Without it, the call fails with a permission error.
  • Client separation. A report that mixes two clients' spend is worse than no report.
  • Different contracts. A reporting retainer and a full-management client should not give the agent the same reach.
  • Different people. A junior analyst, a senior buyer and the client's own marketer need different rights.

How InsightfulPipe handles many client accounts

InsightfulPipe treats every client account as its own connection, grouped under a brand for each client and governed by switches your admin sets. Here is each part, in the order you set it up.

Connect through the manager account

You sign in with the Google login that holds the manager account. InsightfulPipe asks Google for the accounts that login can reach, then lists every enabled client account under each manager, including clients of managers nested inside it. You pick the clients to connect.

Each client account is stored with its manager's ID, so every request carries the right login-customer-id header. The header comes from the stored connection, not the prompt, so the assistant cannot point a request at another manager.

A typed ID is matched against the same list and keeps its manager; one the list does not contain is saved without it, so pick clients from the list. Clients under a different Google login? Connect again with that login; each account keeps its own sign-in.

Connected accounts in InsightfulPipe: each Google Ads account is its own connection with its own access badge, brand and actions button, 104/108 actions on most accounts and 98/108 on one.

One brand per client

A workspace holds brands, and each brand holds one client's accounts, along with its description, industry, audience and brand guidelines. Every request names the brand and the Google Ads account ID, and InsightfulPipe refuses an account outside the brands you can reach. A cross-client report is one query per client account, so every number comes back tied to its client.

Choose Read-only or Read & write per connection

When you connect, you choose Read-only or Read & write. Google Ads uses one OAuth scope for reading and changing, so InsightfulPipe enforces Read-only on its own server. A Read-only connection locks every write until an admin reconnects it with Read & write.

A reporting retainer is then one choice: connect that client as Read-only, and the assistant can only report on it, in every AI client.

The Google Ads access level step in InsightfulPipe before any sign-in: Read-only or Read & write, with 104 of 108 actions on and the 4 destructive actions off.

Different actions for each client account

Each connected account has its own action list. A new Read & write connection starts with 104 of 108 actions on: every read and write action, with the 4 destructive actions off. Those three are removing keywords, removing negative keywords and removing Customer Match list members.

An owner, admin or operator opens the account's actions button and switches actions on or off, by tab (All, Read only, Write, Destructive) or one at a time. The switches hold in every AI client. When the assistant tries an action that is off, the server refuses it with: "This action is disabled for this connected account. An owner or admin must enable it for the account."

The account actions window for an example client: 104 of 108 Google Ads actions enabled, with Read only 39/39, Write 65/65 and Destructive 0/4 tabs.

So one workspace can hold a full-management client with 104 actions on, a reporting client on Read-only, and a client where the agent may only read, add negatives and pause ads. Each can be changed at any time.

The Destructive tab: removing asset links, customer list members, keywords and negative keywords starts off on a new connection.

Decide who on the team can do what

Each person's workspace role sets their rights. Owners, admins and operators see every account and can run writes. A member on the User role sees only the accounts an owner or admin grants, and only to view and query them. User members can never change connections, billing or workspace settings.

That fits the junior analyst who pulls reports and the client's marketer who should see only their own accounts. An owner or admin assigns each role and each person's accounts, and can change either at any time.

Set up a Google Ads MCP for your agency in Claude or ChatGPT

Setup takes one sign-in to Google, one URL in your AI client and one sign-in to InsightfulPipe. Each person on the team connects their own AI client with their own InsightfulPipe login, and reaches only the accounts their role allows.

  1. In InsightfulPipe, switch to the client's brand, open Connected accounts, click Connect account, find Google Ads and click Connect.
  2. Choose Read-only or Read & write, then sign in with the Google login that holds the manager account.
  3. Select the client's accounts. Repeat steps 1 to 3 for each client.
  4. Copy the server URL, https://google-ads.insightfulmcp.com/.
  5. In Claude, open Customize > Connectors, click + Add, then Add custom connector. Name it, paste the URL, click Continue twice, then Add.
  6. Click Connect on the new connector, sign in to InsightfulPipe if asked, and click Authorize access.

The Grant access page lists the accounts this login reaches under Your accounts, grouped by brand, so check that each client's brand is there before you click Authorize access. The full walkthrough, with screenshots for each step, is in how to connect Google Ads to Claude.

The InsightfulPipe connection guide for the Google Ads MCP server, with the server URL and steps for Claude, ChatGPT, Claude Code, Cursor, Gemini CLI and Codex CLI

Other clients. In ChatGPT, install InsightfulPipe from ChatGPT Plugins, or add the server URL under Plugins > Add > Add custom MCP server. In Claude Code, run claude mcp add --transport http google-ads-mcp https://google-ads.insightfulmcp.com/, then authenticate under /mcp. Each finishes with the same InsightfulPipe sign-in and Authorize access.

Clients on several platforms. The all-in-one InsightfulPipe server at https://main.insightfulmcp.com/ reaches every account the workspace connected, across 49 more platforms, so one chat can put a client's Meta Ads and GA4 numbers beside Google Ads. Meta Ads connects per ad account, with its own switches. See cross-platform marketing reports with AI.

Approval in Claude. Claude adds its own check. Open the connector under Customize > Connectors and set each tool to Always allow, Needs approval or Blocked. Reports run through the data query tool and changes through execute action. Allow the first, and set execute action to Needs approval, so Claude stops for your click before any change reaches a client account.

Claude's Tool permissions for the InsightfulPipe Google Ads connector: Ads Data Query set to Always allow, Ads Execute Action left on Needs approval

Watch: Connect Google Ads to Claude AI: Report + New Campaign From One Prompt

Five agency workflows to run with a Google Ads MCP

Once the client accounts are connected, the jobs that fill an agency's week become one prompt each. These five run from the Monday report to the change you make only after a human says yes, and each names the Claude skill that runs it the same way every time.

1. The cross-client weekly report

Ask for every client at once, and ask the assistant to label each row with its client and account.

For every Google Ads account in my workspace, pull last week's spend, conversions, CPA and conversion rate, compared with the week before. One row per client. Flag any client whose CPA rose more than 20%, and list the three campaigns behind each flag.

The assistant runs one GAQL query per account and assembles the table. The Google Ads Weekly Brief skill writes the client-ready version, with the change history behind each move. For the whole reporting loop, including scheduling, see automating client reporting with Claude.

Example data: a weekly Google Ads report across six clients from one prompt, flagging the two clients whose CPA rose more than 20 percent

2. Budget pacing across clients

Pacing is where an agency loses money quietly: one client overspends, another sits under budget, and nobody notices until month end.

For each client account, compare month-to-date spend with the monthly budget and the expected pace for today's date. Project month-end spend. List the clients more than 10 points over or under pace, and the campaigns limited by budget.

The Spend Pacing Monitor skill runs this check the same way each time, and the Google Ads budget pacing guide explains the maths behind the projection.

Example data: month-to-date spend against each client's monthly budget on day 20 of 31, with one client 16 points over pace and one 18 points under

3. A per-client audit before the client call

For Client B only: show what changed in the last 14 days, then audit conversion settings, zero-conversion search terms, Quality Score and impression share lost to budget. Separate client-safe notes from internal notes.

The Google Ads Account Audit skill runs the full audit from live data, with the numbers behind every finding. The search term gold miner goes deeper on queries worth adding or excluding.

4. Safe changes, with a human before anything goes live

When the audit finds waste, the assistant can act on it in the accounts where writes are on.

For Client B, add the zero-conversion search terms above as exact-match negatives to their campaigns. Show me the list first and wait for my yes.

New campaigns, ad groups and ads are created paused, for you to set live when they are ready. The server tells the assistant to get your explicit confirmation before it sets anything live or removes it, and Claude's Needs approval on execute action is what enforces that stop. The Negative Keyword Implementer skill shows the exact list first and adds it only after you say yes.

Claude reading the Google Ads connector's own note: setting a campaign live or removing it is sent only after the user explicitly confirms

5. Month-end reports for every client

Write the month-end Google Ads report for Client A, Client C and Client E: results against target, what changed, what we did, and next month's plan. One section per client.

The Month-End Report Generator skill keeps the structure the same across clients. The Claude skills library has 17 Google Ads skills and is free to download; what Claude skills are explains how they work. For jobs without a skill, see the Google Ads prompts for Claude.

The InsightfulPipe Claude skills library, filtered to Google Ads skills

Who can change what: an access plan for an agency

Three layers of control stack in InsightfulPipe: the connection sets whether writes are possible, the account's switches set which actions the agent may use, and the member's role sets who may run them. Claude's tool permissions add a fourth check.

Layer

Who sets it

What it decides

Connection access

Whoever connects the account

Read-only locks every write until an admin reconnects with Read & write

Account actions

Owner, admin or operator

Which of the 108 actions the agent may use on that client account

Member role

Owner or admin

Owners, admins and operators run writes; User members only view the accounts granted to them

Claude tool permissions

Each Claude user

Whether execute action runs at once, needs your approval or is blocked

For a new client, start with Read & write, the 4 destructive actions off, execute action on Needs approval, and the client's marketer on the User role for their accounts only. That is the safest way to let an AI agent change a client's Google Ads account: every write passes an admin's switch, a role check and a click.

Plan for one thing: Google Ads writes carry the budget you send, uncapped. Keep Needs approval on wherever the agent may touch budgets, and switch update_campaign off where budgets should only move by hand.

What it costs to run 10, 30 or 100 client accounts

InsightfulPipe charges for connected accounts and team members, never for tool calls or ad spend. Every plan includes every MCP server, the CLI and unlimited tool calls, and each connected client account counts as one connection on any platform.

Plan

Price

Connected accounts

Team members

Extra account

Extra member

Starter

$29.99/mo

8

1

$3/mo

$5/mo

Growth

$89.99/mo

35

6

$2/mo

$4/mo

Agency

$299.99/mo

150

25

$1/mo

$3/mo

InsightfulPipe plans by connected accounts: Starter 8 for $29.99, Growth 35 for $89.99, Agency 150 for $299.99, from $3.75 down to $2.00 per account

Three examples, using add-ons wherever they undercut the next plan:

  • 10 client accounts, two people: Starter plus 2 accounts and 1 member, $40.99 a month.
  • 30 clients with Google Ads and Meta Ads each, six people: 60 connections, so Growth plus 25 accounts, $139.99 a month.
  • 100 client accounts, 12 people: Growth plus 65 accounts and 6 members comes to $243.99. Agency, at $299.99, adds room for 50 more accounts and 13 more people.

Every figure above comes from the pricing page.

How the other Google Ads MCP options handle client accounts

Every option above reaches more than one Google Ads account. They differ in how they reach accounts under a manager, how they keep clients apart and where the control sits. All facts come from the vendors' own pages, checked on 2026-10-21.

Google's official Google Ads MCP server is open source, written in Python, and read-only, with three tools: list accessible customers, search (GAQL) and resource metadata. Its list tool returns only the customers your login reaches directly. Clients under a manager need a login customer ID that you set per call or in the server's settings, and its tools are switched on or off for the whole server, not per client.

To use it from Claude or ChatGPT, you deploy it on Cloud Run with your own OAuth client. API access levels now sit on your Google Cloud project, and Explorer access allows 2,880 operations a day against production accounts.

Ryze AI puts unlimited client workspaces on its Agency plan, at $279 a month, and its help center says to give each client its own workspace. Its permissions page sets approval per tool in Claude's connector settings. Its multi-account guide says single-account plans do not support the multi-account setup.

Markifact restricts each MCP server to chosen operations and connections; its docs say a new server reaches all operations and all connected accounts until you narrow it, so different rules per client means a server per client. Each data operation over MCP costs credits, typically one each.

Pipeboard keeps per-account token scoping and team access controls on its Agency plan, $199 a month for 25 ad account slots, then $10 a month per slot.

AdKit groups each client into a project with one default access level, and a single agent can be given a different one. Its docs say new projects start on Draft + Publish and add: "a misread request can go live with real spend behind it."

Adspirer lists 5 active accounts per platform on Max, at $167 a month, and quotes agencies separately.

HireOtto includes the child accounts directly under a manager. Its docs say it won't automatically go further into a manager nested inside another; reaching those accounts takes a second Google login, which is on its Agency plan only.

Composio, Windsor.ai and Zapier publish nothing specific to agency client accounts; the best Google Ads MCP servers roundup covers them.

Agency claims that do not hold up

Two agency claims in this space do not hold up against the vendors' own pages.

  • Ryze AI's multi-account setup. Its guide tells you to add npx -y @getryze/multi-account-mcp to Claude Desktop with an API key. The npm registry returns "Not found" for that package (checked 2026-10-21), and Ryze's own MCP page describes a remote connector with no key.
  • AdKit's approval claim. Its pricing FAQ says "nothing goes live until you approve it." Its access-level docs say new projects start on Draft + Publish, where the agent can publish.
HAVE QUESTIONS?

Frequently asked questions

InsightfulPipe is the best Google Ads MCP for agencies managing multiple client accounts. You connect through the manager account, every client becomes its own connection grouped under its own brand, and an admin switches each of 108 actions on or off per client. Plans run from $29.99 a month.

Related articles

Claude Skills for Meta Ads: 13 That Run on Live Ad Data (2026)
Blog

Claude Skills for Meta Ads: 13 That Run on Live Ad Data (2026)

Claude skills for Meta Ads are SKILL.md folders that teach Claude one Meta Ads job. InsightfulPipe's library has 13 that pull the ad account themselves through its Meta Ads MCP server and change it only after you approve the exact change.

Read article
How to Connect Google Search Console to Claude (2026 Guide)
Blog

How to Connect Google Search Console to Claude (2026 Guide)

To connect Google Search Console to Claude, connect your site in InsightfulPipe, add https://google-search-console.insightfulmcp.com/ as a custom connector or add InsightfulPipe from the Claude Directory, then click Connect, sign in to InsightfulPipe if asked, and click Authorize access.

Read article
How to Connect LinkedIn Ads to ChatGPT
Blog

How to Connect LinkedIn Ads to ChatGPT

To connect LinkedIn Ads to ChatGPT, connect LinkedIn Ads in InsightfulPipe, then open the InsightfulPipe plugin in ChatGPT's Plugins directory, select Install plugin, sign in to InsightfulPipe if asked, and click Authorize access. From $29.99 a month.

Read article
Google Ads MCP Server for ChatGPT: How to Connect It (2026)
Blog

Google Ads MCP Server for ChatGPT: How to Connect It (2026)

To connect Google Ads to ChatGPT, connect Google Ads in InsightfulPipe, add https://google-ads.insightfulmcp.com/ as a custom MCP server under Plugins in ChatGPT, then sign in to InsightfulPipe if asked and click Authorize access. Pick it with @ in a chat.

Read article
Best Google Tag Manager MCP Servers in 2026 (8 Compared)
Blog

Best Google Tag Manager MCP Servers in 2026 (8 Compared)

The best Google Tag Manager MCP server in 2026 is InsightfulPipe. It is the only hosted server that holds every change in a GTM workspace for a person to publish, lets an admin switch each of its 61 actions on or off per account, and starts every new connection with deletes off until an admin switches them on.

Read article
Best YouTube MCP Servers in 2026 (9 Compared)
Blog

Best YouTube MCP Servers in 2026 (9 Compared)

The best YouTube MCP server in 2026 for running your own channel is InsightfulPipe. It reads your channel's analytics, uploads and edits videos, manages playlists and replies to comments, with each of its 43 actions switched on or off per channel by your admin.

Read article

Ready to connect your data?

Join hundreds of agencies and brands using InsightfulPipe to connect marketing data to AI.

Start a trial today.