Skip to main content
Glama

AdsAgent — Google Ads MCP

insights_query_consistent

Read-only

Canonical compact ledger-only Insights read. Pass query_contract_version=1, group_by, explicit date_from/date_to, and exactly one of scope or scopes. Use scopes for server-side batch, trust coverage and pagination separately, and continue the same ordered batch only with meta.next_continuation; single-scope responses also mirror it in result.data. The cursor binds the exact Google ledger generation and page size; do not send Meta min_as_of.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNo
scopeNo
fieldsNo
scopesNo
date_toYes
wait_msNo
group_byYes
date_fromYes
page_sizeNo
consistencyNocached
continuationNoUse the opaque signed cursor returned by the previous response. It remains bound to the original customer and login-customer route, dates, grouping, supported filters/order, ordered scopes, fields, page size, and ledger snapshot. Never add Meta min_as_of. For scopes batches, use the single meta.next_continuation to continue the same ordered scopes together.
response_modeNocompact
date_range_modeNoexplicit
connection_contextNo
query_contract_versionYes
require_complete_rangeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / connection_context
      Added value: +{
      +  "pattern": "^mctx_v1_[0-9a-f]{64}$",
      +  "type": "string"
      +}
  2. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so safety is covered; the description then adds genuinely non-obvious behavior: coverage and pagination must be trusted separately, the cursor is bound to the exact ledger generation and page size, and Meta min_as_of must not be sent. It does not explain what happens when coverage is partial, which is the one remaining unknown.

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?

Three tight sentences, front-loaded with the identity of the tool, followed by required-argument rules and then pagination caveats in priority order. No filler, though the phrasing is dense and mixed triggers and pagination guidance are not separated visually.

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?

For a read-only tool with annotations and no output schema, the description covers the contract version, the scope/scopes split, cursor semantics and a prohibited parameter – enough to call it correctly. It is incomplete on the relationship between page, page_size and continuation, and on how partial coverage should be handled, which are the two things most likely to cause a failed call.

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

Parameters4/5

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

Schema description coverage is only 6% with 16 parameters, so the description must compensate heavily and it does for the critical ones: it pins query_contract_version to 1, explains scope vs scopes exclusivity and that scopes means server-side batch, and restates cursor binding for continuation. Several parameters (page, fields, wait_ms, connection_context, require_complete_range, page vs continuation interaction) remain semantically unexplained.

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

Purpose4/5

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

The description opens with a concrete noun phrase, 'Canonical compact ledger-only Insights read,' which tells the agent this is a read of Insights data served from a ledger snapshot in compact form. It does not, however, name or contrast with the obvious siblings (google_ads_insights_query_daily, google_ads_insights_overview_query), so the agent must infer the distinction from wording alone.

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

Usage Guidelines4/5

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

It gives actionable invocation guidance – pass query_contract_version=1, group_by, explicit dates, and exactly one of scope or scopes – plus a routing rule that batch work should use scopes. It stops short of stating when to prefer this over google_ads_insights_query_daily or the overview tools, so exclusions and alternatives are implied rather than explicit.

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.

Resources