Guide · AI and ad accounts

Google Ads MCP: which servers exist, how to set one up and where the risks are

By Christian Bozic, Founder of Marketing AIgency · Updated · 9 min read

Short answer

A Google Ads MCP server lets an AI assistant such as Claude or ChatGPT query your Google Ads account in plain language. Google's official server (googleads/google-ads-mcp) is read-only in September 2026: it runs GAQL reports but cannot pause campaigns, change bids or create anything. If you want the AI to make changes, you need a third-party server, and then you also need your own review step before anything goes live.

Key takeaways

  • Google's official Google Ads MCP has three read-only tools. The current release is v0.0.4 from 25 September 2026.
  • Since 9 September 2026 the developer token is optional: the API accepts it but ignores it. Your API access level now belongs to the Google Cloud project behind your OAuth credentials.
  • Explorer access allows 2,880 operations per day on live accounts, Basic access 15,000.
  • Windsor.ai, Composio and Pipeboard can also write (pausing, budgets, new campaigns). Check every write yourself.
  • Without running a server yourself, a hosted agent with an approval queue is the simpler route.

What is a Google Ads MCP server?

MCP (Model Context Protocol) is an open standard that lets an AI client call tools on an external server. A Google Ads MCP server wraps the Google Ads API into such tools. You ask "Which campaigns spent more than $500 last week without a conversion?", the model writes a GAQL query, the server runs it against your account and the answer comes back as a table.

Which Google Ads MCP servers exist in September 2026?

There is one official server from Google and a growing number of alternatives. The main difference is write access: Google's server only reads, most hosted services can also change things.

Google Ads MCP options, checked on 26 September 2026
ServerTypeReadsWritesLoginCost
Google official (googleads/google-ads-mcp)Open source, Apache 2.0, run locally or on Cloud RunGAQL reports, API field metadata, account listNoOAuth or Application Default Credentials in your Google Cloud projectFree
cohnen/mcp-google-adsOpen source, MIT, localAccount list, GAQL, campaign and ad performanceNot documentedOAuth client or service account plus developer tokenFree, last code change October 2025
Windsor.ai MCPHostedGoogle Ads plus 350+ other data sourcesPause and enable campaigns, ad groups and ads, set budgets, push negative keywordsWindsor account with OAuthFree trial, then a Windsor plan
Composio Google Ads toolkitHosted toolkitAccount list, campaigns, customer lists, GAQLCreate, update and remove campaigns and ad groups, manage customer listsManaged OAuthFree tier with 100,000 tool calls per month
Pipeboard Google Ads MCPHostedReportingCampaign management, new objects created paused according to PipeboardPipeboard login or API tokenFree plan, paid tiers

Google's repository is actively maintained, with two releases in September 2026 alone (984 GitHub stars on 26 September). For a setup that should last, that matters more than the feature list.

Running Meta as well? The same comparison for Facebook and Instagram is in our Meta Ads MCP guide.

What can the official Google Ads MCP do, and what can't it?

Google's server exposes three tools: search (runs a GAQL query), get_resource_metadata (tells the model which fields a resource such as campaign has) and list_accessible_customers (lists the accounts your login can reach). It also provides the API discovery document, the list of metrics and segments, and the current API release notes as resources. With a tools_config.yaml file you can switch individual tools off.

That is enough for most analysis work. Prompts that work well:

  • Show every campaign with more than $300 cost and zero conversions in the last 14 days.
  • List search terms with 20 or more clicks and no conversion, grouped by ad group.
  • Compare CPA by campaign for this month and last month and sort by the biggest increase.
  • Which Performance Max campaigns lost impression share because of budget?

What it cannot do: pause a campaign, change a bid or budget, add a negative keyword or create an ad. For many advertisers that limit is a feature. A model that misreads a report gives you a wrong answer, but it cannot spend your money.

What changed with the developer token in September 2026?

Google sunset developer tokens on 9 September 2026. Your existing access level was moved automatically to your Google Cloud projects based on recent API activity. You can keep sending the token in the request header: the API accepts it but ignores it, so existing code keeps working. Google says it will start rejecting tokens in a future major API version. What counts now is the Cloud project that created your OAuth credentials.

Google Ads API access levels (Google, as of 23 September 2026)
LevelLive accountsOperations per dayHow you get it
TestNo, test accounts only15,000Automatic when you enable the API
ExplorerYes2,880 on live accounts, 15,000 on test accountsApplication; some features like account creation and planning tools are excluded
BasicYes15,000Application, brand verification first
StandardYesUnlimitedApplication with a detailed manual audit, about 10 business days

For one person asking about one account, Explorer access is usually enough. That is our estimate: a chat session runs dozens of queries, not thousands. Agencies with many client accounts reach the limit sooner.

If the server reports that your access is only approved for test accounts, your Cloud project does not have production access yet. Request Explorer or Basic access for that project in the Google Cloud console.

How do you connect the official Google Ads MCP to Claude?

You need a Google Cloud project, a Google login with access to the ad account, and Python with pipx.

  1. Install pipx on your machine.
  2. In your Google Cloud project, enable the Google Ads API.
  3. Create an OAuth client of type Desktop app and download the JSON file.
  4. Create Application Default Credentials with the Google Ads scope (command below) and note the file path gcloud prints.
  5. Add the server to Claude Desktop in claude_desktop_config.json, or to Claude Code with claude mcp add.
  6. Restart the client and ask: "List the Google Ads accounts you can access."
gcloud auth application-default login \
  --scopes https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/cloud-platform \
  --client-id-file=client_secret.json

Configuration for Claude Desktop. The values are placeholders. Pinning the version makes sure an update to the repository does not change your server without you noticing.

{
  "mcpServers": {
    "google-ads": {
      "command": "pipx",
      "args": [
        "run",
        "--spec",
        "google-ads-mcp==0.0.4",
        "google-ads-mcp"
      ],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/application_default_credentials.json",
        "GOOGLE_PROJECT_ID": "your-cloud-project-id",
        "GOOGLE_ADS_LOGIN_CUSTOMER_ID": "1234567890"
      }
    }
  }
}

The same server in Claude Code:

claude mcp add google-ads --scope user \
  --env GOOGLE_APPLICATION_CREDENTIALS=/path/to/application_default_credentials.json \
  --env GOOGLE_PROJECT_ID=your-cloud-project-id \
  --env GOOGLE_ADS_LOGIN_CUSTOMER_ID=1234567890 \
  -- pipx run --spec google-ads-mcp==0.0.4 google-ads-mcp

Set GOOGLE_ADS_LOGIN_CUSTOMER_ID only if you reach the account through a manager account (MCC). Enter the manager ID without dashes. Without it, queries against client accounts under an MCC often fail with a permission error even though your login has access.

For teams, Google documents a second variant: the server runs as an HTTP service with an OAuth proxy, locally or on Cloud Run, and the credentials stay in the server process instead of client config files.

Can you use a Google Ads MCP in ChatGPT?

Yes, through developer mode. OpenAI lists it for Plus, Pro, Business, Enterprise and Education accounts on the web. ChatGPT only talks to remote servers over SSE or streaming HTTP. A local server started with pipx does not work there directly. You either run Google's server in HTTP mode behind a public HTTPS address, or you use a hosted option like Windsor.ai, Composio or Pipeboard.

OpenAI calls developer mode "powerful but dangerous" and warns about prompt injection and model mistakes on write actions. Writes ask for confirmation by default. Read the tool input before you confirm.

What are the security risks of a Google Ads MCP?

  • Writes without review. "Cut the budget by 50" read as $50 instead of 50 percent goes live immediately unless something asks first.
  • Broad login. The adwords scope covers every account your Google user can reach, including everything under a manager account. Use a login that only has access to the accounts you want the AI to see.
  • Secrets in config files. Google notes that credentials in the client configuration are less isolated than in the HTTP variant. Config files get copied and synced.
  • Prompt injection from account data. Search terms, ad text and landing page content are written by other people. A search term can contain instructions aimed at the model. Claude Code's documentation warns about exactly this for servers that fetch external content.
  • Local code. A local server runs with your user rights, as the MCP security guide points out. Install from the official repository and pin a version.
  • Where the data goes. Every query result goes to your AI provider. Check that your client contracts allow that.

A sensible order for most teams: start read-only, learn how the model reads your account, and only then decide whether you want writes at all.

When is a hosted agent with approval the better choice?

An MCP server suits people who work in a chat window and are comfortable with OAuth clients and config files. It waits for your question. It does not watch the account at night or check later whether a change worked.

Marketing AIgency is not an MCP server. It is hosted software from CBX Media LLC. AI agents check Meta, Google and TikTok ad accounts, look at the numbers before they suggest anything, and put every proposal with its reasoning into an approval queue. Only what you approve is executed, and you can set single action types to autonomous within limits. New accounts start in shadow mode, where nothing runs until you want it to.

Self-hosted MCP server vs hosted agent with approval
Google Ads MCP serverMarketing AIgency
SetupCloud project, OAuth client, config fileConnect the ad account in the browser
Who starts the workYou, with a promptAgents check the account on their own
ChangesOfficial server: none. Third-party: often directlyOnly after approval, or autonomous within limits you set
MonitoringNoneBudget and ad guards every 30 minutes
Change log and effect checkYour chat historyEvery change with reasoning, effect measured after 7 days
Target metricWhatever the platform reportsYour company's real revenue or leads
PriceFree plus your AI plan and hostingFixed monthly price, no share of ad spend (see pricing)

The target metric matters more than it looks. A connected-car app has been steering its ads with the same agent system since 14 September 2026, in nine markets on Meta, Google and TikTok, with around €470,000 in monthly ad spend. In Germany in September 2026, Google Ads alone reported €31.3k in revenue while the company actually made €23.4k. Across all three platforms, the reported revenue added up to 2.2 times the real figure. Why that happens is covered in our guide to true ROAS.

To be clear about the current state: Meta is fully live. Google Ads connects the same way and is being tested with the first accounts. Building new campaigns works on Meta only for now. If you need Google Ads write automation today and want full control, a self-hosted server with a strict review habit may suit you better. Weighing software against an agency? See what a Facebook ads agency costs.

Frequently asked questions

Is there an official Google Ads MCP server?

Yes. Google publishes googleads/google-ads-mcp on GitHub under the Apache 2.0 license. In September 2026 it has three read-only tools for GAQL reports, field metadata and the account list. It cannot make changes.

Do I still need a Google Ads developer token for MCP?

Not since 9 September 2026. Google sunset developer tokens and moved access levels to the Google Cloud project behind your OAuth credentials. The API still accepts a token in the header but ignores it. Google plans to reject tokens in a future major API version, so new setups can leave it out.

Can Claude change my Google Ads campaigns?

Only with a write-capable server such as Windsor.ai, Composio or Pipeboard. Google's official server is read-only. If you allow writes, keep a confirmation step before each change.

Is a Google Ads MCP free?

Google's server and the open source alternatives cost nothing. You pay for your AI plan and, if you host the server in the cloud, for hosting. Hosted services have their own plans and free tiers.

Does Google Ads MCP work with ChatGPT?

Yes, through developer mode, which OpenAI offers for Plus, Pro, Business, Enterprise and Education accounts on the web. ChatGPT needs a remote server over HTTP, so a local pipx setup has to run as a web service first.

Want the agents without running a server?

Try Marketing AIgency for 30 days, free and without a card. The clock starts when you connect your first ad account. After the trial the agents pause until you choose a plan, and nothing is charged automatically.

Start your 30-day trial

About the author

Christian Bozic has run ad accounts on Meta, Google, TikTok and Snapchat for twelve years, inside agencies and on the client side, most recently as Head of Push Marketing at a Munich app company. He founded Marketing AIgency to put the daily account work into agents that propose and a human who decides.

Read next

Sources

  1. GitHub: googleads/google-ads-mcp, README and releases v0.0.3 (10 Sep 2026) and v0.0.4 (25 Sep 2026)
  2. Google Ads API: Developer token sunset on 9 September 2026 (page updated 23 Sep 2026)
  3. Google Ads API: Access levels and permissible use (updated 23 Sep 2026)
  4. GitHub: cohnen/mcp-google-ads (last push 16 Oct 2025)
  5. Windsor.ai: Google Ads MCP (checked 26 Sep 2026)
  6. Composio: Google Ads toolkit (checked 26 Sep 2026)
  7. Pipeboard: Google Ads MCP guide (checked 26 Sep 2026)
  8. Claude Code docs: Connect Claude Code to tools via MCP
  9. Claude Help Center: Custom connectors using remote MCP
  10. OpenAI: ChatGPT developer mode
  11. Model Context Protocol: Security best practices