Google Ads MCP Server

Explore performance, research keywords and prepare campaign changes from your MCP client.

Local serverstdioApache-2.0

What is the Google Ads MCP Server?

Google Ads is an MCP project maintained in the get-mcp-ads/google-ads-mcp-server repository. The maintainer describes its purpose as “Explore performance, research keywords and prepare campaign changes from your MCP client”. Read the project documentation for the complete scope.

Installation

The documented npm package is @getmcpads/google-ads-mcp-server. The configuration below comes from the maintainer’s example; adapt its paths and account values to your environment.

Configuration values

The example declares GOOGLE_ADS_DEVELOPER_TOKEN, GOOGLE_ADS_CLIENT_ID, GOOGLE_ADS_CLIENT_SECRET, GOOGLE_ADS_REFRESH_TOKEN. Secret-looking values have been replaced with placeholders. Required and optional labels are shown only when the documentation states them.

Source

Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-09.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
google_ads_list_accountsList Google Ads customer accounts accessible with the current credentials.
google_ads_get_account_detailsGet detailed information for a specific Google Ads customer account.
google_ads_run_gaqlExecute a raw GAQL (Google Ads Query Language) query.
google_ads_get_insightsQuery Google Ads performance insights with intelligent query planning.
google_ads_get_campaignsList campaigns for a Google Ads account with status, budget, channel type, and bidding strategy.
google_ads_get_adgroupsList ad groups for a Google Ads account, optionally filtered by campaign.
google_ads_get_keyword_performanceGet keyword-level performance data from keyword_view resource.
google_ads_validate_queryValidate metric/dimension/resource compatibility BEFORE executing a query.
google_ads_health_checkRead-only connectivity check.
google_ads_get_account_hierarchyList accessible customers and, where possible, manager/client relationships from GAQL customer_client.
google_ads_get_conversion_actionsList conversion actions with status, type, category, primary/include-in-conversions flags, owner customer, and last activity dates when supported.
google_ads_get_change_eventsFetch recent change_event rows.
google_ads_get_recommendationsList Google Ads recommendations with type, resource, campaign/ad group links, dismissed state, and impact when supported.
google_ads_get_budgetsList campaign budgets with amount, status, delivery method, and recommended budget fields when supported.
google_ads_get_bidding_strategiesList portfolio bidding strategies.
google_ads_get_search_termsFetch search term performance from search_term_view or campaign_search_term_insight depending on reportType.
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.
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.
google_ads_get_simulationsRead-only planning/forecast query for campaign, ad group, or portfolio bidding simulations.
google_ads_get_paid_organic_search_termsRead-only paid/organic search terms report.
google_ads_get_shopping_productsRead-only Merchant Center product catalog/eligibility report via shopping_product.
google_ads_get_shopping_performanceRead-only Shopping performance report keyed by Merchant Center product dimensions.
google_ads_get_pmax_placementsRead-only Performance Max placement diagnostics from performance_max_placement_view.
google_ads_get_pmax_asset_diagnosticsRead-only Performance Max asset group diagnostics.
google_ads_list_image_assetsList the account's image asset library (FROM asset) with stable, publicly served full-size URLs on tpc.googlesyndication.com, dimensions, file size, and mime…
google_ads_list_video_assetsList the account's YouTube video assets (FROM asset) with derived watch, embed, and public thumbnail URLs.
google_ads_get_demand_gen_assetsList Demand Gen ads (video responsive, multi-asset, carousel) with their referenced creatives resolved: stable image URLs and YouTube video IDs with embed and…
google_ads_generate_keyword_historical_metricsGet Keyword Planner search-volume history for supplied keywords.
google_ads_generate_keyword_ideasDiscover Keyword Planner ideas from up to 20 seed keywords, a URL, keywords plus URL, or a whole site.
google_ads_generate_keyword_forecast_metricsForecast impressions, clicks, CTR, CPC, cost, conversions, and CPA for a temporary keyword campaign.
google_ads_search_fieldsSearch Google's live GoogleAdsField catalog.
google_ads_suggest_geo_targetsResolve up to 25 location names or geo target IDs to Google Ads geoTargetConstants.
google_ads_generate_ad_group_themesOrganize supplied keywords into existing Google Ads ad groups.
google_ads_run_readonly_rpcAdvanced read-only escape hatch for allowlisted Google Ads services outside GAQL: Audience Insights, Reach Planner, benchmarks, creator/trending insights…
google_ads_get_video_uploadRead the processing state and YouTube video ID of one Google Ads upload in the selected customer.
google_ads_upload_videoUpload MP4/WebM/QuickTime bytes (max 16 MiB) to the Google-managed YouTube channel for the selected ad account.
google_ads_remove_video_uploadRemove a video upload owned by the selected ad account.
google_ads_apply_planPreview, validate and atomically apply a Google Ads v25 build/change plan: campaigns, budgets, ad groups, RSA/Display/Demand Gen ads, image/text/YouTube…
google_ads_update_campaign_statusPause, re-enable or remove a Google Ads campaign.
google_ads_create_campaignCreate a Google Ads campaign.
google_ads_update_campaign_budgetChange the daily budget of a Google Ads campaign.
google_ads_rename_campaignRename a Google Ads campaign.
google_ads_update_campaign_scheduleChange the start or end date of a Google Ads campaign.
google_ads_update_adgroup_statusPause, re-enable or remove a Google Ads ad group.
google_ads_update_adgroup_bidChange the default CPC bid of a Google Ads ad group.
URIContents

How to install the Google Ads MCP Server

{
  "mcpServers": {
    "google-ads": {
      "command": "npx",
      "args": [
        "-y",
        "@getmcpads/google-ads-mcp-server"
      ],
      "env": {
        "GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_GOOGLE_ADS_DEVELOPER_TOKEN",
        "GOOGLE_ADS_CLIENT_ID": "your-client-id",
        "GOOGLE_ADS_CLIENT_SECRET": "YOUR_GOOGLE_ADS_CLIENT_SECRET",
        "GOOGLE_ADS_REFRESH_TOKEN": "YOUR_GOOGLE_ADS_REFRESH_TOKEN"
      }
    }
  }
}

From the project documentation. Replace placeholders and example paths before connecting.

Configuration

VariableDescriptionRequired
GOOGLE_ADS_DEVELOPER_TOKENDeclared in the maintainer’s client configuration.Yes
GOOGLE_ADS_CLIENT_IDDeclared in the maintainer’s client configuration.Yes
GOOGLE_ADS_CLIENT_SECRETDeclared in the maintainer’s client configuration.Yes
GOOGLE_ADS_REFRESH_TOKENDeclared in the maintainer’s client configuration.Yes