Skip to main content
Glama

creative_picker

Destructive

Open the creative picker to browse, upload, AI-generate, or import ad creatives with visual preview. Works with both image and video creatives. Use it whenever the user wants to add an image or video, and always for AI images: the user reviews them here before any campaign or post uses them, unless they explicitly said they don't need to. Pass asset_url or asset_prompt in params to auto-start; if the user already has an asset URL or ID, pass it directly to manage_campaign instead. Every call shows the picker; to just look up existing images, use campaign_and_resource_get resource_type assets.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

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

Input Schema

NameRequiredDescriptionDefault
ds_idNoPlatform: AW, FA, AC, TIK, LIA, CGPTA, SCM, or IGI (Instagram)
actionNobrowse_assets (default; opens the picker), create_upload_url or upload_creative.
paramsNoOptional. create_upload_url returns a signed upload URL and an upload_ref; upload_creative stores file_data and returns an upload_ref.
account_idNoAd account ID from accounts_discovery
asset_typeNoFilter: 'image' or 'video'

Output Schema

NameRequiredDescriptionDefault
dataNo
errorNo
notesNo
successYes
business_contextNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Adds behavior beyond the annotations by disclosing that "every call shows the picker" and that the user must review assets there before any campaign or post consumes them — non-obvious, workflow-altering facts. What it does not cover is the destructiveHint=true annotation: nothing explains what a picker call can overwrite or discard, which is the one behavioral trait left undisclosed.

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-loaded with purpose, then trigger conditions, then alternatives — the ordering matches how an agent decides. It is dense but nearly every clause carries routing or behavioral information; only the closing lookup-alternative sentence feels tacked on after the alternatives were already established.

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?

An output schema exists, so return values need no explanation, and the schema fully documents all five parameters. What remains thin for a tool flagged destructive and open-world is any statement of side effects or permissions; the description covers the review-gate workflow but not the risk profile the annotations advertise.

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?

With 100% schema coverage the schema already defines ds_id, action, params and asset_type, so the baseline is 3. The description adds real meaning on top by explaining the auto-start mechanism (asset_url or asset_prompt in params) and by clarifying when an existing URL/ID should bypass this tool entirely.

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 concrete verb and resource — "Open the creative picker to browse, upload, AI-generate, or import ad creatives" — and names the modifiers (image and video, visual preview) that tell an agent what this covers. It is clearly separable from manage_campaign and campaign_and_resource_get, which the description explicitly routes away to.

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?

Gives an explicit trigger ("whenever the user wants to add an image or video, and always for AI images"), an exception ("unless they explicitly said they don't need to"), and two named alternatives with the conditions that select them: manage_campaign when a URL/ID already exists, campaign_and_resource_get resource_type assets for read-only lookup.

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