Skip to content
VS Code

google ads mcp for VS Code

io.github.davidmosiah/google-ads-mcp

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

client:VS Code transport:stdio runtime:npm

Install google ads mcp in VS Code

.vscode/mcp.json

{
  "inputs": [
    {
      "type": "promptString",
      "id": "google-ads-developer-token",
      "description": "GOOGLE_ADS_DEVELOPER_TOKEN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "google-ads-client-id",
      "description": "GOOGLE_ADS_CLIENT_ID",
      "password": true
    },
    {
      "type": "promptString",
      "id": "google-ads-client-secret",
      "description": "GOOGLE_ADS_CLIENT_SECRET",
      "password": true
    },
    {
      "type": "promptString",
      "id": "google-ads-login-customer-id",
      "description": "GOOGLE_ADS_LOGIN_CUSTOMER_ID",
      "password": true
    },
    {
      "type": "promptString",
      "id": "google-ads-redirect-uri",
      "description": "GOOGLE_ADS_REDIRECT_URI",
      "password": true
    },
    {
      "type": "promptString",
      "id": "google-ads-token-path",
      "description": "GOOGLE_ADS_TOKEN_PATH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "google-ads-privacy-mode",
      "description": "GOOGLE_ADS_PRIVACY_MODE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "google-ads-allow-mutations",
      "description": "GOOGLE_ADS_ALLOW_MUTATIONS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "google-ads-cache",
      "description": "GOOGLE_ADS_CACHE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "google-ads-cache-path",
      "description": "GOOGLE_ADS_CACHE_PATH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "google-ads-cache-ttl-seconds",
      "description": "GOOGLE_ADS_CACHE_TTL_SECONDS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "google-ads-no-retry",
      "description": "GOOGLE_ADS_NO_RETRY",
      "password": true
    }
  ],
  "servers": {
    "google-ads-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "google-ads-mcp-unofficial"
      ],
      "env": {
        "GOOGLE_ADS_DEVELOPER_TOKEN": "${input:google-ads-developer-token}",
        "GOOGLE_ADS_CLIENT_ID": "${input:google-ads-client-id}",
        "GOOGLE_ADS_CLIENT_SECRET": "${input:google-ads-client-secret}",
        "GOOGLE_ADS_LOGIN_CUSTOMER_ID": "${input:google-ads-login-customer-id}",
        "GOOGLE_ADS_REDIRECT_URI": "${input:google-ads-redirect-uri}",
        "GOOGLE_ADS_TOKEN_PATH": "${input:google-ads-token-path}",
        "GOOGLE_ADS_PRIVACY_MODE": "${input:google-ads-privacy-mode}",
        "GOOGLE_ADS_ALLOW_MUTATIONS": "${input:google-ads-allow-mutations}",
        "GOOGLE_ADS_CACHE": "${input:google-ads-cache}",
        "GOOGLE_ADS_CACHE_PATH": "${input:google-ads-cache-path}",
        "GOOGLE_ADS_CACHE_TTL_SECONDS": "${input:google-ads-cache-ttl-seconds}",
        "GOOGLE_ADS_NO_RETRY": "${input:google-ads-no-retry}"
      }
    }
  }
}

VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs

google ads mcp in other clients