@getmcpads/google-ads-mcp-server

MCPcommunity
v1.0.2GetMCPAdsApache-2.0Updated 3d agonpmGitHub

Open-source MCP server for the Google Ads API. 31 read tools and 7 write tools that preview before they apply, full Keyword Planner, Reach Planner and GAQL access. Self-hosted, bring your own credentials.

Works in
ClaudeCursorCopilotGemini

Inferred from the transports this listing declares (stdio). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.

Automatically indexed from public sources. Not yet verified by the developer on Forge.Claim this listing →
52Downloads/wk
3d agoLast update
Needs 3 credentials before it runs
  • GOOGLE_ADS_DEVELOPER_TOKENAPI keyrequired

    Google Ads API developer token, Basic Access or above.

  • GOOGLE_ADS_CLIENT_SECRETOAuth apprequired

    OAuth client secret.

  • GOOGLE_ADS_REFRESH_TOKENOAuth apprequired

    OAuth refresh token.

Declared by the author in the official MCP registry. Forge does not store, broker, or ever see these values — the config below is scaffolded with placeholders you fill in locally.

Package
AuthorGetMCPAds
LicenseApache-2.0
Version1.0.2
Sourcenpm+mcp-registry
Trust Status
B
60/100Good
Listed in Forge index+10/10
Publisher identity verified+0/20
Publisher: run `forge publish` from the package repo to claim ownership
Ed25519 publish signature+0/5
Included automatically when the publisher runs `forge publish`
Domain verification+0/5
Publisher: host /.well-known/forge.json on the package homepage with { "publisher": "<github-login>" }
npm Trusted Publishing (Sigstore)+0/5
Publish from GitHub Actions with --provenance so the attestation binds this package to this repo
npm maintainer match+0/5
Earned once your identity is verified above and that login is an npm maintainer of this package
CVE scan · clean+30/30
Static analysis · clean+20/20
Paste into Claude Code, Cursor, or any AI assistant to fix all gaps
StatusCommunity-indexed
PublisherUnverified
SignatureUnsigned
Domain
Provenance
Dependencies✓ 60 resolved+ · none vulnerable
Tool surface36 tools · 1 privileged
Security scan✓ Cleanv1.0.2 · 2d agoHow well does this scan work?
EvalsNone
IndexedAug 31, 2026

Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.

Tools

36 tools · 1 privileged
Statically extracted from the published packagev1.0.2 · 2d ago

Read out of the source npm actually ships, at scan time. The package was never executed. Tools registered dynamically at runtime, or hidden inside bundled or minified code, can be missed — so this is a floor on the tool surface, not a complete census of it.

google_ads_run_readonly_rpcAdvanced read-only escape hatch for allowlisted Google Ads services outside GAQL: Audience Insights, Reach Planner, benchmarks, creator/trending insights, targeting suggestions, Smart Campaign suggestions, identity verification, invoices, and payments accounts. The operation is an enum; arbitrary p…

Advanced read-only escape hatch for allowlisted Google Ads services outside GAQL: Audience Insights, Reach Planner, benchmarks, creator/trending insights, targeting suggestions, Smart Campaign suggestions, identity verification, invoices, and payments accounts. The operation is an enum; arbitrary p…

No input schema was published for this tool.

google_ads_generate_keyword_historical_metricsGet Keyword Planner search-volume history for supplied keywords. Returns average monthly searches, monthly volumes (up to 48 months), latest volume, computed 3-month and YoY changes, competition, CPC/bid ranges, close variants, and optional device totals. This is a read-only planless RPC.

Get Keyword Planner search-volume history for supplied keywords. Returns average monthly searches, monthly volumes (up to 48 months), latest volume, computed 3-month and YoY changes, competition, CPC/bid ranges, close variants, and optional device totals. This is a read-only planless RPC.

No input schema was published for this tool.

google_ads_generate_keyword_ideasDiscover Keyword Planner ideas from up to 20 seed keywords, a URL, keywords plus URL, or a whole site. Returns historical volume, monthly trends, computed 3-month/YoY changes, competition, bids, close variants, optional concepts, and pagination. Read-only; no plan is saved.

Discover Keyword Planner ideas from up to 20 seed keywords, a URL, keywords plus URL, or a whole site. Returns historical volume, monthly trends, computed 3-month/YoY changes, competition, bids, close variants, optional concepts, and pagination. Read-only; no plan is saved.

No input schema was published for this tool.

google_ads_generate_keyword_forecast_metricsForecast impressions, clicks, CTR, CPC, cost, conversions, and CPA for a temporary keyword campaign. Supports targeting, negatives, match type, three bidding strategies, explicit future dates, and an optional independent per-keyword breakdown. This read-only planless RPC does not create a campaign…

Forecast impressions, clicks, CTR, CPC, cost, conversions, and CPA for a temporary keyword campaign. Supports targeting, negatives, match type, three bidding strategies, explicit future dates, and an optional independent per-keyword breakdown. This read-only planless RPC does not create a campaign…

No input schema was published for this tool.

google_ads_search_fieldsSearch Google's live GoogleAdsField catalog. Discovers every queryable GAQL resource, attribute, segment, metric, enum value, and selectable-with compatibility relationship. Read-only and useful before a raw GAQL query.

Search Google's live GoogleAdsField catalog. Discovers every queryable GAQL resource, attribute, segment, metric, enum value, and selectable-with compatibility relationship. Read-only and useful before a raw GAQL query.

No input schema was published for this tool.

google_ads_suggest_geo_targetsResolve up to 25 location names or geo target IDs to Google Ads geoTargetConstants. Returns criterion IDs, canonical names, target types, status, parents, locale, and approximate reach. Read-only.

Resolve up to 25 location names or geo target IDs to Google Ads geoTargetConstants. Returns criterion IDs, canonical names, target types, status, parents, locale, and approximate reach. Read-only.

No input schema was published for this tool.

google_ads_generate_ad_group_themesOrganize supplied keywords into existing Google Ads ad groups. Returns suggested ad group/campaign pairings, normalized keyword text, and suggested match type without creating or editing keywords. Read-only Keyword Planner RPC.

Organize supplied keywords into existing Google Ads ad groups. Returns suggested ad group/campaign pairings, normalized keyword text, and suggested match type without creating or editing keywords. Read-only Keyword Planner RPC.

No input schema was published for this tool.

google_ads_list_accountsList Google Ads customer accounts accessible with the current credentials. If an accessible customer is a manager account, also attempts to include enabled child accounts from customer_client.

List Google Ads customer accounts accessible with the current credentials. If an accessible customer is a manager account, also attempts to include enabled child accounts from customer_client.

No input schema was published for this tool.

google_ads_get_account_detailsGet detailed information for a specific Google Ads customer account.

Get detailed information for a specific Google Ads customer account.

No input schema was published for this tool.

google_ads_run_gaqlExecute a raw GAQL (Google Ads Query Language) query. Full flexibility for any reporting need. Example: SELECT campaign.name, metrics.impressions FROM campaign WHERE campaign.status = 'ENABLED' AND segments.date DURING LAST_30_DAYS ORDER BY metrics.impressions DESC LIMIT 100

Execute a raw GAQL (Google Ads Query Language) query. Full flexibility for any reporting need. Example: SELECT campaign.name, metrics.impressions FROM campaign WHERE campaign.status = 'ENABLED' AND segments.date DURING LAST_30_DAYS ORDER BY metrics.impressions DESC LIMIT 100

No input schema was published for this tool.

google_ads_get_insightsQuery Google Ads performance insights with intelligent query planning. Auto-generates GAQL, handles metric/segment incompatibilities by splitting queries. Use google-ads://metrics for available metrics, google-ads://dimensions for dimensions.

Query Google Ads performance insights with intelligent query planning. Auto-generates GAQL, handles metric/segment incompatibilities by splitting queries. Use google-ads://metrics for available metrics, google-ads://dimensions for dimensions.

No input schema was published for this tool.

google_ads_get_campaignsList campaigns for a Google Ads account with status, budget, channel type, and bidding strategy.

List campaigns for a Google Ads account with status, budget, channel type, and bidding strategy.

No input schema was published for this tool.

google_ads_get_adgroupsList ad groups for a Google Ads account, optionally filtered by campaign.

List ad groups for a Google Ads account, optionally filtered by campaign.

No input schema was published for this tool.

google_ads_get_keyword_performanceGet keyword-level performance data from keyword_view resource. Shows quality score, impressions, clicks, cost.

Get keyword-level performance data from keyword_view resource. Shows quality score, impressions, clicks, cost.

No input schema was published for this tool.

google_ads_validate_queryValidate metric/dimension/resource compatibility BEFORE executing a query. Checks segment restrictions and resource availability.

Validate metric/dimension/resource compatibility BEFORE executing a query. Checks segment restrictions and resource availability.

No input schema was published for this tool.

google_ads_health_checkRead-only connectivity check. Verifies credential presence, Google Ads API access, login customer visibility, API version, and actionable warnings without returning secrets.

Read-only connectivity check. Verifies credential presence, Google Ads API access, login customer visibility, API version, and actionable warnings without returning secrets.

No input schema was published for this tool.

google_ads_get_account_hierarchyList accessible customers and, where possible, manager/client relationships from GAQL customer_client. Falls back to accessible customers if hierarchy queries are unavailable.

List accessible customers and, where possible, manager/client relationships from GAQL customer_client. Falls back to accessible customers if hierarchy queries are unavailable.

No input schema was published for this tool.

google_ads_get_conversion_actionsList conversion actions with status, type, category, primary/include-in-conversions flags, owner customer, and last activity dates when supported.

List conversion actions with status, type, category, primary/include-in-conversions flags, owner customer, and last activity dates when supported.

No input schema was published for this tool.

google_ads_get_change_eventsFetch recent change_event rows. Enforces Google Ads constraints: date window within the last 30 days and LIMIT <= 10000.

Fetch recent change_event rows. Enforces Google Ads constraints: date window within the last 30 days and LIMIT <= 10000.

No input schema was published for this tool.

google_ads_get_recommendationsList Google Ads recommendations with type, resource, campaign/ad group links, dismissed state, and impact when supported.

List Google Ads recommendations with type, resource, campaign/ad group links, dismissed state, and impact when supported.

No input schema was published for this tool.

google_ads_get_budgetsList campaign budgets with amount, status, delivery method, and recommended budget fields when supported.

List campaign budgets with amount, status, delivery method, and recommended budget fields when supported.

No input schema was published for this tool.

google_ads_get_bidding_strategiesList portfolio bidding strategies. Includes metrics only when startDate/endDate are provided; otherwise returns structure only.

List portfolio bidding strategies. Includes metrics only when startDate/endDate are provided; otherwise returns structure only.

No input schema was published for this tool.

google_ads_get_search_termsFetch search term performance from search_term_view or campaign_search_term_insight depending on reportType.

Fetch search term performance from search_term_view or campaign_search_term_insight depending on reportType.

No input schema was published for this tool.

google_ads_get_landing_pagesFetch landing_page_view performance with final URL, campaign/ad group context, traffic, conversion, and landing-page quality metrics when supported.

Fetch landing_page_view performance with final URL, campaign/ad group context, traffic, conversion, and landing-page quality metrics when supported.

No input schema was published for this tool.

google_ads_get_pmax_assetsList Performance Max asset group assets from asset_group_asset with asset group/campaign context and optional date-range performance metrics.

List Performance Max asset group assets from asset_group_asset with asset group/campaign context and optional date-range performance metrics.

No input schema was published for this tool.

google_ads_get_simulationsRead-only planning/forecast query for campaign, ad group, or portfolio bidding simulations. Returns simulation metadata and projected point lists when available, with a metadata fallback.

Read-only planning/forecast query for campaign, ad group, or portfolio bidding simulations. Returns simulation metadata and projected point lists when available, with a metadata fallback.

No input schema was published for this tool.

google_ads_get_paid_organic_search_termsRead-only paid/organic search terms report. Uses paid_organic_search_term_view when available and falls back to paid-only search_term_view if organic fields are unavailable.

Read-only paid/organic search terms report. Uses paid_organic_search_term_view when available and falls back to paid-only search_term_view if organic fields are unavailable.

No input schema was published for this tool.

google_ads_get_shopping_productsRead-only Merchant Center product catalog/eligibility report via shopping_product. Supports account, campaign, and ad group scopes with performance metrics when the account has Shopping/PMax e-commerce data.

Read-only Merchant Center product catalog/eligibility report via shopping_product. Supports account, campaign, and ad group scopes with performance metrics when the account has Shopping/PMax e-commerce data.

No input schema was published for this tool.

google_ads_get_shopping_performanceRead-only Shopping performance report keyed by Merchant Center product dimensions. Useful for joining spend/conversions to merchant ID, item ID, title, brand, feed label, and custom labels.

Read-only Shopping performance report keyed by Merchant Center product dimensions. Useful for joining spend/conversions to merchant ID, item ID, title, brand, feed label, and custom labels.

No input schema was published for this tool.

google_ads_get_pmax_placementsRead-only Performance Max placement diagnostics from performance_max_placement_view. Returns placement type, display name, target URL, campaign context, and impressions only.

Read-only Performance Max placement diagnostics from performance_max_placement_view. Returns placement type, display name, target URL, campaign context, and impressions only.

No input schema was published for this tool.

google_ads_get_pmax_asset_diagnosticsRead-only Performance Max asset group diagnostics. Returns ad strength, asset coverage action items, primary status reasons, optional performance metrics, and optional top asset combinations.

Read-only Performance Max asset group diagnostics. Returns ad strength, asset coverage action items, primary status reasons, optional performance metrics, and optional top asset combinations.

No input schema was published for this tool.

google_ads_rename_campaignprivilegedRename a Google Ads campaign. The name is the only thing that changes: delivery, budget and targeting are untouched. Previews by default.

Rename a Google Ads campaign. The name is the only thing that changes: delivery, budget and targeting are untouched. Previews by default.

No input schema was published for this tool.

google_ads_create_campaignCreate a Google Ads campaign. It is always created PAUSED and there is no option to create it active: someone has to look at it before it spends. Creates the campaign budget too. Previews by default.

Create a Google Ads campaign. It is always created PAUSED and there is no option to create it active: someone has to look at it before it spends. Creates the campaign budget too. Previews by default.

No input schema was published for this tool.

google_ads_update_campaign_budgetChange the daily budget of a Google Ads campaign. The amount is in the account currency (12.50 for 12.50 EUR). Previews by default.

Change the daily budget of a Google Ads campaign. The amount is in the account currency (12.50 for 12.50 EUR). Previews by default.

No input schema was published for this tool.

google_ads_update_adgroup_bidNo description published

This tool published no description. Forge does not invent one.

google_ads_update_campaign_scheduleNo description published

This tool published no description. Forge does not invent one.

34 of 36 tools published a description.

Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.

About

Open-source MCP server for the Google Ads API. 31 read tools and 7 write tools that preview before they apply, full Keyword Planner, Reach Planner and GAQL access. Self-hosted, bring your own credentials.

Keywords
mcpmcp-servermodel-context-protocolgoogle-adsgoogle-ads-apigaqlkeyword-planneradvertisingmarketing-analyticsclaudechatgptcursorai-agent
Alternatives
Comparing tool surfaces…

Dependency tree

What one Forge scan resolved from npm metadata on 2026-08-31 — observed resolution, not a publisher declaration.

60 packages resolved · 2 direct · none carrying advisories Resolution stops at depth 4 and 60 packages.

The crawl stopped at the depth-4 limit. Anything below that level was never resolved.

The crawl stopped at the 60-package limit. The rest of the tree was never resolved.

36 more resolved packages are not drawn here (display cap: 24). Every dependency carrying an advisory is drawn regardless of the cap. Full inventory (CycloneDX SBOM)

Declared but not resolved

54 declared dependencies never landed in the tree. They are missing from Forge's resolution, not from the package.

+42 more not listed. The counts by reason above cover all of them.

Not followed: peerDependencies. This tree covers runtime dependencies only, so anything those pull in was never resolved.

Topics

Related in analytics & dashboards