Official agent skill

Google Ads API MCP Setup

by google in google/skills

Guides developers through downloading, configuring, and installing the official open-source Google Ads MCP Server.

OfficialApache-2.0Auto-check: notesMarketing & SEO

Install Google Ads API MCP Setup

skills CLI
$ npx skills add google/skills --skill google-ads-api-mcp-setup -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install google/skills google-ads-api-mcp-setup --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/google/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ads/google-ads-api-mcp-setup .claude/skills/google-ads-api-mcp-setup && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
google-ads-api-mcp-setup
GitHub stars
21k
Token cost
~6.1k tokens
SKILL.md length
2,751 words
Files
1
Skills in repo
145
Repo updated
First seen
Licence
Apache-2.0

At a glance

Guides developers through downloading, configuring, and installing the official open-source Google Ads MCP Server.

  • Works in 8 steps: Validate Your Google Ads API Credentials → Install Prerequisites (Python & pipx) → Install the Google Ads MCP Server → …
  • A user wants to connect their AI assistant (such as Gemini
  • SKILL.md covers System Requirements &…, ⚠️ Prerequisites: Credentials…, Step 1: Validate Your Google… and Step 2: Install Prerequisites…, plus 6 more sections
  • Calls pipx, gcloud and pip; reaches github.com; needs GOOGLE_ADS_DEVELOPER_TOKEN and GOOGLE_ADS_REFRESH_TOKEN

What it does

Google Ads API MCP Setup is an agent skill from google/skills, published by the product's own GitHub organization. Guides developers through downloading, configuring, and installing the official open-source Google Ads MCP Server. Use this skill when a user wants to connect their AI assistant (such as Gemini, Claude Code, or Cursor) to their Google Ads account to query campaigns or retrieve reporting metrics using natural language.

Its SKILL.md is about 6.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Python 3.12+, pipx

It sits in Marketing & SEO, covering Paid advertising and MCP servers. It works with Google Ads, Model Context Protocol and Python. The repository describes itself as: Agent Skills for Google products and technologies. The licence is Apache-2.0.

When your agent uses it

  • A user wants to connect their AI assistant (such as Gemini
  • Cursor) to their Google Ads account to query campaigns
  • Retrieve reporting metrics using natural language

Example prompts

  • “Use the google-ads-api-mcp-setup skill to guide developers through downloading, configuring, and installing the official open-source Google Ads MCP…”
  • “/google-ads-api-mcp-setup”

Requirements

  • Python 3
  • A credential in GOOGLE_ADS_DEVELOPER_TOKEN
  • A credential in GOOGLE_ADS_CLIENT_SECRET
  • Compatibility (from SKILL.md): Python 3.12+, pipx

Workflow steps

8 steps, taken from the step headings in SKILL.md.

  1. Validate Your Google Ads API Credentials
  2. Install Prerequisites (Python & pipx)
  3. Install the Google Ads MCP Server
  4. Configure Environment Variables
  5. Integrate with Your AI Developer Tool
  6. 5: Deployment on Google Cloud (Cloud Run)
  7. Verify the Integration (Testing)
  8. Available MCP Tools & Usage Guide

What it can do on your machine

Read from SKILL.md and the folder at commit 8a1ac05. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • pipx
    • gcloud
    • pip
    • brew
    • apt
    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • github.com

    Also links to:

    • cloud.google.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • GOOGLE_ADS_DEVELOPER_TOKEN
    • GOOGLE_ADS_REFRESH_TOKEN
    • GOOGLE_ADS_CLIENT_SECRET
    • GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Python 3.12+, pipx

    From compatibility in the SKILL.md frontmatter.

Context cost

Google Ads API MCP Setup loads about 6.1k tokens when it runs. Until then it costs about 86 tokens; SKILL.md has 2,751 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~86
When it runs · the whole SKILL.md, loaded when a task matches
~6.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteRuns commands with sudoSKILL.md:99
    sudo apt install pipx && pipx ensurepath

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from google/skills at commit 8a1ac05, republished under its Apache-2.0 licence (© google). 2,751 words, ~6,075 tokens.

Download SKILL.mdSave it as .claude/skills/google-ads-api-mcp-setup/SKILL.md (or your agent's skills folder).
name
google-ads-api-mcp-setup
description
Guides developers through downloading, configuring, and installing the official open-source Google Ads MCP Server. Use this skill when a user wants to connect their AI assistant (such as Gemini, Claude Code, or Cursor) to their Google Ads account to query campaigns or retrieve reporting metrics using natural language.
compatibility
Python 3.12+, pipx
metadata.author
google-ads-api-team
metadata.version
1.0.0
metadata.category
GoogleAds

Google Ads API MCP Server Installation

This skill provides a structured setup guide to install, configure, and integrate the official open-source Google Ads Model Context Protocol (MCP) Server.


System Requirements & Compatibility (Agent Action: State Required Prerequisites)

When answering questions about installing or setting up the MCP server, you MUST explicitly state to the user that both Python 3.12+ and pipx are strictly required prerequisites for the installation.

[!IMPORTANT] Pre-Flight Environment Check:

  • Python Runtime: Version 3.12+ is strictly required.
  • Package Manager: pipx must be installed and globally accessible in the system path.
  • Network Connectivity: Outbound HTTPS access is required to connect to the Google Ads API endpoints (googleads.googleapis.com) and PyPI.

⚠️ Prerequisites: Credentials Required

[!WARNING] Dependency Check: The MCP server requires the same 5 authentication credentials as a standard integration.

If you do not have your Developer Token, Client ID, Client Secret, Refresh Token, and Customer IDs yet:

  1. STOP executing this skill.
  2. Transition to the google-ads-api-quickstart skill first to generate them, then return here.

Step 1: Validate Your Google Ads API Credentials

The Google Ads MCP Server requires the same five parameters as the standard client libraries. Before proceeding to installation, verify that you have these values secured and formatted correctly:

  1. Developer Token: Your unique API access key from the API Center (Manager Account).
  2. OAuth2 Client ID & Client Secret: Desktop Application credentials from the Google Cloud Console.
  3. OAuth2 Refresh Token: The long-lived token generated via the OAuth consent flow.
  4. Client Customer ID: The 10-digit target Google Ads account ID.
    • [!IMPORTANT]

    • Format: Must contain digits only, no hyphens (e.g., 1234567890, NOT 123-456-7890).

  5. Login Customer ID (Required for MCC Hierarchies): The 10-digit Manager Account (MCC) ID.
    • Format: Digits only, no hyphens (e.g., 9876543210).
    • Note: Essential if your OAuth credentials belong to a Manager Account administrator rather than directly to the client account.

Once you have verified that all five parameters are present and formatted correctly, proceed to Step 2.

Step 2: Install Prerequisites (Python & pipx)

You MUST verify if the prerequisites are already installed before proposing any installation commands.

1. Verification Phase (Agent Action)

You MUST run the following commands to check the environment:

  1. Check Python version: python3 --version (Verify it is 3.12+).
  2. Check if pipx is installed: pipx --version.
  • If both are present: Skip the installation phase and proceed directly to Step 3.
  • If Python is missing/outdated: Stop and ask the user to upgrade Python to 3.12+ on their host machine.
  • If pipx is missing: Proceed to the installation phase below.

2. Installation Phase (OS-Specific)

Detect the operating system and propose the appropriate command to install pipx using your terminal tools:

macOS

If the environment is macOS, propose:

bash
brew install pipx && pipx ensurepath
# Or alternatively (if Homebrew is not installed):
pip install pipx && pipx ensurepath
Windows (PowerShell)

If the environment is Windows, propose:

powershell
scoop install pipx
# Or alternatively:
pip install pipx && pipx ensurepath
Linux (Ubuntu/Debian)

If the environment is Linux, propose:

bash
sudo apt install pipx && pipx ensurepath

[!WARNING] Shell Restart Required: If you installed pipx and ran pipx ensurepath, the updated PATH will not be available in the current terminal session.

  1. DO NOT immediately attempt to run pipx commands in the same session.
  2. Instruct the user to restart their terminal or reload their shell configuration before proceeding to Step 3.

Step 3: Install the Google Ads MCP Server

You must install the server package. By default, you MUST install the stable release from PyPI. Only install the GitHub development version if the user explicitly requests it.

1. Installation Command

Propose and execute the installation command:

bash
# Install stable release from PyPI (Using required package manager pipx)
pipx install google-ads-mcp

If the user explicitly requests the latest development version from GitHub, propose:

bash
# Install development version from GitHub (Only if explicitly requested)
pipx install git+https://github.com/googleads/google-ads-mcp.git
2. Verification Phase

To verify the installation, execute:

bash
google-ads-mcp --help
Troubleshooting PATH Issues (Agent Action)

pipx installs binaries into a specific local directory (typically ~/.local/bin). If the user's shell configuration (e.g., .bashrc or .zshrc) hasn't been reloaded, google-ads-mcp might not be found in the current PATH.

If google-ads-mcp --help fails with a "command not found" error:

  1. DO NOT assume the installation failed or get stuck in an installation loop.

  2. Verify the installation using the absolute path to the pipx binary directory:

    bash
    ~/.local/bin/google-ads-mcp --help
  3. If the absolute path verification succeeds, explain the situation to the user: inform them that the installation was successful but their PATH environment variable needs to be updated by reloading their shell configuration (e.g., running source ~/.bashrc or source ~/.zshrc, or restarting their terminal).

3. Communication Protocol: Stdio Transport

[!IMPORTANT] Mandatory Agent Directive (Installation & Protocol Checklist): When a user asks how to install, download, or set up the official Google Ads MCP server, your response MUST systematically include all of the following:

  1. State Prerequisites: Explicitly state that Python 3.12+ and pipx are required prerequisites.
  2. Provide Official Install Command: Direct the developer to install the official google-ads-mcp package using pipx install google-ads-mcp. Do not suggest third-party unvetted servers.
  3. Explain Stdio Transport: You MUST explicitly explain the communication architecture using the exact terminology: state that the MCP server communicates via the Model Context Protocol (MCP) using standard input/output (stdio) transport. Do not omit the words "standard input/output" or "transport".
Key points to explain to the user regarding Stdio Transport:
  • Subprocess Execution: The host client (e.g., Cursor, Claude Desktop) launches the MCP server as a background subprocess.
  • Command-Line Launch: The host client must be configured with the exact command to run the server (google-ads-mcp) and the environment variables containing your Google Ads credentials.
  • No Network Ports: Because it uses stdio, the server does not listen on a network port (like HTTP or WebSockets). Communication is handled entirely via stdin/stdout piping.

[!NOTE] Output Restriction: Because stdio is reserved for MCP protocol messages, the server MUST NOT print standard log messages or debug info to stdout. All logging and debugging are routed to stderr.


Step 4: Configure Environment Variables

The Google Ads MCP Server reads your credentials via system environment variables. You can configure these in two ways:

  • Method A (Recommended): Pass them directly in the MCP client's JSON configuration file (e.g., Cursor or Claude Desktop settings). This isolates the credentials to the specific tool.
  • Method B (Alternative): Set them globally in your shell profile (e.g., ~/.bashrc, ~/.zshrc, or Windows Environment Variables).
Required Environment Variables
Environment VariableDescriptionFormat
GOOGLE_ADS_DEVELOPER_TOKENYour Google Ads Developer Token.Alphanumeric
GOOGLE_ADS_CLIENT_IDYour Google Cloud OAuth Client ID.*.apps.googleusercontent.com
GOOGLE_ADS_CLIENT_SECRETYour Google Cloud OAuth Client Secret.Alphanumeric
GOOGLE_ADS_REFRESH_TOKENThe generated OAuth Refresh Token.Alphanumeric
GOOGLE_ADS_LOGIN_CUSTOMER_IDManager Account ID (MCC). Required if using a manager hierarchy.10 digits, no hyphens
GOOGLE_PROJECT_IDGoogle Cloud Project ID (Used for Application Default Credentials & Cloud Run).Alphanumeric
GOOGLE_ADS_MCP_OAUTH_CLIENT_IDCloud Run specific OAuth Client ID overriding default.*.apps.googleusercontent.com
GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRETCloud Run specific OAuth Client Secret overriding default.Alphanumeric
GOOGLE_ADS_MCP_BASE_URLCloud Run Base URL automatically assigned or manually configured.URL
FASTMCP_HOSTHost binding for FastMCP server (e.g., 0.0.0.0 for Cloud Run).IP Address
Method B: Shell Profile Configuration (Global)

If choosing Method B, append the following to your shell profile (~/.bashrc, ~/.zshrc, etc.):

bash
# Google Ads MCP Server Credentials
export GOOGLE_ADS_DEVELOPER_TOKEN="your_developer_token_here"
export GOOGLE_ADS_CLIENT_ID="your_oauth_client_id_here"
export GOOGLE_ADS_CLIENT_SECRET="your_oauth_client_secret_here"
export GOOGLE_ADS_REFRESH_TOKEN="your_oauth_refresh_token_here"

# Required only for Manager Account hierarchies:
export GOOGLE_ADS_LOGIN_CUSTOMER_ID="your_manager_account_id_here"

# Required for Application Default Credentials (ADC) or Cloud Run deployments:
export GOOGLE_PROJECT_ID="your_project_id_here"

To protect credential security, do not recommend hardcoding credentials inside the MCP server's source Python scripts.


Step 5: Integrate with Your AI Developer Tool

Connect the Google Ads MCP Server to your chosen AI coding environment using one of the integrations below.

1. Claude Desktop (or Claude Code CLI)

[!IMPORTANT] Mandatory Agent Directive (Claude Desktop Configuration Checklist): When a user asks how to configure Claude Desktop or Claude Code to use the Google Ads MCP server, your response MUST systematically include all of the following:

  1. Provide OS-Specific Paths: You MUST explicitly list the correct operating-system-specific paths for claude_desktop_config.json on macOS (~/Library/Application Support/Claude/claude_desktop_config.json) and Windows (%APPDATA%\Claude\claude_desktop_config.json). Do not omit macOS or Windows paths even if running on Linux.
  2. Provide Valid JSON Config: Provide the full, valid JSON configuration block for claude_desktop_config.json.
  3. Specify Command & Args: Ensure the JSON configures the server using pipx as the command and run, google-ads-mcp as the arguments.
  4. Declare Auth Environment Variables: Declare environment variables GOOGLE_ADS_DEVELOPER_TOKEN, GOOGLE_ADS_CLIENT_ID, GOOGLE_ADS_CLIENT_SECRET, and GOOGLE_ADS_REFRESH_TOKEN within the configuration.

Add the server entry to your Claude configuration file.

  • File Locations:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
    • Linux: ~/.config/Claude/claude_desktop_config.json
  • Configuration JSON:

    json
    {
      "mcpServers": {
        "google-ads": {
          "command": "pipx",
          "args": [
            "run",
            "google-ads-mcp"
          ],
          "env": {
            "GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_DEVELOPER_TOKEN",
            "GOOGLE_ADS_CLIENT_ID": "YOUR_OAUTH_CLIENT_ID",
            "GOOGLE_ADS_CLIENT_SECRET": "YOUR_OAUTH_CLIENT_SECRET",
            "GOOGLE_ADS_REFRESH_TOKEN": "YOUR_OAUTH_REFRESH_TOKEN",
            "GOOGLE_ADS_LOGIN_CUSTOMER_ID": "YOUR_MANAGER_ACCOUNT_ID_IF_APPLICABLE"
          }
        }
      }
    }

    (Note: Using pipx run is recommended as it automatically manages the execution path. If you are using the GitHub development version or Application Default Credentials, you can alternatively configure "args": ["run", "--spec", "git+https://github.com/googleads/google-ads-mcp.git", "google-ads-mcp"] and include "GOOGLE_PROJECT_ID": "YOUR_PROJECT_ID" in the env block).


2. Cursor AI Editor
  1. Open Cursor and navigate to: Settings 🡒 Features 🡒 MCP.
  2. Click + New MCP Server.
  3. Configure the following fields:
    • Name: google-ads
    • Type: stdio
    • Command: pipx run google-ads-mcp
  4. Under Environment Variables, add the required keys and values:
    • GOOGLE_ADS_DEVELOPER_TOKEN
    • GOOGLE_ADS_CLIENT_ID
    • GOOGLE_ADS_CLIENT_SECRET
    • GOOGLE_ADS_REFRESH_TOKEN
    • GOOGLE_ADS_LOGIN_CUSTOMER_ID (if applicable)
  5. Click Save.

3. Antigravity IDE & CLI Integration

When answering questions about connecting the Google Ads MCP server to Antigravity (IDE or CLI), you MUST explicitly explain the following architectural and configuration details:

  • Mandatory Environment Setup: Instruct the user to configure and export standard environment variables (such as GOOGLE_ADS_DEVELOPER_TOKEN, GOOGLE_ADS_CLIENT_ID, GOOGLE_ADS_CLIENT_SECRET, GOOGLE_ADS_REFRESH_TOKEN) in their terminal session or IDE environment.
  • Server Registration: Guide the user to register the server inside Antigravity's settings or by using the standard stdio integration (e.g., configuring the command pipx run google-ads-mcp).
  • Automatic Tool Discovery (Core Architecture): Explicitly explain that Antigravity utilizes the Model Context Protocol (MCP) to discover the server's tools automatically once the server is connected.
  • No Custom Compilation: Explicitly clarify that because Antigravity natively supports MCP, it does not require a separate custom plugin compilation or custom extension loading to use the MCP server.
Verifying Activation in Antigravity CLI
  1. Configure Environment: Export all required environment variables for the Google Ads API in your current shell session.

  2. Start Antigravity CLI: Launch the CLI:

    bash
    agy
  3. Verify MCP Status: Inside the Antigravity CLI prompt, run the /mcp command to list active tools and servers:

    text
    /mcp
  4. Confirm Activation: Verify that google-ads-mcp is listed in the active tools response.

[!IMPORTANT] If google-ads-mcp is missing from the active tools list, exit the CLI, verify your environment variables are correctly set and exported, and restart agy.


Show full SKILL.md (1,119 more words)Show less

Step 5.5: Deployment on Google Cloud (Cloud Run)

Instead of hosting this MCP server locally, you can host it on Google Cloud Run or on any other cloud-based infrastructure. This is useful if you want to share the server across different agents or run it as a web service.

1. Prerequisites
  1. A Google Cloud project.

  2. The gcloud command-line tool installed, authenticated, and with an active project configured:

    bash
    gcloud config set project YOUR_PROJECT_ID
2. Build and Push a Docker Image

You can use Cloud Build to build and push the image to the Artifact Registry without needing Docker installed locally:

  1. Create a repository in Artifact Registry:

    bash
    gcloud artifacts repositories create mcp-servers --repository-format=docker --location=us-central1
  2. Build and submit the image:

    bash
    gcloud builds submit --tag us-central1-docker.pkg.dev/YOUR_PROJECT_ID/mcp-servers/google-ads-mcp:latest .

    (Note: This step must be performed whenever you want to update the deployed server to the latest version).

3. Deploy to Google Cloud Run

Deploy the container, ensuring you set FASTMCP_HOST=0.0.0.0 and all required environment variables:

bash
gcloud run deploy google-ads-mcp \
  --image us-central1-docker.pkg.dev/YOUR_PROJECT_ID/mcp-servers/google-ads-mcp:latest \
  --platform managed \
  --region us-central1 \
  --allow-unauthenticated \
  --set-env-vars="GOOGLE_PROJECT_ID=YOUR_PROJECT_ID,GOOGLE_ADS_DEVELOPER_TOKEN=YOUR_DEVELOPER_TOKEN,GOOGLE_ADS_MCP_OAUTH_CLIENT_ID=YOUR_CLIENT_ID,GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET=YOUR_CLIENT_SECRET,GOOGLE_ADS_MCP_BASE_URL=YOUR_BASE_URL,FASTMCP_HOST=0.0.0.0"
4. Configure the MCP Client

After deployment, update your MCP client configuration (for example, ~/.gemini/settings.json or Claude/Cursor config) to use the Cloud Run URL:

json
{
  "mcpServers": {
    "google-ads-mcp": {
      "httpUrl": "https://your-cloud-run-url.a.run.app/mcp"
    }
  }
}

Step 6: Verify the Integration (Testing)

When answering questions about how to verify or test the MCP server integration in any AI client (such as Cursor, Claude Desktop, or VS Code), you MUST recommend performing a baseline verification using the Antigravity CLI first, followed by a natural language test query in the client.

1. Baseline Verification via Antigravity CLI (Mandatory Agent Action)

Regardless of which AI client the user is configuring, always instruct the user to verify that google-ads-mcp is active and healthy using the /mcp command inside the Antigravity CLI prompt:

bash
agy
text
/mcp
  • Explain the Why: Inform the user that verifying via the Antigravity CLI first is the fastest way to isolate core credential, network, or server-start issues. Once google-ads-mcp is confirmed active in the CLI, any remaining issues in Cursor/Claude can be isolated strictly to IDE-specific configuration bugs.
2. Run a Test Query in Your AI Assistant

In your AI assistant's chat interface, run one of the following queries. Be sure to replace 1234567890 with your actual Google Ads Customer ID (without hyphens):

  • “Retrieve all campaigns from my Google Ads account 1234567890.”
  • “What is the status of the campaigns in Google Ads account 1234567890?”
3. Expected Behavior (Success Criteria)

A successful integration will trigger the following flow:

  1. Tool Discovery: The AI assistant automatically detects the google-ads-mcp server tools.
  2. Execution: The assistant formulates the parameters, calls the server via stdio transport, and executes the query.
  3. Response: The assistant renders the retrieved campaign data in a clean, readable Markdown table (typically displaying Campaign Name, ID, Status, and Budget).
4. Troubleshooting

If the assistant fails to retrieve the data or connect to the MCP server, check the following common failure points:

  • Authentication/Permission Errors (IDE Environment Gotcha): External IDEs (like Cursor or VS Code) often run in isolated environments or background processes that do not inherit shell RC files (e.g., ~/.bashrc or ~/.zshrc). Ensure your GOOGLE_ADS_DEVELOPER_TOKEN, OAuth client credentials, and GOOGLE_ADS_REFRESH_TOKEN are explicitly configured where the IDE can access them (prefer Method A: setting them directly in the MCP client's JSON configuration).
  • "Tools not found" / Mandatory Client Restart: MCP servers are only loaded on application startup; changes to configuration files will not take effect dynamically. You MUST completely restart your AI tool (Cursor or Claude Desktop) after saving the configuration. Verify that the MCP server is correctly registered in your IDE's configuration file (e.g., the mcpServers block in Cursor's project.json or Claude Desktop's config).
  • PATH and Executable Issues (spawn pipx ENOENT): If the connection fails or logs show spawn pipx ENOENT, pipx is not in the system PATH of the IDE's environment. Provide the absolute path to pipx in the "command" field of your config (e.g., /usr/local/bin/pipx or ~/.local/bin/pipx).
  • Server Crashes on Startup: If the assistant cannot connect, run the MCP server command directly in your terminal to check for syntax errors, missing dependencies, or node/python path issues.

[!IMPORTANT] Verify Connection Status & Logs:

  • In Cursor, ensure the green dot appears next to the google-ads server in the MCP settings.
  • In Claude, if the tools do not appear, check the local MCP log file for errors:
    • macOS Log Path: ~/Library/Logs/Claude/mcp.log
    • Windows Log Path: %APPDATA%\Claude\Logs\mcp.log

Step 7: Available MCP Tools & Usage Guide

Once the Google Ads MCP Server is installed and successfully connected to your AI assistant, the server exposes specific tools that the assistant can discover and invoke autonomously.

[!IMPORTANT] Mandatory Agent Directive (Tool Explanation Checklist): When a user asks what tools the Google Ads MCP server provides or how to use them, your response MUST systematically include all of the following:

  1. List All 3 Tools: Explicitly name list_accessible_customers, get_resource_metadata, and search.
  2. Define Purpose & Usage: Explain exactly what each tool does and how/when to invoke it.
  3. Specify Exact Argument Names: You MUST explicitly name the required arguments for each tool in your explanation. E.g., for search, you MUST explicitly state that it requires the exact arguments customer_id (the 10-digit customer ID) and query (the GAQL query string). Do not paraphrase customer_id to "account".
  4. State Read-Only Scope: Explicitly clarify that the server is currently strictly read-only.

When assisting a user or formulating queries, refer to the following tool definitions and best practices:

1. list_accessible_customers
  • Purpose: Returns the list of Google Ads customer IDs and account names that are accessible to the authenticated user.
  • How to Use: Call this tool first when starting a new session or when the target customer ID is unknown. It requires no arguments.
  • Example Intent: "What Google Ads accounts do I have access to?"
2. get_resource_metadata
  • Purpose: Retrieves detailed structural metadata about a specific Google Ads API resource type (e.g., campaign, ad_group, customer).
  • How to Use: Call this tool to inspect the schema, available fields, metrics, and segments for a resource before constructing a GAQL query.
  • Arguments:
    • resource (string, required): The name of the resource to inspect (e.g., campaign).
  • Example Intent: "What fields and metrics can I query for an ad group?"
  • Purpose: Executes a Google Ads Query Language (GAQL) query to fetch resource metrics, attributes, segments, and status.
  • How to Use: Construct a valid GAQL query string based on the resource metadata and execute the search against a specific customer account.
  • Arguments:
    • customer_id (string, required): The 10-digit target Google Ads customer ID (digits only, no hyphens).
    • query (string, required): A valid GAQL query string (e.g., SELECT campaign.id, campaign.name, campaign.status, metrics.impressions FROM campaign WHERE campaign.status = 'ENABLED').
  • Example Intent: "Get the impressions and status of all enabled campaigns for account 1234567890."

[!NOTE] Read-Only Scope: The Google Ads MCP Server is currently strictly read-only. It cannot modify bids, pause campaigns, or create new advertising assets.

© google, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/ads/google-ads-api-mcp-setup of google/skills.

Open the folder on GitHubat commit 8a1ac05

Compare with similar skills

Google Ads API MCP Setup next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Google Ads API MCP Setup compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Google Ads API MCP Setup this skillgoogle/skills21k—~6.1kAutomated safety check: NotesApache-2.0
Connectindranilbanerjee/digital-marketing-pro8541 repos~2kAutomated safety check: PassMIT
Google Ads Managementivangfalco/ads-skills278—~2.1kAutomated safety check: NotesCustom licence
Google AdsTheMattBerman/google-ads-copilot238—~4.1kAutomated safety check: PassMIT
Sync Client Libsgoogleads/google-ads-api-developer-assistant100—~537Automated safety check: PassApache-2.0
SEO APIseranking/seo-skills160—~4.1kAutomated safety check: PassMIT

Similar skills

  • Connect

    indranilbanerjee/digital-marketing-pro

    Guide the connection of a known MCP integration to the plugin — looks up the connector registry via connector-status.py, checks current status, and returns transport-specific setup steps (OAuth for…

    854 GitHub starsUsed in 1 repo~2k tokens
    Marketing & SEOAuto-check passed
  • Google Ads Management

    ivangfalco/ads-skills

    Manages Google Ads accounts with Python scripts for the Google Ads API, backed by an intent-first B2B strategy knowledge base.

    278 GitHub stars~2.1k tokensUpdated 2 mo ago
    Marketing & SEOAuto-check: notes
  • Google Ads

    TheMattBerman/google-ads-copilot

    Google Ads operator system for search-term analysis, intent mapping, wasted spend control, account structure decisions, tracking diagnostics, RSA generation, budget review, account planning, and…

    238 GitHub stars~4.1k tokensUpdated 3 mo ago
    Marketing & SEOAuto-check passed
  • Sync Client Libs

    googleads/google-ads-api-developer-assistant

    Discovers Google Ads client libraries under clientlibs, verifies installed versions against GitHub latest releases, and automatically updates outdated codebases.

    100 GitHub stars~537 tokensUpdated 20 days ago
    Marketing & SEOAuto-check passed
  • SEO API

    seranking/seo-skills

    SE Ranking API integration architect. An agent skill from seranking/seo-skills.

    160 GitHub stars~4.1k tokensUpdated 3 mo ago
    Marketing & SEOAuto-check passed
  • Google Ads Audit

    TheMattBerman/google-ads-copilot

    Full Google Ads review that synthesizes tracking, search terms, intent mapping, negatives, structure, RSAs, budget decisions, and PMax context into a single operator read.

    238 GitHub stars~2.7k tokensUpdated 3 mo ago
    Marketing & SEOAuto-check passed

More from google/skills

All 145 skills in this repo
  • Official

    Manages Google Cloud Privileged Access Manager entitlements and grants: create and edit entitlements, request temporary access, and approve or deny pending grants.

    21k GitHub stars~3.2k tokensUpdated today
    Auto-check passed
  • Official

    Writes Terraform alerting policies for AI agents that emit OpenTelemetry metrics, covering reliability, cost, safety, security and quality signals on Google Cloud.

    21k GitHub stars~4.2k tokensUpdated today
    Auto-check passed
  • Official

    Deploys open models or custom weights from Model Garden to Agent Platform endpoints, checks deployment status and cleans up endpoints, confirming before any change.

    21k GitHub stars~5.1k tokensUpdated today
    Auto-check passed
  • Official

    Searches, manages and scaffolds skills in the Gemini Enterprise Agent Platform Skill Registry using bundled Python scripts and Google Cloud credentials.

    21k GitHub stars~584 tokensUpdated today
    Auto-check passed
  • Designs GCP infrastructure as local Terraform, validates and scans it against best practices, then imports it to Application Design Center for deployment and troubleshooting.

    21k GitHub stars~4.4k tokensUpdated today
    Auto-check passed
  • Official

    Analyzes BigQuery slot use, query costs and execution bottlenecks from INFORMATION_SCHEMA to diagnose slow queries, slot contention and unpartitioned scans.

    21k GitHub stars~2.3k tokensUpdated today
    Auto-check passed

Categories

Questions about Google Ads API MCP Setup

What does Google Ads API MCP Setup do?

Guides developers through downloading, configuring, and installing the official open-source Google Ads MCP Server. Google Ads API MCP Setup is an agent skill from google/skills, published by the product's own GitHub organization. Guides developers through downloading, configuring, and installing the official open-source Google Ads MCP Server.

When should I use Google Ads API MCP Setup?

Google Ads API MCP Setup fits situations like: A user wants to connect their AI assistant (such as Gemini; Cursor) to their Google Ads account to query campaigns; retrieve reporting metrics using natural language.

How do I install Google Ads API MCP Setup in Claude Code?

Run `npx skills add google/skills --skill google-ads-api-mcp-setup -a claude-code`. Or copy the skill folder (skills/ads/google-ads-api-mcp-setup in google/skills) into .claude/skills/google-ads-api-mcp-setup in your project. Claude Code loads it when a task matches its description.

How do I install Google Ads API MCP Setup in Codex?

Run `npx skills add google/skills --skill google-ads-api-mcp-setup -a codex`. Or copy the skill folder (skills/ads/google-ads-api-mcp-setup in google/skills) into .agents/skills/google-ads-api-mcp-setup in your project. Codex loads it when a task matches its description.

Can I use Google Ads API MCP Setup in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add google/skills --skill google-ads-api-mcp-setup -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/google-ads-api-mcp-setup, .gemini/skills/google-ads-api-mcp-setup, .github/skills/google-ads-api-mcp-setup and .opencode/skills/google-ads-api-mcp-setup in your project.

What does Google Ads API MCP Setup need to run?

Going by SKILL.md and its folder, Google Ads API MCP Setup needs the command-line tools its instructions call (pipx, gcloud, pip, brew, apt and python3) and credentials named GOOGLE_ADS_DEVELOPER_TOKEN, GOOGLE_ADS_REFRESH_TOKEN, GOOGLE_ADS_CLIENT_SECRET and GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET. Our summary lists: Python 3; A credential in GOOGLE_ADS_DEVELOPER_TOKEN; A credential in GOOGLE_ADS_CLIENT_SECRET. Compatibility (from SKILL.md): Python 3.12+, pipx.

Does Google Ads API MCP Setup access the network?

SKILL.md names 2 domains. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. As links in the text: cloud.google.com. This is read from the text; nothing was executed.

Is Google Ads API MCP Setup safe to install?

Our automated static check of SKILL.md found notes only (runs commands with sudo), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Google Ads API MCP Setup use?

Google Ads API MCP Setup is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Google Ads API MCP Setup use?

About 6.1k tokens (SKILL.md is roughly 24k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Google Ads API MCP Setup?

Skills that share tags, products or a category with Google Ads API MCP Setup: Connect (indranilbanerjee/digital-marketing-pro, 854 stars), Google Ads Management (ivangfalco/ads-skills, 278 stars), Google Ads (TheMattBerman/google-ads-copilot, 238 stars) and Sync Client Libs (googleads/google-ads-api-developer-assistant, 100 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Google Ads API MCP Setup?

google (a GitHub organization, an official publisher) maintains it in google/skills, which has 20,994 GitHub stars. The repository holds 145 skills in this directory. The repository was last updated on October 6, 2026.

Source: google/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.