Skip to main content
Glama

Start a campaign

start_campaign

Start a marketing campaign pack on Campaign Pack's own GPUs. Produces a campaign plan, ideas, ad and social scripts, a creator brief, and a client-ready PDF — plus product stills on the image sizes. Returns immediately with a job id; the run itself takes minutes, so poll check_campaign rather than waiting. Write the brief yourself from what the user told you: the richer and more specific it is, the better the pack. Nothing is sent to any third-party model provider.

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": {
      "brief": "<brief>",
      "brand": "<brand>"
    },
    "name": "start_campaign"
  }
}

Input Schema

NameRequiredDescriptionDefault
sizeNoPack size. Available here: 'text' (about a minute), 'lite' (about ten minutes).
brandYesThe brand name, spelled exactly as the customer spells it. Every mention in the pack is rewritten to match this.
briefYesWhat the product is, who it is for, what matters about it. A few sentences to a few paragraphs. State only facts the user gave you — invented metrics or customers end up in the finished pack.
photoNoWorkspace path from upload_product_photo. Required for the image sizes: the stills are edited from the real photo rather than generated from nothing.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Beyond the annotations it discloses the async contract (returns a job id immediately, run takes minutes), compute locality ('Campaign Pack's own GPUs', 'Nothing is sent to any third-party model provider'), and that photo-based stills are edits of a real image rather than generations. It stops short of stating whether repeat invocations start duplicate jobs, which matters given idempotentHint=false.

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?

Outputs and the async return are front-loaded, then the polling instruction and brief guidance follow in priority order. No sentence is filler; each carries a distinct operational fact.

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?

With no output schema, the description still tells the agent what comes back (a job id) and how to retrieve results via check_campaign/get_pack. Combined with full schema coverage and annotations, an agent has everything needed to invoke it correctly on the first try.

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 already 100%, so the baseline is 3; the description adds value by tying 'image sizes' to the photo requirement and by emphasizing brief quality/specificity and exact brand spelling in context rather than in isolation. It does not, however, explain the difference in output between 'text' and 'lite' beyond timing.

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 ('Start a marketing campaign pack') and enumerates the concrete deliverables — plan, ideas, ad/social scripts, creator brief, client-ready PDF, product stills. It is clearly distinguishable from siblings like check_campaign, get_pack, or upload_product_photo.

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?

Explicitly routes the agent: 'poll check_campaign rather than waiting' instead of blocking, and names upload_product_photo as the source of the `photo` path. It also gives authoring guidance ('Write the brief yourself from what the user told you') and warns against invented facts.

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.