PluginBench
MCP Server
Active
MIT

io.github.davidmosiah/google-ads-mcp MCP Server

io.github.davidmosiah/google-ads-mcp

What is the io.github.davidmosiah/google-ads-mcp MCP server?

Unofficial Google Ads MCP for campaigns, keywords, budgets, and gated mutations.

How to install io.github.davidmosiah/google-ads-mcp

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • GOOGLE_ADS_DEVELOPER_TOKEN
    secret

    Google Ads API developer token from your Google Ads Manager account. Required.

  • GOOGLE_ADS_CLIENT_ID

    Google OAuth2 client ID. Required.

  • GOOGLE_ADS_CLIENT_SECRET
    secret

    Google OAuth2 client secret. Prefer storing in ~/.google-ads-mcp/config.json via setup.

  • GOOGLE_ADS_LOGIN_CUSTOMER_ID

    Manager (MCC) customer ID used as login-customer-id header, no dashes (e.g., 1234567890). Optional but required for multi-account access.

  • GOOGLE_ADS_REDIRECT_URI

    OAuth redirect URI. Defaults to http://127.0.0.1:3000/callback.

  • GOOGLE_ADS_TOKEN_PATH

    Optional local path for OAuth tokens. Defaults to ~/.google-ads-mcp/tokens.json (0600).

  • GOOGLE_ADS_PRIVACY_MODE

    Optional payload mode: summary, structured, or raw. Defaults to structured. raw returns full Google Ads API payloads.

  • GOOGLE_ADS_ALLOW_MUTATIONS

    Set to true to enable write tools (pause/resume keywords/campaigns, set bids, set budgets). Default false (read-only). Agents changing real ad spend is high-stakes; review every change.

  • GOOGLE_ADS_CACHE

    Optional SQLite cache toggle. Set to true or sqlite to enable.

  • GOOGLE_ADS_CACHE_PATH

    Optional local SQLite cache path. Defaults to ~/.google-ads-mcp/cache.sqlite.

  • GOOGLE_ADS_CACHE_TTL_SECONDS

    Optional cache TTL in seconds. Defaults to 60. Set to 0 to keep entries indefinitely (entries are still overwritten on each hit).

  • GOOGLE_ADS_NO_RETRY

    Set to true to disable the HTTP retry middleware. Default false.

~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "google-ads-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "google-ads-mcp-unofficial"
      ],
      "env": {
        "GOOGLE_ADS_DEVELOPER_TOKEN": "<YOUR_GOOGLE_ADS_DEVELOPER_TOKEN>",
        "GOOGLE_ADS_CLIENT_ID": "<YOUR_GOOGLE_ADS_CLIENT_ID>",
        "GOOGLE_ADS_CLIENT_SECRET": "<YOUR_GOOGLE_ADS_CLIENT_SECRET>",
        "GOOGLE_ADS_LOGIN_CUSTOMER_ID": "<YOUR_GOOGLE_ADS_LOGIN_CUSTOMER_ID>",
        "GOOGLE_ADS_REDIRECT_URI": "<YOUR_GOOGLE_ADS_REDIRECT_URI>",
        "GOOGLE_ADS_TOKEN_PATH": "<YOUR_GOOGLE_ADS_TOKEN_PATH>",
        "GOOGLE_ADS_PRIVACY_MODE": "<YOUR_GOOGLE_ADS_PRIVACY_MODE>",
        "GOOGLE_ADS_ALLOW_MUTATIONS": "<YOUR_GOOGLE_ADS_ALLOW_MUTATIONS>",
        "GOOGLE_ADS_CACHE": "<YOUR_GOOGLE_ADS_CACHE>",
        "GOOGLE_ADS_CACHE_PATH": "<YOUR_GOOGLE_ADS_CACHE_PATH>",
        "GOOGLE_ADS_CACHE_TTL_SECONDS": "<YOUR_GOOGLE_ADS_CACHE_TTL_SECONDS>",
        "GOOGLE_ADS_NO_RETRY": "<YOUR_GOOGLE_ADS_NO_RETRY>"
      }
    }
  }
}

Related MCP servers

Privacy-first MCP server for Google Health API v4 data—Fitbit, Pixel Watch, and partners—with local OAuth and zero token exposure.

18
TypeScript
MIT
View repository →

Agent-readiness scorecard for any MCP server: 10 checks, 0-100 score, actionable findings.

0
TypeScript
MIT
View repository →

Privacy-first, unofficial Oura MCP server for AI health, sleep, activity and heart-rate agents.

0
TypeScript
MIT
View repository →

Privacy-first unofficial Polar AccessLink v4 MCP server for AI health, sleep and training agents.

1
TypeScript
MIT
View repository →

Unofficial local-first MCP server for Samsung Health personal-data CSV/ZIP exports.

3
TypeScript
MIT
View repository →

Provider-neutral short-form AI video toolkit for agents: Sora, Gemini Veo, xAI/Grok, Seedance.

0
JavaScript
MIT
View repository →