google-ads-mcp
google-ads-mcp
Google Ads用MCPサーバー — Claudeから支出効率、インプレッションシェア、アセットパフォーマンスを診断します。
キャンペーン、キーワード、RSA、アセット、オーディエンス、地域/デバイスの分割、インプレッションシェア、オークションインサイト、予算ペース管理にわたる22のツールに加え、生のGAQLを実行できるエスケープハッチを備えています。単なるダッシュボード形式の「キャンペーン一覧」クエリではなく、実際の診断を行うB2Bリスティング広告チームや代理店向けに構築されています。
なぜこれが必要なのか
ほとんどのGoogle Ads MCPサーバーは「キャンペーン一覧と基本指標」を表示するだけで止まってしまいます。このサーバーは、リスティング広告チームが実際に抱える疑問を解決します。どのRSAアセットがLOWとラベル付けされているため交換すべきか、どのキーワードがコンバージョンゼロで予算を浪費しているか、オークションインサイトで誰に対してインプレッションシェアを失っているか、モバイルとデスクトップのCPAの差はどれくらいか、現在どのキャンペーンが予算制限にかかっているか。これらはパフォーマンスを改善するために調整すべき要素であり、本サーバーではすべてがファーストクラスのツールとして提供されます。
公式の googleads/google-ads-mcp との差別化点:RSAアセットのパフォーマンスラベル、オークションインサイト、インプレッションシェア分析、地域/デバイスの分割、オーディエンスのターゲティング調査、予算ペース管理を提供します。
Related MCP server: adops-mcp
プロンプト例
インストール後、Claudeに以下のように尋ねることができます:
「今月の競合他社に対するインプレッションシェアはどうですか?最も頻繁に負けている相手は誰ですか?」
「パフォーマンスラベルがLOWのRSAアセットをすべて表示して、交換できるようにしてください。」
「過去30日間で、コンバージョンゼロで最も支出が多いキーワードはどれですか?」
「全キャンペーンにおけるモバイルとデスクトップのCPAの差はどれくらいですか?」
「現在、予算制限にかかっているキャンペーンはありますか?インプレッションシェア損失率(予算)を表示してください。」
「リマーケティングオーディエンスを一覧表示し、検索広告でターゲット設定できる十分なサイズのものがあるか教えてください。」
デモ
🎥 解説動画近日公開 — Claudeから60秒以内に無駄な支出を診断する方法。
機能
カテゴリ | ツール |
アカウント | アカウント一覧、アカウント情報 |
キャンペーン | キャンペーン一覧、キャンペーンパフォーマンス、広告グループパフォーマンス |
キーワード | キーワードパフォーマンス、検索語句レポート |
コンバージョン | キャンペーン別コンバージョン、コンバージョンアクション一覧 |
広告コピー / RSA | 広告の有効性付きRSA一覧、RSAアセットパフォーマンスラベル |
アセット / 拡張機能 | アカウントアセット一覧、キャンペーンアセット |
オーディエンス | ユーザーリスト一覧、キャンペーンオーディエンスのターゲティング |
パフォーマンス | 地域パフォーマンス、デバイスパフォーマンス、インプレッションシェア、オークションインサイト |
予算 | 予算一覧、予算ペース管理 |
エスケープハッチ | 生のGAQLクエリ |
前提条件
Node.js 20以上
Google Adsデベロッパー・トークン (こちらから申請)
Google Cloud ConsoleからのOAuth 2.0認証情報(クライアントID + シークレット)
https://www.googleapis.com/auth/adwordsスコープを持つリフレッシュトークン
環境変数
変数 | 必須 | 説明 |
| はい | Google Adsデベロッパー・トークン |
| はい | OAuth 2.0クライアントID |
| はい | OAuth 2.0クライアントシークレット |
| はい | OAuth 2.0リフレッシュトークン |
| はい* | デフォルトの顧客ID(ハイフンなし)。ツール呼び出しごとに上書き可能。 |
| いいえ | MCCアクセス用のマネージャーアカウントID |
使用方法
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ツールリファレンス
ツール | 説明 |
| 生のGAQLクエリを実行 — カスタムレポート用のエスケープハッチ |
| アクセス可能なすべてのGoogle Adsアカウントを一覧表示 |
| 名前、通貨、タイムゾーン、マネージャーフラグ、ステータス |
| ステータス、チャネルタイプ、入札戦略を含むキャンペーン一覧 |
| インプレッション数、クリック数、CTR、CPC、コスト、コンバージョン数、CPA、ROAS |
| キャンペーンコンテキストを含む広告グループ指標 |
| マッチタイプ、品質スコア、コスト、コンバージョン数を含むキーワード |
| 広告をトリガーした実際のユーザー検索語句 — 除外キーワードや機会の発見 |
| キャンペーンごとのコンバージョン × コンバージョンアクション |
| カテゴリ、タイプ、カウント方法を含むすべてのコンバージョンアクション |
| すべての見出し、説明文、広告の有効性、承認ステータスを含むRSA一覧 |
| アセットごとのパフォーマンスラベル: BEST / GOOD / LOW / PENDING / LEARNING |
| アカウントアセット: サイトリンク、コールアウト、構造化スニペット、画像 |
| フィールドタイプ付きでキャンペーンにリンクされたアセット |
| サイズと一致率を含むユーザーリスト(リマーケティング、顧客リスト) |
| 入札単価調整と包含/除外設定を含むキャンペーンのオーディエンス |
| 国、地域、都市別のパフォーマンス |
| MOBILE / DESKTOP / TABLET別に分割されたコスト、コンバージョン、CPA |
| キャンペーンごとの検索インプレッションシェア、インプレッションシェア損失率(予算)、インプレッションシェア損失率(ランク) |
| 競合他社に対するインプレッションシェア、重複率、優位表示シェア |
| すべての予算: 金額、配信方法、期間、推奨予算 |
| 利用率(%)を含むキャンペーンごとのコスト対予算 |
ソースからビルド
git clone https://github.com/ZLeventer/google-ads-mcp.git
cd google-ads-mcp
npm install
npm run buildライセンス
MIT — Copyright (c) 2026 Zach Leventer
Available Tools
22 toolsgads_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_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
Scored across 22 tools
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.
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.
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.
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
Related MCP Connectors
Google Ads MCP server: 17 tools for reporting, campaigns, keywords, assets. Writes preview first.
Google Ads MCP server — manage campaigns, keywords, and metrics.
Microsoft Ads MCP server: 11 tools for search, PMax, Google Ads imports. Read-only by default.
Hosted MCP server for marketing agencies: connect Google Ads, GA4, Search Console, Meta, LinkedIn and more to Claude or ChatGPT. Pull reports and make changes via OAuth login, no setup.
Related MCP Servers
AlicenseNot gradedqualityFmaintenanceMCP 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.2MIT- AlicenseAqualityCmaintenanceCross-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.1792 npmMIT
- AlicenseNot gradedqualityDmaintenanceA 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.2Apache 2.0
- AlicenseNot gradedqualityDmaintenanceMCP 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