Skip to main content
Glama

create_report

Create a new report for a client. Optionally pre-fill it from one or more connected data sources' standard templates (e.g. "Google Ads", "Meta", "GA4"), including "All channels" — a BLENDED cross-channel section (totals, leads, cost per lead by month, spend by channel, a by-channel table with a pooled total) available when the client has at least two paid ad accounts. Then refine it with add_widget / edit_widget. Requires MCP write actions to be enabled for the workspace; without confirm:true it returns a preview and creates nothing.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesName for the new report.
confirmNoSet true to actually create it. Omit or false to preview what would be created. With confirm:true, also pass the preview's previewToken.
clientIdYesClient id (from list_clients).
languageNoReport language (labels, week names like KW, number and € formatting). Default: the workspace language.
templateNoOptional connected source to pre-fill from, e.g. "Google Ads", "Meta", "GA4", "All channels" — or a comma-separated list, e.g. "All channels, Google Ads, Reddit Ads, ChatGPT Ads" (the blend then covers exactly the paid platforms named), optionally with a date preset such as "last_month" or "custom_YYYY-MM-DD_YYYY-MM-DD". Omit for a blank report.
templatesNoSeveral templates in order, one section each, e.g. ["All channels", "Google Ads", "Meta"]. Use instead of `template` for a multi-source report.
datePresetNoReport date range. Default "last30days". E.g. "last_month", "this_quarter", "quarter_to_date", "last_quarter", "year_to_date", "last_7_days", "last_90_days", "last_12_months", or "custom_YYYY-MM-DD_YYYY-MM-DD".
previewTokenNoWith confirm:true: the previewToken from this tool's preview (valid 15 minutes, once, for exactly the previewed arguments).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Goes well beyond the annotations: it discloses the confirm:true gating, that omitting confirm returns a preview and creates nothing, the workspace write-action requirement, and (via schema) the once/15-minute previewToken constraint. This is exactly the mutation-safety context the readOnlyHint=false annotation alone does not convey.

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?

Front-loads the core purpose and flows logically into templates, refinement, and the confirm flow. The parenthetical enumeration of the "All channels" contents (totals, leads, cost per lead, spend, table) is more verbose than an agent strictly needs.

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?

With 8 params and no output schema, the description covers the create flow, prerequisites, and preview/confirm behavior well. The only gap is that it doesn't describe what the preview actually returns, which matters slightly since there is no output schema to fall back on.

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 coverage is 100%, so baseline is 3, but the description adds real meaning to the template/templates parameters by explaining the "All channels" blended section and its contents and the multi-source ordering, which the schema only hints at. It stops short of clarifying previewToken semantics beyond the schema.

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?

Opens with a specific verb+resource ("Create a new report for a client") that is immediately distinguishable from siblings like get_report, schedule_report, update_report_settings, and create_share_link. The template pre-fill behavior and follow-up tools (add_widget/edit_widget) further pin down its exact role.

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?

Gives clear context and prerequisites (MCP write actions must be enabled; the "All channels" blend requires at least two paid ad accounts) and routes the agent to add_widget/edit_widget for refinement. It does not, however, explicitly state when to prefer this over alternatives like schedule_report.

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