# Google Ads MCP server

> Query Google Ads accounts with GAQL and inspect campaign data and performance metrics through the Google Ads API.

- Listing: https://mcp.tc/i/google-ads
- Connect: this is a local (stdio) server; install it on your machine (see Install). The listing link is a page, not an MCP endpoint.
- Type: local (stdio)
- Auth: API key
- Category: [Marketing & SEO](https://mcp.tc/c/marketing-seo)
- Vendor: Google
- Verified: yes, mcp.tc checked that this is the official server (https://mcp.tc/verify). It says who runs the server, not that it is safe.
- Repository: <https://github.com/googleads/google-ads-mcp>
- Package: pypi `google-ads-mcp`

## About

Connects to the Google Ads API so an assistant can search account data, run GAQL queries, look up resource metadata and list the customer accounts the signed-in user can access. Resources expose the API discovery document, available metrics and segments, and release notes.

Runs locally over stdio with pipx (pipx run google-ads-mcp). It needs Google credentials (Application Default Credentials or a credentials file), a Google Cloud project with the Google Ads API enabled, and a Google Ads developer token with at least Explorer access for production accounts. An optional OAuth proxy mode serves streamable HTTP.

## What it can do

- Run searches and GAQL queries against Google Ads accounts
- Get metadata and available fields for a Google Ads resource such as campaign
- List customer accounts accessible to the authenticated user
- Read the Google Ads API discovery document, metrics and segments
- Read the latest Google Ads API release notes
- Enable or rename tools through a tools\_config.yaml file

## Example prompts

- "List the Google Ads customer accounts I can access"
- "Show clicks, cost and conversions per campaign for the last 30 days"
- "What fields can I query on the ad\_group resource?"
- "Which campaigns had the highest cost per conversion last week?"

## Install

### Claude Code

1. Run this in a terminal, in your project folder:

```bash
claude mcp add --transport stdio google-ads --env "GOOGLE_ADS_DEVELOPER_TOKEN=<YOUR_GOOGLE_ADS_DEVELOPER_TOKEN>" --env "GOOGLE_PROJECT_ID=<YOUR_GOOGLE_PROJECT_ID>" -- pipx run google-ads-mcp
```

2. Start Claude Code and type `/mcp`. **google-ads** should show as connected.

Add `--scope user` to make it available in every project. Replace the placeholders with your own values.

### Claude Desktop

1. Open **Settings → Developer → Edit Config**. It opens `claude_desktop_config.json`. Add:

`claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "google-ads": {
      "command": "pipx",
      "args": [
        "run",
        "google-ads-mcp"
      ],
      "env": {
        "GOOGLE_ADS_DEVELOPER_TOKEN": "<YOUR_GOOGLE_ADS_DEVELOPER_TOKEN>",
        "GOOGLE_PROJECT_ID": "<YOUR_GOOGLE_PROJECT_ID>"
      }
    }
  }
}
```

2. Save the file and restart Claude Desktop. Replace the placeholders with your own values.

Needs pipx (Python) on your computer. The file lives in `~/Library/Application Support/Claude/` on macOS and `%APPDATA%\Claude\` on Windows.

### Cursor

[Add to Cursor](<https://cursor.com/install-mcp?name=google-ads&config=eyJjb21tYW5kIjoicGlweCIsImFyZ3MiOlsicnVuIiwiZ29vZ2xlLWFkcy1tY3AiXSwiZW52Ijp7IkdPT0dMRV9BRFNfREVWRUxPUEVSX1RPS0VOIjoiPFlPVVJfR09PR0xFX0FEU19ERVZFTE9QRVJfVE9LRU4%2BIiwiR09PR0xFX1BST0pFQ1RfSUQiOiI8WU9VUl9HT09HTEVfUFJPSkVDVF9JRD4ifX0%3D>) (opens Cursor)

Or add it by hand to `~/.cursor/mcp.json` (all projects) or `.cursor/mcp.json` (this project):

`mcp.json`:

```json
{
  "mcpServers": {
    "google-ads": {
      "command": "pipx",
      "args": [
        "run",
        "google-ads-mcp"
      ],
      "env": {
        "GOOGLE_ADS_DEVELOPER_TOKEN": "<YOUR_GOOGLE_ADS_DEVELOPER_TOKEN>",
        "GOOGLE_PROJECT_ID": "<YOUR_GOOGLE_PROJECT_ID>"
      }
    }
  }
}
```

Needs pipx (Python) on your computer. Replace the placeholders with your own values.

### VS Code

Add it to `.vscode/mcp.json`. VS Code asks for the secret the first time and stores it securely:

`.vscode/mcp.json`:

```json
{
  "servers": {
    "google-ads": {
      "type": "stdio",
      "command": "pipx",
      "args": [
        "run",
        "google-ads-mcp"
      ],
      "env": {
        "GOOGLE_ADS_DEVELOPER_TOKEN": "${input:google-ads-developer-token}",
        "GOOGLE_PROJECT_ID": "<YOUR_GOOGLE_PROJECT_ID>"
      }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "google-ads-developer-token",
      "description": "GOOGLE_ADS_DEVELOPER_TOKEN",
      "password": true
    }
  ]
}
```

Needs pipx (Python) on your computer.

### Devin Desktop

1. Add it to `~/.config/devin/mcp_config.json` (macOS and Linux) or `%APPDATA%\devin\mcp_config.json` (Windows):

`mcp_config.json`:

```json
{
  "mcpServers": {
    "google-ads": {
      "command": "pipx",
      "args": [
        "run",
        "google-ads-mcp"
      ],
      "env": {
        "GOOGLE_ADS_DEVELOPER_TOKEN": "<YOUR_GOOGLE_ADS_DEVELOPER_TOKEN>",
        "GOOGLE_PROJECT_ID": "<YOUR_GOOGLE_PROJECT_ID>"
      }
    }
  }
}
```

2. Refresh the MCP server list in Cascade. Replace the placeholders with your own values.

Devin Desktop is the new name for Windsurf.

### Codex

```bash
codex mcp add google-ads --env "GOOGLE_ADS_DEVELOPER_TOKEN=<YOUR_GOOGLE_ADS_DEVELOPER_TOKEN>" --env "GOOGLE_PROJECT_ID=<YOUR_GOOGLE_PROJECT_ID>" -- pipx run google-ads-mcp
```

Or edit `~/.codex/config.toml` directly:

`config.toml`:

```toml
[mcp_servers.google-ads]
command = "pipx"
args = ["run", "google-ads-mcp"]
env = { GOOGLE_ADS_DEVELOPER_TOKEN = "<YOUR_GOOGLE_ADS_DEVELOPER_TOKEN>", GOOGLE_PROJECT_ID = "<YOUR_GOOGLE_PROJECT_ID>" }
```

Needs pipx (Python) on your computer. Replace the placeholders with your own values.

### Gemini CLI

```bash
gemini mcp add -e "GOOGLE_ADS_DEVELOPER_TOKEN=<YOUR_GOOGLE_ADS_DEVELOPER_TOKEN>" -e "GOOGLE_PROJECT_ID=<YOUR_GOOGLE_PROJECT_ID>" google-ads pipx run google-ads-mcp
```

This adds it to the current project. Add `-s user` to use it everywhere.

### Any client

Most clients that start local servers accept this shape:

```json
{
  "mcpServers": {
    "google-ads": {
      "command": "pipx",
      "args": [
        "run",
        "google-ads-mcp"
      ],
      "env": {
        "GOOGLE_ADS_DEVELOPER_TOKEN": "<YOUR_GOOGLE_ADS_DEVELOPER_TOKEN>",
        "GOOGLE_PROJECT_ID": "<YOUR_GOOGLE_PROJECT_ID>"
      }
    }
  }
}
```

Zed puts servers under `context_servers` in its settings, with the same `command`, `args` and `env` fields.

Needs pipx (Python) on your computer. Replace the placeholders with your own values.

## Details

- Server version: 0.0.4
- Last checked: 2026-10-03
- Listed: 2026-10-03
- Updated: 2026-10-03

---
Source: https://mcp.tc/i/google-ads (mcp.tc is an independent directory, not affiliated with this server's publisher). Corrections: https://mcp.tc/report
