Skip to main content
Glama
get-mcp-ads

Google Ads by Get MCP Ads

google ads generate keyword forecast metrics

google_ads_generate_keyword_forecast_metrics
Read-onlyIdempotent

Forecast clicks, CPC, cost, conversions, and CPA for a temporary keyword campaign using location, language, match type, bidding, and date settings without creating a live campaign or saved plan.

Instructions

Forecast clicks, CPC, cost, conversions, and CPA for a temporary keyword campaign. Supports location and language targeting, 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 or saved plan.

Input Schema

NameRequiredDescriptionDefault
endDateNoOptional inclusive forecast end YYYY-MM-DD, no more than one year ahead; supply with startDate
keywordsYesKeyword phrases to analyze; use the language and market of the intended audience.
matchTypeNoGoogle Ads keyword match type for the forecast.BROAD
maxCpcBidNoBid in standard account-currency units; required for MANUAL_CPC
startDateNoOptional inclusive future forecast start YYYY-MM-DD; supply with endDate
customerIdYesGoogle Ads serving customer ID; use a relevant client account for better estimates
dailyBudgetNoDaily amount in standard currency units; required for maximize strategies and optional for MANUAL_CPC
languageIdsNoGoogle Ads language constant IDs for the intended audience.
currencyCodeNoOptional ISO 4217 conversion currency; account currency is used by default
geoTargetIdsNoGoogle Ads geo-target constant IDs for the intended locations.
biddingStrategyNoSupported bidding strategy for this temporary forecast. The request does not create a live campaign.MANUAL_CPC
maxCpcBidCeilingNoOptional standard-currency CPC ceiling for MAXIMIZE_CLICKS
keywordBreakdownLimitNoSafety cap for additional rate-limited Keyword Planner requests
includeKeywordBreakdownNoMake independent one-keyword forecast calls in addition to the combined campaign forecast

Output Schema

NameRequiredDescriptionDefault
resultYesOriginal tool result: parsed JSON when the text is JSON, otherwise the text or multiple MCP content blocks. Provider fields depend on the selected query.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed20 schema fields changedv2.1.1
    • removedInput schema / additionalProperties
      Removed value: -false
    • removedInput schema / properties / conversionRate
      Removed value: -{
      -  "description": "Expected conversion rate as a decimal, e.g. 0.02 for 2%",
      -  "maximum": 1,
      -  "minimum": 0,
      -  "type": "number"
      -}
    • removedInput schema / properties / dailyBudget / $ref
      Removed value: -"#/properties/maxCpcBid"
    • addedInput schema / properties / dailyBudget / maximum
      Added value: +1000000000
    • addedInput schema / properties / dailyBudget / minimum
      Added value: +0.000001
    • addedInput schema / properties / dailyBudget / type
      Added value: +"number"
    • removedInput schema / properties / endDate / $ref
      Removed value: -"#/properties/startDate"
    • addedInput schema / properties / endDate / pattern
      Added value: +"^\\d{4}-\\d{2}-\\d{2}$"
    • addedInput schema / properties / endDate / type
      Added value: +"string"
    • removedInput schema / properties / languageIds / items / $ref
      Removed value: -"#/properties/geoTargetIds/items"
    • addedInput schema / properties / languageIds / items / pattern
      Added value: +"^\\d+$"
    • addedInput schema / properties / languageIds / items / type
      Added value: +"string"
    • removedInput schema / properties / maxCpcBidCeiling / $ref
      Removed value: -"#/properties/maxCpcBid"
    • addedInput schema / properties / maxCpcBidCeiling / maximum
      Added value: +1000000000
    • addedInput schema / properties / maxCpcBidCeiling / minimum
      Added value: +0.000001
    • addedInput schema / properties / maxCpcBidCeiling / type
      Added value: +"number"
    • removedInput schema / properties / negativeKeywords
      Removed value: -{
      -  "default": [],
      -  "description": "Keyword phrases excluded from the keyword forecast.",
      -  "items": {
      -    "$ref": "#/properties/keywords/items"
      -  },
      -  "maxItems": 1000,
      -  "type": "array"
      -}
    • removedInput schema / properties / negativeMatchType
      Removed value: -{
      -  "$ref": "#/properties/matchType",
      -  "default": "BROAD",
      -  "description": "Match type applied to the negative keywords."
      -}
    • removedInput schema / properties / network
      Removed value: -{
      -  "default": "GOOGLE_SEARCH",
      -  "description": "Google Ads search network selector used for planning.",
      -  "enum": [
      -    "GOOGLE_SEARCH",
      -    "GOOGLE_SEARCH_AND_PARTNERS"
      -  ],
      -  "type": "string"
      -}
    • changedOutput schema / properties / result / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": true,
      -    "properties": {},
      -    "type": "object"
      -  },
      -  {
      -    "items": {},
      -    "type": "array"
      -  },
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "boolean"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": {},
      +    "properties": {},
      +    "type": "object"
      +  },
      +  {
      +    "items": {},
      +    "type": "array"
      +  },
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "number"
      +  },
      +  {
      +    "type": "boolean"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. First observedv2.0.1

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive/openWorld, and the description reinforces with 'does not create a campaign or saved plan', which is the most important side-effect fact for a forecasting call. It also flags the optional independent per-keyword breakdown as an extra layer of work, though it doesn't mention the added cost/latency of those extra planner requests.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two front-loaded sentences: the output and scope come first, then capabilities and the non-mutation caveat. The middle capability list is somewhat of a parameter recitation but each item earns its place as a capability signal.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 14 parameters, two enums, a rich annotation set and an output schema, the description covers purpose, the non-side-effect guarantee, and the optional breakdown mode. It leaves bidding-strategy-to-budget dependencies (e.g. dailyBudget required for maximize strategies) to the schema, which is acceptable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all 14 parameters are already documented with constraints and defaults. The description only summarizes groups ('location and language targeting, match type, three bidding strategies, explicit future dates') without adding syntax or interaction rules beyond the schema, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (forecast) and enumerates the exact metrics produced (clicks, CPC, cost, conversions, CPA) plus the scope (a temporary keyword campaign). The 'forecast' framing and 'temporary' qualifier cleanly separate it from siblings like google_ads_generate_keyword_historical_metrics and google_ads_generate_keyword_ideas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It implies when the tool applies by noting 'explicit future dates' and a 'temporary keyword campaign', and it clarifies what the tool is not (no campaign or saved plan created). However, it never explicitly routes the agent away from the closely related historical-metrics and keyword-ideas siblings, leaving the primary selection decision to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.