Skip to main content
Glama
flin-gmp-mcp

flin-gmp-mcp

by flin-agency

create_dv360_report_query

Creates a saved DV360 STANDARD CSV report query with metrics, dimensions, and dates for advertiser reporting without changing campaigns; run it separately to generate the report.

Instructions

Create a saved STANDARD CSV report definition; never changes campaigns.

Defaults to yesterday in the advertiser timezone, impressions/clicks by date and advertiser. Supply Bid Manager METRIC_* and FILTER_* identifiers for other fields; Google validates compatible combinations. Custom dates require both YYYY-MM-DD dates. No email, sharing or automatic schedule is enabled. This creates a persistent query, not a report run: use run_dv360_report next. Reuse matching queries to avoid duplicates. After a timeout, list queries before retrying: creation may already have succeeded.

Input Schema

NameRequiredDescriptionDefault
titleYes
accountNo
metricsNo
end_dateNo
dimensionsNo
start_dateNo
advertiser_idYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.1.3

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare non-readOnly, non-idempotent, non-destructive, open-world, so the safety bar is partly covered; the description adds real nuance on top: it never mutates campaigns, it enables no email/sharing/schedule, and it warns that creation is non-idempotent enough that a timed-out call may already have succeeded. That timeout/idempotency disclosure is the standout value, though it doesn't mention required auth scopes or which account context applies.

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?

The most decisive constraint ('never changes campaigns') is front-loaded and each following sentence adds distinct information — defaults, identifier conventions, date rule, non-effects, next-step routing, retry advice. It is dense and multi-line, which risks skimming, but there is essentially no filler sentence to cut.

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?

For a 7-parameter, 0%-coverage creation tool with an output schema present, the description supplies defaults, validation rules, side-effect boundaries, sequencing to the run tool, and timeout recovery. An agent has everything needed to invoke it correctly and to know what happens when it does.

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 0%, so the description must carry the load, and it does for the substantive fields: date defaults (yesterday, advertiser timezone), default metrics/dimensions (impressions/clicks by date and advertiser), the METRIC_*/FILTER_* identifier convention for metrics and dimensions, and the both-or-neither rule and YYYY-MM-DD format for custom dates. `title`, `account` and `advertiser_id` are still unexplained, and the fact that Google validates combinations is helpful but leaves the failure mode unspecified.

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 and resource ('Create a saved STANDARD CSV report definition') and immediately bounds the scope ('never changes campaigns'). It also explicitly separates itself from the run step ('This creates a persistent query, not a report run: use run_dv360_report next'), so an agent can distinguish it from run_dv360_report and list_dv360_report_queries without reading any schema.

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

Usage Guidelines5/5

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

Names the follow-up tool and the condition that selects it ('use run_dv360_report next'), plus dedupe guidance ('Reuse matching queries to avoid duplicates') and recovery guidance ('After a timeout, list queries before retrying'). The alternatives and preconditions are spelled out rather than implied.

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