Skip to main content
Glama

Gads Campaign Metrics

gads_campaign_metrics
Read-onlyIdempotent

Get performance metrics for campaigns over a date range. Returns impressions, clicks, cost, conversions, CTR, and CPC. Use to analyze campaign effectiveness or compare performance trends.

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum number of rows to return (default 50)
end_dateYesEnd date in YYYY-MM-DD format (e.g., "2024-01-31")
start_dateYesStart date in YYYY-MM-DD format (e.g., "2024-01-01")
campaign_idNoCampaign ID to filter (optional, returns all campaigns if omitted)
customer_idYesGoogle Ads customer ID

Output Schema

NameRequiredDescriptionDefault
resultsNoCampaign performance metrics

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "results": {
      +      "description": "Campaign performance metrics",
      +      "items": {
      +        "properties": {
      +          "campaign": {
      +            "description": "Campaign resource data",
      +            "properties": {
      +              "id": {
      +                "description": "Campaign ID",
      +                "type": "string"
      +              },
      +              "name": {
      +                "description": "Campaign name",
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          "metrics": {
      +            "description": "Performance metrics",
      +            "properties": {
      +              "average_cpc": {
      +                "description": "Average cost per click",
      +                "type": "number"
      +              },
      +              "clicks": {
      +                "description": "Number of clicks",
      +                "type": "number"
      +              },
      +              "conversions": {
      +                "description": "Number of conversions",
      +                "type": "number"
      +              },
      +              "cost_micros": {
      +                "description": "Cost in micros",
      +                "type": "number"
      +              },
      +              "ctr": {
      +                "description": "Click-through rate",
      +                "type": "number"
      +              },
      +              "impressions": {
      +                "description": "Number of impressions",
      +                "type": "number"
      +              }
      +            },
      +            "type": "object"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
  2. Changed1 schema field changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "customer_id": "1234567890",
      +    "end_date": "2024-01-31",
      +    "start_date": "2024-01-01"
      +  },
      +  {
      +    "campaign_id": "9876543210",
      +    "customer_id": "1234567890",
      +    "end_date": "2024-01-31",
      +    "limit": 100,
      +    "start_date": "2024-01-01"
      +  }
      +]
  3. First observed

TDQS

A3.9/5.0
Behavior3/5

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

Annotations fully declare readOnlyHint=true, idempotentHint=true, openWorldHint=true, destructiveHint=false, so the safety profile is clear. The description adds what metrics are returned but doesn't disclose any additional behavioral traits (e.g., data aggregation level, pagination, rate limits). With annotations covering safety, a score of 3 is appropriate.

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

Conciseness5/5

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

The description is two sentences, no fluff. It efficiently states the purpose, what's returned, and a use case. Every sentence adds value.

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

Completeness5/5

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

Given that an output schema exists, the description need not explain return values in detail. It covers the core purpose and typical use cases. For a read-only metrics tool with good annotations and complete schema, this is sufficient.

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?

All 5 parameters have descriptions in the input schema, so schema coverage is 100%. The description does not add new detail beyond what the schema already provides (e.g., date format, optional filters). Baseline 3 is correct when the schema carries the load.

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?

The description clearly states the tool returns performance metrics for campaigns over a date range, including specific KPIs (impressions, clicks, etc.). This distinguishes it from siblings like gads_list_campaigns which returns a campaign list without metrics, and gads_get_campaign which returns a single campaign's details.

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?

The description says 'Use to analyze campaign effectiveness or compare performance trends,' which provides context but no explicit guidance on when not to use it or alternatives. For example, if the user needs raw data or a search, gads_search might be more appropriate. Sibling tools are not mentioned.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.