Google Ads

io.github.ZLeventer由 GitHub 帳號 ZLeventer 發布v1.0.1更新於 Oct 24, 2026

MCP server for Google Ads — 22 tools for spend diagnosis, impression share, and asset performance.

已驗證STDIO僅桌面資料與分析商業與電商

概覽

AI 產生的概覽

一個本機 MCP 伺服器,讓助理讀取 Google Ads 資料,用於花費診斷、曝光比重、競價洞察與素材成效分析。

可以做什麼
列出可存取的帳戶與帳戶詳細資料、廣告活動、廣告群組和預算,含預算節奏與使用率。檢視關鍵字成效、搜尋詞,以及依廣告活動或轉換動作統計的轉換。檢查回應式搜尋廣告、廣告強度和各素材的成效標籤,以及帳戶與廣告活動素材。檢視目標對象和廣告活動目標對象指定、地理與裝置拆分、曝光比重及與競爭對手的競價洞察。透過任意 GAQL 查詢作為自訂報表的備用管道。
適用情境
適合付費搜尋團隊和代理商,以對話方式診斷浪費的花費、預算受限、成效不佳的廣告素材或流失的曝光比重,而不必建置儀表板。當助理需要回答關於某個 Google Ads 帳戶的具體成效問題時最有用。
執行需求
透過 npx 或 Node.js 20 以上版本在本機執行,也可用 Docker 容器。需要 Google Ads 開發人員權杖、來自 Google Cloud Console 的 OAuth 2.0 用戶端 ID 和金鑰,以及具備 adwords 權限範圍的更新權杖,均以環境變數提供。必須提供預設客戶 ID,可在單次呼叫中覆寫;僅存取 MCC 下的帳戶時才需要管理員帳戶 ID。需要連線至 Google Ads 的網路存取。
安裝前請注意
需要長期有效的 Google Ads 憑證,包括更新權杖和開發人員權杖,儲存在本機設定中;能存取該設定的人即可查詢廣告帳戶。原始 GAQL 工具可執行憑證允許的任何查詢,應限定帳戶範圍並檢查助理送出的內容。廣告帳戶資料會隨對話傳送給模型供應商。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Google Ads,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

google-ads-mcp

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

MCP server for Google Ads — diagnose spend efficiency, impression share, and asset performance from Claude.

22 tools across campaigns, keywords, RSAs, assets, audiences, geo/device splits, impression share, auction insights, and budget pacing — plus a raw GAQL escape hatch. Built for B2B paid search teams and agencies running real diagnosis, not just dashboard-style "list my campaigns" queries.


Why this exists

Most Google Ads MCP servers stop at "list campaigns + basic metrics." This one goes after the questions paid search teams actually ask: which RSA assets are labeled LOW so I can replace them, which keywords burn budget with zero conversions, who am I losing impression share to in auction insights, what's my mobile vs. desktop CPA gap, which campaigns are budget-limited right now. Those are the levers you pull to fix performance — and they're all first-class tools here.

Differentiated from the official googleads/google-ads-mcp: ships RSA asset performance labels, auction insights, impression share analysis, geo/device splits, audience targeting inspection, and budget pacing.


Example prompts

Once installed, ask Claude things like:

  • "What's my impression share vs competitors this month? Who am I most often losing to?"
  • "Show all RSA assets with LOW performance labels so I can replace them."
  • "Which keywords are spending the most with zero conversions in the last 30 days?"
  • "What's my mobile vs. desktop CPA difference across all campaigns?"
  • "Are any campaigns budget-limited right now? Show Lost IS (Budget)."
  • "List my remarketing audiences and tell me which ones are large enough to target in Search."

Demo

🎥 Walkthrough video coming soon — diagnosing wasted spend from Claude in under 60 seconds.


Features

CategoryTools
AccountList accounts, account info
CampaignsList campaigns, campaign performance, ad group performance
KeywordsKeyword performance, search terms report
ConversionsConversions by campaign, list conversion actions
Ad Copy / RSAsList RSAs with Ad Strength, RSA asset performance labels
Assets / ExtensionsList account assets, campaign assets
AudiencesList user lists, campaign audience targeting
PerformanceGeo performance, device performance, impression share, auction insights
BudgetList budgets, budget pacing
Escape hatchRaw GAQL query

Prerequisites

  • Node.js 20+
  • A Google Ads Developer Token (apply here)
  • OAuth 2.0 credentials (Client ID + Secret) from Google Cloud Console
  • A refresh token with https://www.googleapis.com/auth/adwords scope

Environment variables

VariableRequiredDescription
GOOGLE_ADS_DEVELOPER_TOKENYesYour Google Ads developer token
GOOGLE_ADS_CLIENT_IDYesOAuth 2.0 client ID
GOOGLE_ADS_CLIENT_SECRETYesOAuth 2.0 client secret
GOOGLE_ADS_REFRESH_TOKENYesOAuth 2.0 refresh token
GOOGLE_ADS_CUSTOMER_IDYes*Default customer ID (no dashes). Can be overridden per tool call.
GOOGLE_ADS_LOGIN_CUSTOMER_IDNoManager account ID for MCC access

Usage

Claude Desktop (claude_desktop_config.json)

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

json
{  "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)

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

bash
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

Tools reference

ToolDescription
gads_run_gaqlRun any raw GAQL query — escape hatch for custom reports
gads_list_accountsList all accessible Google Ads accounts
gads_account_infoName, currency, timezone, manager flag, status
gads_list_campaignsCampaigns with status, channel type, bidding strategy
gads_campaign_performanceImpressions, clicks, CTR, CPC, cost, conversions, CPA, ROAS
gads_ad_group_performanceAd group metrics with campaign context
gads_keyword_performanceKeywords with match type, quality score, cost, conversions
gads_search_terms_reportActual user queries that triggered ads — find negatives and opportunities
gads_conversions_by_campaignConversions × conversion action per campaign
gads_list_conversion_actionsAll conversion actions with category, type, counting method
gads_list_rsasRSAs with all headlines, descriptions, Ad Strength, approval status
gads_rsa_asset_performancePer-asset performance labels: BEST / GOOD / LOW / PENDING / LEARNING
gads_list_assetsAccount assets: sitelinks, callouts, structured snippets, images
gads_campaign_assetsAssets linked to campaigns with field type
gads_list_audiencesUser lists (remarketing, customer match) with size and match rate
gads_campaign_audience_targetingAudiences on campaigns with bid modifiers and inclusion/exclusion
gads_geo_performancePerformance by country, region, and city
gads_device_performanceCost, conversions, CPA split by MOBILE / DESKTOP / TABLET
gads_impression_shareSearch IS, Lost IS (Budget), Lost IS (Rank) per campaign
gads_auction_insightsImpression share, overlap rate, outranking share vs competitors
gads_list_budgetsAll budgets: amount, delivery method, period, recommended budget
gads_budget_pacingCost vs budget per campaign with utilization %

Build from source

bash
git clone https://github.com/ZLeventer/google-ads-mcp.gitcd google-ads-mcpnpm installnpm run build

License

MIT — Copyright (c) 2026 Zach Leventer

來源:README.md,提交 ceaa0dc

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.0.1最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分