Skip to main content
Glama

Metadata MCP Connector

Regenerate Flexible Creative Background

regenerate_flexible_background
Destructive

Generate a new AI background for a layered creative, optionally using the current background as a reference. Returns a hosted URL for a standalone background image that the caller can download or use independently. The tool does not modify the document or attach the image to an ad; the first-party editor can use the returned URL to replace its background. Existing text and logo layers are unchanged. The supplied aspect_ratio determines the new image shape. Registered brand characters shown in the source are kept unless characters is passed to change them; a result that loses one is returned as an error.

Input Schema

NameRequiredDescriptionDefault
domainYesCompany domain for brand DNA (e.g. 'metadata.io'). No protocol.
platformNoThe creative's channel (its document's `channel`); without aspect_ratio it also picks the shape, the channel's default. Default: 'linkedin'.linkedin
charactersNoThe brand characters the new background must show. Omit to keep the ones image_source shows; for a fresh scene pass the creative's provenance.quality.characters. [] drops them all.
aspect_ratioNoPass the creative's own canvas.aspect_ratio so the new background keeps its shape. Omitted, the channel's default shape is used (the one a new creative takes), which reshapes a creative made in another shape so its layers no longer fit. On a channel's canvas the new background comes back at that canvas's exact size.
image_sourceNoOptional URL of the current background to guide a same-style regeneration (image-to-image). Omit for a fresh scene.
instructionsYesDirection for the new background scene.
background_hexNoOptional 6-digit hex to pin the dominant background color (e.g. '#0A2540').

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / characters
      Added value: +{
      +  "description": "The brand characters the new background must show. Omit to keep the ones image_source shows; for a fresh scene pass the creative's provenance.quality.characters. [] drops them all.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "maxItems": 5,
      +  "type": "array"
      +}
  2. Changed1 schema field changed
    • changedInput schema / properties / aspect_ratio / enum
      Previous value: -[
      -  "1:1",
      -  "1.91:1",
      -  "4:5",
      -  "9:16",
      -  "16:9",
      -  "4:3"
      -]New value: +[
      +  "1:1",
      +  "1.91:1",
      +  "4:5",
      +  "9:16",
      +  "16:9",
      +  "4:3",
      +  "6:5"
      +]
  3. Changed3 schema fields changed
    • changedInput schema / properties / aspect_ratio / description
      Previous value: -"Pass the creative's own canvas.aspect_ratio so the new background keeps its shape. Omitting it on a non-default canvas reshapes the creative and the existing layers no longer fit."New value: +"Pass the creative's own canvas.aspect_ratio so the new background keeps its shape. Omitted, the channel's default shape is used (the one a new creative takes), which reshapes a creative made in another shape so its layers no longer fit. On a channel's canvas the new background comes back at that canvas's exact size."
    • changedInput schema / properties / aspect_ratio / enum
      Previous value: -[
      -  "1:1",
      -  "16:9",
      -  "9:16",
      -  "4:5"
      -]New value: +[
      +  "1:1",
      +  "1.91:1",
      +  "4:5",
      +  "9:16",
      +  "16:9",
      +  "4:3"
      +]
    • changedInput schema / properties / platform / description
      Previous value: -"Target platform (sets the default aspect ratio). Default: 'linkedin'."New value: +"The creative's channel (its document's `channel`); without aspect_ratio it also picks the shape, the channel's default. Default: 'linkedin'."
  4. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Goes well past the annotations by disclosing side-effect scope (document untouched, text/logo layers preserved), the return contract (hosted standalone URL), and an error condition (a result that drops a registered character fails). This meaningfully clarifies the destructiveHint=true flag, since the only destruction is of the background, not the source document.

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?

Purpose and the non-destructive scope are front-loaded, and each subsequent sentence carries a distinct fact (return value, layer preservation, aspect ratio, character rule). Slightly dense at six sentences, but no filler.

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 explains the return value (hosted URL usable independently) and the failure mode for lost brand characters. For a 7-parameter generator this covers everything an agent needs before invoking it.

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?

Schema coverage is 100% and the per-parameter descriptions are already rich, so the schema does most of the work. The body adds some coupling detail (aspect_ratio determines image shape, characters are preserved by default), but the specific guidance for aspect_ratio, characters, and image_source largely restates what the schema already says.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource ("generate a new AI background for a layered creative") and immediately scopes what it does not do ("does not modify the document or attach the image to an ad"). This distinguishes it from full-creative generators like generate_flexible_brand_creative, though no sibling is named explicitly.

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 selection rules for the optional paths: pass image_source for same-style regeneration, omit for a fresh scene; pass characters to change them, omit to keep them. It stops short of saying "use this instead of tool X," so it lands at 4 rather than 5.

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