Skip to main content
Glama
google-ads-mcp

google-ads-mcp

by ZLeventer

google-ads-mcp

npm version npm downloads glama score Node.js MCP License: MIT

MCP-Server für Google Ads — analysieren Sie Ausgabeneffizienz, Impression Share und Asset-Performance direkt aus Claude.

22 Tools für Kampagnen, Keywords, RSAs, Assets, Zielgruppen, Geo-/Geräte-Aufschlüsselungen, Impression Share, Auktionsdaten und Budget-Pacing — plus ein „Notausgang“ für rohe GAQL-Abfragen. Entwickelt für B2B-Paid-Search-Teams und Agenturen, die echte Analysen durchführen, statt nur Dashboard-artige „Liste meine Kampagnen“-Abfragen zu nutzen.


Warum gibt es dieses Tool?

Die meisten Google Ads MCP-Server hören bei „Kampagnen auflisten + grundlegende Metriken“ auf. Dieses Tool geht den Fragen nach, die Paid-Search-Teams tatsächlich stellen: Welche RSA-Assets sind als LOW markiert, damit ich sie ersetzen kann?, Welche Keywords verbrennen Budget ohne Conversions?, Gegen wen verliere ich Impression Share laut Auktionsdaten?, Wie groß ist die CPA-Lücke zwischen Mobil und Desktop?, Welche Kampagnen sind aktuell budgetlimitiert?. Das sind die Hebel, mit denen Sie die Performance verbessern — und sie sind hier alle als erstklassige Tools verfügbar.

Unterscheidet sich vom offiziellen googleads/google-ads-mcp durch: RSA-Asset-Performance-Labels, Auktionsdaten, Impression-Share-Analyse, Geo-/Geräte-Aufschlüsselungen, Überprüfung des Zielgruppen-Targetings und Budget-Pacing.


Related MCP server: adops-mcp

Beispiel-Prompts

Sobald installiert, können Sie Claude Dinge fragen wie:

  • „Wie ist mein Impression Share im Vergleich zu Wettbewerbern diesen Monat? Gegen wen verliere ich am häufigsten?“

  • „Zeige alle RSA-Assets mit LOW-Performance-Label, damit ich sie ersetzen kann.“

  • „Welche Keywords haben in den letzten 30 Tagen am meisten Budget verbraucht, ohne Conversions zu erzielen?“

  • „Wie groß ist der CPA-Unterschied zwischen Mobil und Desktop über alle Kampagnen hinweg?“

  • „Sind aktuell Kampagnen budgetlimitiert? Zeige Lost IS (Budget).“

  • „Liste meine Remarketing-Zielgruppen auf und sage mir, welche groß genug sind, um sie in der Suche anzusprechen.“


Demo

🎥 Walkthrough-Video folgt in Kürze — Diagnose von verschwendetem Budget aus Claude in unter 60 Sekunden.


Funktionen

Kategorie

Tools

Konto

Konten auflisten, Kontoinformationen

Kampagnen

Kampagnen auflisten, Kampagnen-Performance, Anzeigengruppen-Performance

Keywords

Keyword-Performance, Suchbegriffbericht

Conversions

Conversions nach Kampagne, Conversion-Aktionen auflisten

Anzeigen-Copy / RSAs

RSAs mit Anzeigenstärke auflisten, RSA-Asset-Performance-Labels

Assets / Erweiterungen

Konto-Assets auflisten, Kampagnen-Assets

Zielgruppen

Nutzerlisten auflisten, Kampagnen-Zielgruppen-Targeting

Performance

Geo-Performance, Geräte-Performance, Impression Share, Auktionsdaten

Budget

Budgets auflisten, Budget-Pacing

Notausgang

Rohe GAQL-Abfrage


Voraussetzungen

  • Node.js 20+

  • Ein Google Ads Developer Token (hier beantragen)

  • OAuth 2.0-Anmeldedaten (Client ID + Secret) aus der Google Cloud Console

  • Ein Refresh-Token mit dem Scope https://www.googleapis.com/auth/adwords


Umgebungsvariablen

Variable

Erforderlich

Beschreibung

GOOGLE_ADS_DEVELOPER_TOKEN

Ja

Ihr Google Ads Developer Token

GOOGLE_ADS_CLIENT_ID

Ja

OAuth 2.0 Client ID

GOOGLE_ADS_CLIENT_SECRET

Ja

OAuth 2.0 Client Secret

GOOGLE_ADS_REFRESH_TOKEN

Ja

OAuth 2.0 Refresh Token

GOOGLE_ADS_CUSTOMER_ID

Ja*

Standard-Kunden-ID (ohne Bindestriche). Kann pro Tool-Aufruf überschrieben werden.

GOOGLE_ADS_LOGIN_CUSTOMER_ID

Nein

Manager-Konto-ID für MCC-Zugriff


Verwendung

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "google-ads": {
      "command": "npx",
      "args": ["-y", "google-ads-mcp"],
      "env": {
        "GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_TOKEN",
        "GOOGLE_ADS_CLIENT_ID": "YOUR_CLIENT_ID",
        "GOOGLE_ADS_CLIENT_SECRET": "YOUR_CLIENT_SECRET",
        "GOOGLE_ADS_REFRESH_TOKEN": "YOUR_REFRESH_TOKEN",
        "GOOGLE_ADS_CUSTOMER_ID": "1234567890"
      }
    }
  }
}

Claude Code

{
  "mcpServers": {
    "google-ads": {
      "command": "node",
      "args": ["/path/to/google-ads-mcp/dist/index.js"],
      "env": {
        "GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_TOKEN",
        "GOOGLE_ADS_CLIENT_ID": "YOUR_CLIENT_ID",
        "GOOGLE_ADS_CLIENT_SECRET": "YOUR_CLIENT_SECRET",
        "GOOGLE_ADS_REFRESH_TOKEN": "YOUR_REFRESH_TOKEN",
        "GOOGLE_ADS_CUSTOMER_ID": "1234567890"
      }
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "google-ads": {
      "command": "npx",
      "args": ["-y", "google-ads-mcp"],
      "env": {
        "GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_TOKEN",
        "GOOGLE_ADS_CLIENT_ID": "YOUR_CLIENT_ID",
        "GOOGLE_ADS_CLIENT_SECRET": "YOUR_CLIENT_SECRET",
        "GOOGLE_ADS_REFRESH_TOKEN": "YOUR_REFRESH_TOKEN",
        "GOOGLE_ADS_CUSTOMER_ID": "1234567890"
      }
    }
  }
}

Docker

docker build -t google-ads-mcp .
docker run --rm \
  -e GOOGLE_ADS_DEVELOPER_TOKEN=YOUR_TOKEN \
  -e GOOGLE_ADS_CLIENT_ID=YOUR_CLIENT_ID \
  -e GOOGLE_ADS_CLIENT_SECRET=YOUR_CLIENT_SECRET \
  -e GOOGLE_ADS_REFRESH_TOKEN=YOUR_REFRESH_TOKEN \
  -e GOOGLE_ADS_CUSTOMER_ID=1234567890 \
  google-ads-mcp

Tool-Referenz

Tool

Beschreibung

gads_run_gaql

Führt jede rohe GAQL-Abfrage aus — Notausgang für benutzerdefinierte Berichte

gads_list_accounts

Listet alle zugänglichen Google Ads-Konten auf

gads_account_info

Name, Währung, Zeitzone, Manager-Flag, Status

gads_list_campaigns

Kampagnen mit Status, Kanaltyp, Gebotsstrategie

gads_campaign_performance

Impressionen, Klicks, CTR, CPC, Kosten, Conversions, CPA, ROAS

gads_ad_group_performance

Anzeigengruppen-Metriken mit Kampagnenkontext

gads_keyword_performance

Keywords mit Match-Typ, Qualitätsfaktor, Kosten, Conversions

gads_search_terms_report

Tatsächliche Suchanfragen von Nutzern, die Anzeigen ausgelöst haben — finden Sie negative Keywords und Chancen

gads_conversions_by_campaign

Conversions × Conversion-Aktion pro Kampagne

gads_list_conversion_actions

Alle Conversion-Aktionen mit Kategorie, Typ, Zählmethode

gads_list_rsas

RSAs mit allen Schlagzeilen, Beschreibungen, Anzeigenstärke, Genehmigungsstatus

gads_rsa_asset_performance

Performance-Labels pro Asset: BEST / GOOD / LOW / PENDING / LEARNING

gads_list_assets

Konto-Assets: Sitelinks, Callouts, strukturierte Snippets, Bilder

gads_campaign_assets

Mit Kampagnen verknüpfte Assets mit Feldtyp

gads_list_audiences

Nutzerlisten (Remarketing, Customer Match) mit Größe und Match-Rate

gads_campaign_audience_targeting

Zielgruppen in Kampagnen mit Gebotsanpassungen und Ein-/Ausschluss

gads_geo_performance

Performance nach Land, Region und Stadt

gads_device_performance

Kosten, Conversions, CPA aufgeteilt nach MOBILE / DESKTOP / TABLET

gads_impression_share

Such-IS, Lost IS (Budget), Lost IS (Rang) pro Kampagne

gads_auction_insights

Impression Share, Überschneidungsrate, Outranking-Share gegenüber Wettbewerbern

gads_list_budgets

Alle Budgets: Betrag, Auslieferungsmethode, Zeitraum, empfohlenes Budget

gads_budget_pacing

Kosten vs. Budget pro Kampagne mit Auslastung in %


Aus Quellcode bauen

git clone https://github.com/ZLeventer/google-ads-mcp.git
cd google-ads-mcp
npm install
npm run build

Lizenz

MIT — Copyright (c) 2026 Zach Leventer

Available Tools

22 tools
gads_account_infoA

Get basic info for the current Google Ads account: name, currency, timezone, manager flag, status.

Inputs: customer_id.

gads_ad_group_performanceB

Ad group performance with campaign context. Optional campaign_id filter. Default last 28 days, enabled ad groups.

Inputs: start_date, end_date, customer_id, limit, +2 more.

gads_auction_insightsB

Auction Insights report: impression share, overlap rate, outranking share, top-of-page %, and absolute top % vs competitors. Optional campaign filter.

Inputs: customer_id, start_date, end_date, campaign_id.

gads_budget_pacingA

Cost vs budget per campaign for the specified period with utilization percentage. Flags over- and under-pacing campaigns. Default last 28 days.

Inputs: customer_id, start_date, end_date.

gads_campaign_assetsA

Assets linked to campaigns with field type and status. Shows which extensions are active on which campaigns.

Inputs: customer_id, campaign_id.

gads_campaign_audience_targetingA

Audiences attached to campaigns with targeting setting (observation vs targeting) and bid modifier. Shows both inclusion and exclusion lists.

Inputs: customer_id, campaign_id.

gads_campaign_performanceA

Campaign-level performance: impressions, clicks, CTR, avg CPC, cost, conversions, conv value, CPA, ROAS. Defaults to last 28 days, enabled campaigns, sorted by cost desc.

Inputs: start_date, end_date, customer_id, limit, +2 more.

gads_conversions_by_campaignB

Conversions and conversion value broken down by campaign × conversion action. Sorted by conversions desc. Default last 28 days.

Inputs: start_date, end_date, customer_id, limit.

gads_device_performanceA

Clicks, cost, CTR, conversions, and CPA split by MOBILE / DESKTOP / TABLET per campaign. Default last 28 days.

Inputs: customer_id, start_date, end_date, campaign_id.

gads_geo_performanceB

Performance broken down by geographic location (country, region, city). Surfaces top and bottom geo segments by cost and conversions.

Inputs: customer_id, start_date, end_date, campaign_id, +1 more.

gads_impression_shareA

Search Impression Share, Lost IS (Budget), and Lost IS (Rank) per campaign. Identifies whether budget or Quality Score/bid is limiting reach.

Inputs: customer_id, start_date, end_date.

gads_keyword_performanceA

Keyword-level performance with match type, quality score, clicks, cost, conversions. Filter by campaign_id or ad_group_id. Default last 28 days, enabled keywords.

Inputs: start_date, end_date, customer_id, limit, +3 more.

gads_list_accountsA

List all Google Ads customer accounts the authenticated user has access to. Useful for finding customer IDs.

Inputs: no named parameters.

gads_list_assetsB

List account-level assets: sitelinks, callouts, structured snippets, images, call extensions, and more. Filter by asset type.

Inputs: customer_id, asset_type, limit.

gads_list_audiencesB

List user lists (remarketing audiences, customer match lists) in the account with size, eligibility, and match rate.

Inputs: customer_id, limit.

gads_list_budgetsB

All campaign budgets with daily/total amount, delivery method (STANDARD/ACCELERATED), period, and whether a recommended budget exists.

Inputs: customer_id.

gads_list_campaignsB

List campaigns in the account with name, status, channel type, bidding strategy, and date range. Filter by status (default ENABLED).

Inputs: status, customer_id, limit.

gads_list_conversion_actionsC

List all conversion actions configured in the account: name, category, type, whether included in Conversions metric, counting type.

Inputs: customer_id, status.

gads_list_rsasB

List Responsive Search Ads with all headlines, descriptions, Ad Strength rating, and approval status. Filter by campaign or ad group.

Inputs: customer_id, campaign_id, ad_group_id, limit.

gads_rsa_asset_performanceA

Asset-level performance labels (BEST / GOOD / LOW / PENDING / LEARNING) for RSA headlines and descriptions. Identifies which assets to keep, test, or replace.

Inputs: customer_id, ad_group_id, date_range.

gads_run_gaqlA

Escape hatch: run any raw GAQL query against Google Ads. Use when preset tools don't cover the report shape you need. Docs: developers.google.com/google-ads/api/docs/query/overview

Inputs: query (required), customer_id.

gads_search_terms_reportA

Search terms that triggered ads (the actual user queries, not your keywords). Essential for finding wasted spend and negative keyword candidates. Default last 28 days.

Inputs: start_date, end_date, customer_id, limit, +2 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

    TDQS

    A3.6/5.0

    Scored across 22 tools

    Disambiguation5/5

    Each tool targets a distinct aspect of Google Ads (account info, campaign performance, keyword performance, asset management, etc.). Even related tools like campaign_performance and ad_group_performance are clearly differentiated by level. No two tools appear to serve the same purpose.

    Naming Consistency4/5

    All tools share the 'gads_' prefix and use lowercase with underscores. The naming follows a descriptive phrase pattern (e.g., gads_campaign_performance, gads_rsa_asset_performance). While not strictly verb_noun, the convention is consistent and readable.

    Tool Count5/5

    22 tools is well-scoped for a comprehensive Google Ads server. It covers listing entities, performance reports across dimensions, conversion analysis, budget pacing, auction insights, and an escape hatch. Each tool earns its place without overwhelming the user.

    Completeness4/5

    The tool set covers most common reporting and listing needs (campaigns, ad groups, keywords, assets, audiences, conversions, etc.). Missing write operations (create/update/delete) but these are often out of scope for a reporting-focused MCP server. The GAQL escape hatch compensates for any missing report shapes.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      F
      maintenance
      MCP server for managing Google Ads, Meta Ads, LinkedIn Ads, and TikTok Ads via AI. 210+ tools including account audits, wasted spend detection, and PMax insights.
      2
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      Cross-platform ad management MCP server for Google Ads and Meta Ads. Campaign analytics, A/B testing with z-test, anomaly detection, and budget reallocation. 15 tools, 60 tests.
      17
      92 npm
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      A comprehensive Google Ads MCP server providing ~47 tools for full read/write access to Google Ads accounts, including campaign management, ad creation, keyword management, and reporting.
      2
      Apache 2.0
    • A
      license
      Not graded
      quality
      D
      maintenance
      MCP server for managing Google Ads campaigns through the official Google Ads API, covering accounts, campaigns, budgets, keywords, search terms, and keyword ideas. It provides tools for both reading and mutating live ads data, such as pausing campaigns, updating budgets, and adding keywords.
      MIT