Skip to main content
Glama

Group a campaign into review sections

group_campaign_review

[writes flayr data · write scope] Puts the campaign's not-yet-sectioned pieces into review sections (groupBy: week, channel_set, variant_group, episode or phase; default the brand's setting). Existing sections and decisions are kept. (Wraps POST /api/v2/campaigns/{id}/review.)

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "id": "<id>"
    },
    "name": "group_campaign_review"
  }
}

Input Schema

NameRequiredDescriptionDefault
idYesCampaign id.
groupByNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.9/5.0
Behavior4/5

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

Goes beyond the annotations by naming the required write scope, stating that existing sections and decisions are preserved, and noting the underlying POST endpoint. That preservation guarantee is the key behavioral fact for a mutation with destructiveHint=false and idempotentHint=false — it tells the agent the call is additive and safe to retry after a partial failure, which the annotations alone do 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 scope tag, then a single dense sentence covering action, target subset, grouping options, and preservation, followed by a compact endpoint note. No filler, though the parenthetical groupBy list crowds the main clause and the bracket preamble could be tighter.

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?

Two parameters, one required, no nested objects, no output schema — and the description covers the action, the subset of data affected, the optional grouping override, preservation of existing state, required auth scope, and the backing endpoint. An agent has everything needed to invoke it correctly; only the return shape is unspecified, which is acceptable without an output schema.

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?

Adds the default behavior for groupBy ('default the brand's setting') and enumerates the valid grouping keys, which is useful since the enumeration itself carries no per-value description. The schema documents only id, so coverage is 50%; the description closes most of that gap but doesn't explain what each grouping key actually produces.

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 — it 'puts the campaign's not-yet-sectioned pieces into review sections' — and scopes the operation to pieces that aren't yet sectioned, which distinguishes it from the read (get_campaign_review) and decision (decide_campaign_review_section) siblings in the same family.

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?

Implicitly frames this as the setup/grouping step that precedes deciding on sections, and notes the default when groupBy is omitted. It never explicitly says when to call this instead of get_campaign_review or decide_campaign_review_section, so routing relies on the agent inferring from the name and the word 'not-yet-sectioned'.

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