AgentStack
MCP verified MIT Self-run

Google Ads Mcp

mcp-itallstartedwithaidea-google-ads-mcp · by itallstartedwithaidea

Claude can now actually touch your Google Ads account — not just talk about it in theory. It can read your data, spot the waste, and make the changes you approve.

No reviews yet
0 installs
3 views
0.0% view→install

Install

$ agentstack add mcp-itallstartedwithaidea-google-ads-mcp

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets Used
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README — it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/mcp-itallstartedwithaidea-google-ads-mcp)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
2mo ago

Declared compatibility

Claude CodeClaude DesktopCursorWindsurf

Compatibility is declared by the source manifest. End-to-end runtime verification is coming — see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps — measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Google Ads Mcp? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

googleadsagent-mcp

An MCP (Model Context Protocol) server + standalone agent SDK for the Google Ads API. Built by googleadsagent.ai · MIT License

[English](README.md) | [Français](README.fr.md) | [Español](README.es.md) | [中文](README.zh.md) | [Nederlands](README.nl.md) | [Русский](README.ru.md) | [한국어](README.ko.md)


Install

# From PyPI (once published)
pip install googleadsagent-mcp

# From GitHub right now
pip install git+https://github.com/itallstartedwithaidea/google-ads-mcp.git

# With uv
uv add googleadsagent-mcp

# From source
git clone https://github.com/itallstartedwithaidea/google-ads-mcp.git && cd google-ads-mcp && pip install -e .

Works with every MCP client

| Client | Transport | Config | |---|---|---| | Claude Code | stdio | .mcp.json in project root (included) | | Claude Desktop | stdio | claude_desktop_config.example.json | | Cursor / Windsurf | stdio | Settings → MCP → python -m ads_mcp.server | | OpenAI Agents SDK | stdio | MCPServerStdio(command="python", args=["-m", "ads_mcp.server"]) | | LangChain | stdio | langchain-mcp-adapters | | Remote / Cloud | HTTP SSE | python -m ads_mcp.server --http |


Quick Start

# 1. Copy and fill credentials
cp .env.example .env

# 2. Validate environment
python scripts/validate.py

# 3a. Run as MCP server (stdio — Claude Desktop/Cursor/Claude Code)
python -m ads_mcp.server

# 3b. Run as MCP server (HTTP — remote agents)
python -m ads_mcp.server --http

# 3c. Run as standalone agent CLI
python scripts/cli.py
python scripts/cli.py --single "Show campaign performance for account 1234567890"

Claude Code

Place .mcp.json in your project root (already included):

{
  "mcpServers": {
    "google-ads": {
      "type": "stdio",
      "command": "python",
      "args": ["-m", "ads_mcp.server"],
      "env": {
        "GOOGLE_ADS_CREDENTIALS": "${GOOGLE_ADS_CREDENTIALS}",
        "GOOGLE_ADS_LOGIN_CUSTOMER_ID": "${GOOGLE_ADS_LOGIN_CUSTOMER_ID}"
      }
    }
  }
}

Claude Code auto-discovers .mcp.json. CLAUDE.md is written specifically for Claude Code to orient itself — it reads this first on every session.


Gemini CLI

Add to your project's .gemini/settings.json:

{
  "mcpServers": {
    "google-ads": {
      "command": "python",
      "args": ["-m", "ads_mcp.server"],
      "env": {
        "GOOGLE_ADS_CREDENTIALS": "/path/to/google-ads.yaml",
        "GOOGLE_ADS_LOGIN_CUSTOMER_ID": "1234567890"
      }
    }
  }
}

For the full Gemini CLI setup with Google Ads slash commands and agent skills, see gemini-cli-googleadsagent.

Remote option — if you deploy the buddy-agent on Cloudflare Workers, you can skip local credentials entirely and connect via SSE:

{
  "mcpServers": {
    "buddy-google-ads": {
      "url": "https://your-buddy-agent.workers.dev/sse"
    }
  }
}

OpenAI Agents SDK

from agents.mcp import MCPServerStdio
import os

server = MCPServerStdio(
    command="python",
    args=["-m", "ads_mcp.server"],
    env={
        "GOOGLE_ADS_CREDENTIALS": os.environ["GOOGLE_ADS_CREDENTIALS"],
        "GOOGLE_ADS_LOGIN_CUSTOMER_ID": os.environ.get("GOOGLE_ADS_LOGIN_CUSTOMER_ID", ""),
    }
)
# All 29 Google Ads tools automatically available

Tool Reference

Read Tools

list_accessible_customers · list_accounts · execute_gaql · get_campaign_performance get_keyword_performance · get_search_terms · get_ad_performance · get_account_budget_summary generate_keyword_ideas

Audit Tools

get_auction_insights · get_change_history · get_device_performance · get_geo_performance get_recommendations · get_pmax_performance · get_impression_share

Write Tools (dry-run by default — requires confirm=True)

update_campaign_budget · update_campaign_status · update_ad_group_status · update_keyword_bid add_keywords · add_negative_keywords · remove_negative_keyword · create_campaign create_ad_group · switch_bidding_strategy · generic_mutate

Doc Tools

get_gaql_reference · get_workflow_guide


Credentials

# Option 1: google-ads.yaml path (recommended)
GOOGLE_ADS_CREDENTIALS=/path/to/google-ads.yaml
GOOGLE_ADS_LOGIN_CUSTOMER_ID=123-456-7890

# Option 2: individual env vars
GOOGLE_ADS_DEVELOPER_TOKEN=...
GOOGLE_ADS_CLIENT_ID=...
GOOGLE_ADS_CLIENT_SECRET=...
GOOGLE_ADS_REFRESH_TOKEN=...
GOOGLE_ADS_LOGIN_CUSTOMER_ID=123-456-7890

Full credential setup guide: google-ads-api-agent README → Step 1A


v23 Service Coverage

Google Ads API v23 has 70+ services. Current status:

  • 29 tools implemented — core reporting, audit, write operations, doc references
  • 🔧 42 services planned — full roadmap in [docs/SERVICES.md](docs/SERVICES.md)
  • ~20 out of scope — platform admin, deprecated, LSA-specific

Attribution

Google LLC (Apache 2.0)

> google-ads Python client library — Copyright 2023 Google LLC > https://github.com/googleads/google-ads-python > All API calls in this package use the google-ads pip package published by Google. > The v23 service definitions, proto types, and gRPC clients are Google's work.

> googleads/google-ads-mcp — https://github.com/googleads/google-ads-mcp > Patterns: MCP singleton, search_stream + field_mask.paths

> google-marketing-solutions/googleadsmcp — https://github.com/google-marketing-solutions/googleadsmcp > Patterns: doc-serving MCP tools, remote OAuth, omit_unselected_resource_names

Community (MIT)

> cohnen/mcp-google-ads — https://github.com/cohnen/mcp-google-ads > Patterns: format_value proto serialization helper

> gomarble-ai/google-ads-mcp-server — https://github.com/gomarble-ai/google-ads-mcp-server > Patterns: dual transport (stdio + HTTP), KeywordPlanIdeaService

> itallstartedwithaidea/google-ads-api-agent — https://github.com/itallstartedwithaidea/google-ads-api-agent > Patterns: auction insights, change history, campaign creator, bidding strategy manager, > negative keywords, geo targeting, PMax reporting, Filter-First Architecture

Full per-feature attribution table: [docs/SERVICES.md](docs/SERVICES.md)


Related


License

MIT — see [LICENSE](LICENSE) google-ads dependency: Apache 2.0, Copyright 2023 Google LLC FastMCP: Apache 2.0


googleadsagent.ai · Google Ads API Docs · MCP Spec

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.