Google Ads MCP Server

1

Add it to Claude Code

Run this in a terminal.

Run in terminal
claude mcp add -e "GOOGLE_APPLICATION_CREDENTIALS=${GOOGLE_APPLICATION_CREDENTIALS}" -e "GOOGLE_PROJECT_ID=${GOOGLE_PROJECT_ID}" -e "GOOGLE_ADS_DEVELOPER_TOKEN=${GOOGLE_ADS_DEVELOPER_TOKEN}" google-ads -- pipx run --spec git+https://github.com/googleads/google-ads-mcp.git google-ads-mcp
Required:GOOGLE_APPLICATION_CREDENTIALSGOOGLE_PROJECT_IDGOOGLE_ADS_DEVELOPER_TOKEN
README.md

Interact with the Google Ads API to retrieve account and performance data.

Google Ads MCP Server (Experimental)

This repo contains the source code for running a local MCP server that interacts with the Google Ads API.

Tools

The server uses the Google Ads API to provide several Tools for use with LLMs.

Tools available

  • search: Retrieves information about the Google Ads account.
  • list_accessible_customers: Returns names of customers directly accessible by the user authenticating the call.

Notes

  1. The MCP Server will expose your data to the Agent or LLM that you connect to it.
  2. If you have technical issues, please use the GitHub issue tracker.
  3. To help us collect usage data, you will notice an extra header has been added to your API calls, this data is used to improve the product.

Setup instructions

Setup involves the following steps:

  1. Configure Python.
  2. Configure Developer Token.
  3. Enable APIs in your project
  4. Configure Credentials.
  5. Configure Gemini.

Configure Python

Install pipx.

Configure Developer Token

Follow the instructions for Obtaining a Developer Token.

Record 'YOUR_DEVELOPER_TOKEN', you will need this for the the 'Configure Gemini' step below

Enable APIs in your project

Follow the instructions to enable the following APIs in your Google Cloud project:

Configure Credentials

Option 1: Configure credentials using Application Default Credentials

Configure your Application Default Credentials (ADC). Make sure the credentials are for a user with access to your Google Ads accounts or properties.

Credentials must include the Google Ads API scope:

https://www.googleapis.com/auth/adwords

Check out Manage OAuth Clients for how to create an OAuth client.

Here are some sample gcloud commands you might find useful:

  • Set up ADC using user credentials and an OAuth desktop or web client after downloading the client JSON to YOUR_CLIENT_JSON_FILE.

    gcloud auth application-default login \
      --scopes https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/cloud-platform \
      --client-id-file=YOUR_CLIENT_JSON_FILE
    
  • Set up ADC using service account impersonation.

    gcloud auth application-default login \
      --impersonate-service-account=SERVICE_ACCOUNT_EMAIL \
      --scopes=https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/cloud-platform
    

When the gcloud auth application-default command completes, copy the PATH_TO_CREDENTIALS_JSON file location printed to the console in the following message. You will need this for a later step!

Credentials saved to file: [PATH_TO_CREDENTIALS_JSON]
Option 2: Configure credentials using the Google Ads API Python client library.

Follow the instructions to setup and configure the Google Ads API Python client library

If you have already done this and have a working google-ads.yaml , you can reuse this file!

In the utils.py file, change get_googleads_client() to use the load_from_storage() method.

Configure Gemini

  1. Install Gemini CLI or Gemini Code Assist

  2. Create or edit the file at ~/.gemini/settings.json, adding your server to the mcpServers list.

  • Option 1: the Application Default Credentials method

    Replace PATH_TO_CREDENTIALS_JSON with the path you copied in the previous step.

    We also recommend that you add a GOOGLE_CLOUD_PROJECT attribute to the env object. Replace YOUR_PROJECT_ID in the following example with the project ID of your Google Cloud project.

    {
      "mcpServers": {
        "google-ads-mcp": {
          "command": "pipx",
          "args": [
            "run",
            "--spec",
            "git+https://github.com/googleads/google-ads-mcp.git",
            "google-ads-mcp"
          ],
          "env": {
            "GOOGLE_APPLICATION_CREDENTIALS": "PATH_TO_CREDENTIALS_JSON",
            "GOOGLE_PROJECT_ID": "YOUR_PROJECT_ID",
            "GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_DEVELOPER_TOKEN"
          }
        }
      }
    }
    

Tools (2)

searchRetrieves information about the Google Ads account.
list_accessible_customersReturns names of customers directly accessible by the user authenticating the call.

Environment Variables

GOOGLE_APPLICATION_CREDENTIALSrequiredPath to your Google Cloud credentials JSON file.
GOOGLE_PROJECT_IDrequiredThe project ID of your Google Cloud project.
GOOGLE_ADS_DEVELOPER_TOKENrequiredYour Google Ads API developer token.

Configuration

claude_desktop_config.json
{"mcpServers": {"google-ads-mcp": {"command": "pipx", "args": ["run", "--spec", "git+https://github.com/googleads/google-ads-mcp.git", "google-ads-mcp"], "env": {"GOOGLE_APPLICATION_CREDENTIALS": "PATH_TO_CREDENTIALS_JSON", "GOOGLE_PROJECT_ID": "YOUR_PROJECT_ID", "GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_DEVELOPER_TOKEN"}}}}

Try it

List all the Google Ads customers I have access to.
Search for my current Google Ads account information.
Can you retrieve the account details for my connected Google Ads profile?

Frequently Asked Questions

What are the key features of Google Ads MCP Server?

Retrieve Google Ads account information. List accessible Google Ads customers. Integrates with Google Ads API v21. Supports Application Default Credentials for authentication.

What can I use Google Ads MCP Server for?

Quickly querying account status without navigating the Google Ads dashboard.. Automating the retrieval of customer lists for reporting workflows.. Integrating Google Ads data into AI-driven marketing analysis tools..

How do I install Google Ads MCP Server?

Install Google Ads MCP Server by running: pipx run --spec git+https://github.com/googleads/google-ads-mcp.git google-ads-mcp

What MCP clients work with Google Ads MCP Server?

Google Ads MCP Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Google Ads MCP Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare