Skip to main content
Glama

Update Brief

update_brief
Destructive

Edit a brief (partial). REFUSED with 409 while an ACTIVE compose job references it — finish, resume, or abandon the job first (the Director never has its input edited mid-run). Edits apply to the NEXT compose.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyYes
briefIdYesbriefId (path).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idNo
ctaNo
goalNoWhat the video must accomplish.
hookNo
kindNoauthored = create_brief; clip = minted by suggest_briefs from an AI clip suggestion.
nameNo
toneNo
audioNo
beatsNo
gatesNo
quoteNo
formatNo
localeNoOutput language (BCP-47 tag, e.g. 'es-419'): ALL on-screen copy + captions.
captionNo
audienceNo
captionsNo
platformNo
createdAtNo
projectIdNo
updatedAtNo
exclusionsNo
referencesNo
durationSecNoTarget output duration. HONOR-OR-REFUSE: compose validates it against the beat-source window (±1.5s) and refuses a brief it cannot honor.
motionStyleNo
mustIncludesNo
seededGraphicsNoClient-authored graphic clips the Director must carry VERBATIM: seeded into the design loop's base composition as LOCKED clips (never re-authored, never discarded).
sourceSuggestionIdNokind:'clip' provenance — the suggestion this Brief was minted from.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed20 schema fields changed
    • removedInput schema / properties / body / properties / format / description
      Removed value: -"Output-format spec per §Format."
    • addedInput schema / properties / body / properties / format / properties / platform
      Added value: +{
      +  "type": "string"
      +}
    • removedInput schema / properties / body / properties / seededGraphics / items / properties / animate
      Removed value: -{
      -  "additionalProperties": {
      -    "items": {
      -      "additionalProperties": false,
      -      "properties": {
      -        "easing": {
      -          "anyOf": [
      -            {
      -              "enum": [
      -                "linear",
      -                "ease",
      -                "easeIn",
      -                "easeOut",
      -                "easeInOut"
      -              ],
      -              "type": "string"
      -            },
      -            {
      -              "additionalProperties": false,
      -              "properties": {
      -                "cubicBezier": {
      -                  "items": false,
      -                  "maxItems": 4,
      -                  "minItems": 4,
      -                  "prefixItems": [
      -                    {
      -                      "type": "number"
      -                    },
      -                    {
      -                      "type": "number"
      -                    },
      -                    {
      -                      "type": "number"
      -                    },
      -                    {
      -                      "type": "number"
      -                    }
      -                  ],
      -                  "type": "array"
      -                }
      -              },
      -              "required": [
      -                "cubicBezier"
      -              ],
      -              "type": "object"
      -            }
      -          ]
      -        },
      -        "time": {
      -          "minimum": 0,
      -          "type": "number"
      -        },
      -        "value": {
      -          "type": "number"
      -        }
      -      },
      -      "required": [
      -        "time",
      -        "value"
      -      ],
      -      "type": "object"
      -    },
      -    "minItems": 2,
      -    "type": "array"
      -  },
      -  "description": "Keyframe channels, clip-relative seconds. Each channel's values use the SAME unit as the scalar it animates: `opacity` 0 to 1, `scale` a multiplier (>0), `rotation` degrees, `position.x`/`position.y` a FRACTION of the frame like `position` (0.5 = centre; NOT pixels), `volume` 0 to 4.",
      -  "propertyNames": {
      -    "type": "string"
      -  },
      -  "type": "object"
      -}
    • addedInput schema / properties / body / properties / seededGraphics / items / properties / automation
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "lanes": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "points": {
      +            "items": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "t": {
      +                  "type": "number"
      +                },
      +                "v": {
      +                  "type": "number"
      +                }
      +              },
      +              "required": [
      +                "t",
      +                "v"
      +              ],
      +              "type": "object"
      +            },
      +            "minItems": 2,
      +            "type": "array"
      +          },
      +          "target": {
      +            "const": "volume",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "target",
      +          "points"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "version": {
      +      "const": 1,
      +      "type": "number"
      +    }
      +  },
      +  "required": [
      +    "version",
      +    "lanes"
      +  ],
      +  "type": "object"
      +}
    • removedInput schema / properties / body / properties / seededGraphics / items / properties / duration / description
      Removed value: -"Clip duration (seconds)."
    • removedInput schema / properties / body / properties / seededGraphics / items / properties / effects / items / properties / component / additionalProperties
      Removed value: -false
    • addedInput schema / properties / body / properties / seededGraphics / items / properties / effects / items / properties / component / anyOf
      Added value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "assets": {
      +        "additionalProperties": {
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "componentId": {
      +        "maxLength": 256,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "mediaBindings": {
      +        "additionalProperties": {
      +          "items": {
      +            "maxLength": 128,
      +            "minLength": 1,
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "params": {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/__schema0"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "seed": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "sourceVersionId": {
      +        "pattern": "^[a-f0-9]{64}$",
      +        "type": "string"
      +      },
      +      "version": {
      +        "const": 3,
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "version",
      +      "componentId",
      +      "sourceVersionId",
      +      "params",
      +      "seed"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "assets": {
      +        "additionalProperties": {
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "componentId": {
      +        "maxLength": 256,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "mediaBindings": {
      +        "additionalProperties": {
      +          "items": {
      +            "maxLength": 128,
      +            "minLength": 1,
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "params": {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/__schema0"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "seed": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "sourceVersionId": {
      +        "pattern": "^[a-f0-9]{64}$",
      +        "type": "string"
      +      },
      +      "version": {
      +        "const": 4,
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "version",
      +      "componentId",
      +      "sourceVersionId",
      +      "params",
      +      "seed"
      +    ],
      +    "type": "object"
      +  }
      +]
    • removedInput schema / properties / body / properties / seededGraphics / items / properties / effects / items / properties / component / properties
      Removed value: -{
      -  "assets": {
      -    "additionalProperties": {
      -      "minLength": 1,
      -      "type": "string"
      -    },
      -    "propertyNames": {
      -      "type": "string"
      -    },
      -    "type": "object"
      -  },
      -  "componentId": {
      -    "maxLength": 256,
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "mediaBindings": {
      -    "additionalProperties": {
      -      "items": {
      -        "maxLength": 128,
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "propertyNames": {
      -      "type": "string"
      -    },
      -    "type": "object"
      -  },
      -  "params": {
      -    "additionalProperties": {
      -      "$ref": "#/$defs/__schema0"
      -    },
      -    "propertyNames": {
      -      "type": "string"
      -    },
      -    "type": "object"
      -  },
      -  "seed": {
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "sourceVersionId": {
      -    "pattern": "^[a-f0-9]{64}$",
      -    "type": "string"
      -  },
      -  "version": {
      -    "const": 3,
      -    "type": "number"
      -  }
      -}
    • removedInput schema / properties / body / properties / seededGraphics / items / properties / effects / items / properties / component / required
      Removed value: -[
      -  "version",
      -  "componentId",
      -  "sourceVersionId",
      -  "params",
      -  "seed"
      -]
    • removedInput schema / properties / body / properties / seededGraphics / items / properties / effects / items / properties / component / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / seededGraphics / items / properties / legacyKeyframes
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "channels": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "needsUpgrade": {
      +      "const": true,
      +      "type": "boolean"
      +    },
      +    "record": {}
      +  },
      +  "required": [
      +    "needsUpgrade",
      +    "channels",
      +    "record"
      +  ],
      +  "type": "object"
      +}
    • changedInput schema / properties / body / properties / seededGraphics / items / properties / source / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "anchor": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "clipId": {
      -            "minLength": 1,
      -            "type": "string"
      -          },
      -          "offsetMs": {
      -            "type": "number"
      -          }
      -        },
      -        "required": [
      -          "clipId",
      -          "offsetMs"
      -        ],
      -        "type": "object"
      -      },
      -      "audioRole": {
      -        "enum": [
      -          "sfx",
      -          "music",
      -          "vo",
      -          "ambience"
      -        ],
      -        "type": "string"
      -      },
      -      "duck": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "attackMs": {
      -            "minimum": 0,
      -            "type": "number"
      -          },
      -          "duckDb": {
      -            "maximum": 0,
      -            "type": "number"
      -          },
      -          "releaseMs": {
      -            "minimum": 0,
      -            "type": "number"
      -          },
      -          "windows": {
      -            "items": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "endMs": {
      -                  "type": "number"
      -                },
      -                "startMs": {
      -                  "type": "number"
      -                }
      -              },
      -              "required": [
      -                "startMs",
      -                "endMs"
      -              ],
      -              "type": "object"
      -            },
      -            "type": "array"
      -          }
      -        },
      -        "required": [
      -          "duckDb",
      -          "attackMs",
      -          "releaseMs"
      -        ],
      -        "type": "object"
      -      },
      -      "excludedRanges": {
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "end": {
      -              "minimum": 0,
      -              "type": "number"
      -            },
      -            "reason": {
      -              "type": "string"
      -            },
      -            "start": {
      -              "minimum": 0,
      -              "type": "number"
      -            }
      -          },
      -          "required": [
      -            "start",
      -            "end"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "fadeInMs": {
      -        "minimum": 0,
      -        "type": "number"
      -      },
      -      "fadeOutMs": {
      -        "minimum": 0,
      -        "type": "number"
      -      },
      -      "kenBurns": {
      -        "enum": [
      -          "in",
      -          "out",
      -          "pan-l",
      -          "pan-r",
      -          "none"
      -        ],
      -        "type": "string"
      -      },
      -      "kind": {
      -        "const": "media",
      -        "type": "string"
      -      },
      -      "loop": {
      -        "type": "boolean"
      -      },
      -      "mediaId": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "muted": {
      -        "type": "boolean"
      -      },
      -      "playbackRate": {
      -        "exclusiveMinimum": 0,
      -        "type": "number"
      -      },
      -      "reframe": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "segments": {
      -            "items": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "bias": {
      -                  "additionalProperties": false,
      -                  "description": "Optional FINE framing nudge off the focus center, source-normalized in [−0.3, 0.3]. A small correction (headroom, rule-of-thirds), NOT a reframe — use `focus`/`zoom` for the actual shot. Omit (treated as 0) to sit dead-center on the focus.",
      -                  "properties": {
      -                    "x": {
      -                      "description": "Horizontal nudge, source-normalized (+ = right).",
      -                      "maximum": 0.3,
      -                      "minimum": -0.3,
      -                      "type": "number"
      -                    },
      -                    "y": {
      -                      "description": "Vertical nudge, source-normalized (+ = down).",
      -                      "maximum": 0.3,
      -                      "minimum": -0.3,
      -                      "type": "number"
      -                    }
      -                  },
      -                  "required": [
      -                    "x",
      -                    "y"
      -                  ],
      -                  "type": "object"
      -                },
      -                "ease": {
      -                  "additionalProperties": false,
      -                  "description": "Zoom/center ramp DURATIONS in SECONDS at this segment's edges — NOT a unitless 0–1 curve. ~0.3–0.6s reads as a snappy push; >1s reads sluggish. Keep `in` + `out` ≤ the segment's duration (endSec − startSec): the two edges share the span, so to ramp across the WHOLE segment set one edge to the full duration and the other to 0. Omit for an instant cut to this framing.",
      -                  "properties": {
      -                    "in": {
      -                      "description": "Ease-IN ramp DURATION in seconds at the segment START.",
      -                      "minimum": 0,
      -                      "type": "number"
      -                    },
      -                    "out": {
      -                      "description": "Ease-OUT ramp DURATION in seconds at the segment END.",
      -                      "minimum": 0,
      -                      "type": "number"
      -                    }
      -                  },
      -                  "required": [
      -                    "in",
      -                    "out"
      -                  ],
      -                  "type": "object"
      -                },
      -                "endSec": {
      -                  "description": "Segment END in seconds, clip-relative. The span (endSec − startSec) is this segment's duration — the window `ease` ramps over.",
      -                  "exclusiveMinimum": 0,
      -                  "type": "number"
      -                },
      -                "focus": {
      -                  "anyOf": [
      -                    {
      -                      "additionalProperties": false,
      -                      "properties": {
      -                        "mode": {
      -                          "const": "frame-center",
      -                          "type": "string"
      -                        }
      -                      },
      -                      "required": [
      -                        "mode"
      -                      ],
      -                      "type": "object"
      -                    },
      -                    {
      -                      "additionalProperties": false,
      -                      "properties": {
      -                        "mode": {
      -                          "const": "point",
      -                          "type": "string"
      -                        },
      -                        "x": {
      -                          "maximum": 1,
      -                          "minimum": 0,
      -                          "type": "number"
      -                        },
      -                        "y": {
      -                          "maximum": 1,
      -                          "minimum": 0,
      -                          "type": "number"
      -                        }
      -                      },
      -                      "required": [
      -                        "mode",
      -                        "x",
      -                        "y"
      -                      ],
      -                      "type": "object"
      -                    },
      -                    {
      -                      "additionalProperties": false,
      -                      "properties": {
      -                        "faceId": {
      -                          "minLength": 1,
      -                          "type": "string"
      -                        },
      -                        "mode": {
      -                          "const": "face",
      -                          "type": "string"
      -                        },
      -                        "shotScale": {
      -                          "enum": [
      -                            "close",
      -                            "standard",
      -                            "wide"
      -                          ],
      -                          "type": "string"
      -                        }
      -                      },
      -                      "required": [
      -                        "mode",
      -                        "faceId"
      -                      ],
      -                      "type": "object"
      -                    },
      -                    {
      -                      "additionalProperties": false,
      -                      "properties": {
      -                        "mode": {
      -                          "const": "all-faces",
      -                          "type": "string"
      -                        }
      -                      },
      -                      "required": [
      -                        "mode"
      -                      ],
      -                      "type": "object"
      -                    },
      -                    {
      -                      "additionalProperties": false,
      -                      "properties": {
      -                        "mode": {
      -                          "const": "active-speaker",
      -                          "type": "string"
      -                        }
      -                      },
      -                      "required": [
      -                        "mode"
      -                      ],
      -                      "type": "object"
      -                    }
      -                  ],
      -                  "description": "WHO/WHAT the camera tracks this segment (the reframe center), selected by `mode`: `frame-center` = no tracking, hold the geometric center (static/graphic footage, or a pure zoom); `point` = lock to a fixed source-normalized {x,y} (a non-moving on-screen element); `face` = track a detected face by `faceId` (from get_media_context), with optional `shotScale` close|standard|wide for tightness; `all-faces` = frame the bounding box of every detected face (group/ensemble shots); `active-speaker` = follow whoever is speaking (diarized talking-head / podcast). Pick by what the beat is about; pair with `zoom` for how tight."
      -                },
      -                "intent": {
      -                  "description": "Optional editorial LABEL for diff/log readability (e.g. 'speaker-tight', 'wide-context'). Cosmetic — NOT honored by the derive math and excluded from the variant cache key.",
      -                  "type": "string"
      -                },
      -                "startSec": {
      -                  "description": "Segment START in seconds, clip-relative. Segments tile the clip's duration in order.",
      -                  "minimum": 0,
      -                  "type": "number"
      -                },
      -                "zoom": {
      -                  "description": "How TIGHT the framing is — the fraction of the source the output viewport shows. <1 punches IN (a smaller source fraction, magnified to fill the frame); 1 = the full frame (no crop). ~0.6–0.8 is a moderate push-in, ~0.5 a tight close-up, 0.1 the maximum zoom. There is NO zoom-OUT past the full frame (max 1). Omit for the full frame. MUTUALLY EXCLUSIVE with `focus.shotScale` — a face-tracked shot is sized EITHER by the editorial scale (shotScale, which the bake calibrates to the detected face) OR by an explicit zoom, never both. A segment carrying both is REJECTED: shotScale wins at bake time and the zoom would be silently discarded.",
      -                  "maximum": 1,
      -                  "minimum": 0.1,
      -                  "type": "number"
      -                }
      -              },
      -              "required": [
      -                "startSec",
      -                "endSec",
      -                "focus"
      -              ],
      -              "type": "object"
      -            },
      -            "minItems": 1,
      -            "type": "array"
      -          }
      -        },
      -        "required": [
      -          "segments"
      -        ],
      -        "type": "object"
      -      },
      -      "sync": {
      -        "enum": [
      -          "video",
      -          "independent"
      -        ],
      -        "type": "string"
      -      },
      -      "trim": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "end": {
      -            "description": "Source trim end (seconds).",
      -            "minimum": 0,
      -            "type": "number"
      -          },
      -          "start": {
      -            "description": "Source trim start (seconds).",
      -            "minimum": 0,
      -            "type": "number"
      -          }
      -        },
      -        "required": [
      -          "start",
      -          "end"
      -        ],
      -        "type": "object"
      -      },
      -      "volume": {
      -        "maximum": 4,
      -        "minimum": 0,
      -        "type": "number"
      -      },
      -      "volumeDb": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "kind",
      -      "mediaId"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "componentId": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "execution": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "assets": {
      -            "additionalProperties": {
      -              "minLength": 1,
      -              "type": "string"
      -            },
      -            "propertyNames": {
      -              "type": "string"
      -            },
      -            "type": "object"
      -          },
      -          "componentId": {
      -            "maxLength": 256,
      -            "minLength": 1,
      -            "type": "string"
      -          },
      -          "mediaBindings": {
      -            "additionalProperties": {
      -              "items": {
      -                "maxLength": 128,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "propertyNames": {
      -              "type": "string"
      -            },
      -            "type": "object"
      -          },
      -          "params": {
      -            "additionalProperties": {
      -              "$ref": "#/$defs/__schema0"
      -            },
      -            "propertyNames": {
      -              "type": "string"
      -            },
      -            "type": "object"
      -          },
      -          "seed": {
      -            "minLength": 1,
      -            "type": "string"
      -          },
      -          "sourceVersionId": {
      -            "pattern": "^[a-f0-9]{64}$",
      -            "type": "string"
      -          },
      -          "version": {
      -            "const": 3,
      -            "type": "number"
      -          }
      -        },
      -        "required": [
      -          "version",
      -          "componentId",
      -          "sourceVersionId",
      -          "params",
      -          "seed"
      -        ],
      -        "type": "object"
      -      },
      -      "kind": {
      -        "const": "component",
      -        "type": "string"
      -      },
      -      "placement": {
      -        "anyOf": [
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "kind": {
      -                "const": "clip",
      -                "type": "string"
      -              },
      -              "version": {
      -                "const": 3,
      -                "type": "number"
      -              }
      -            },
      -            "required": [
      -              "version",
      -              "kind"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "kind": {
      -                "const": "content-slots",
      -                "type": "string"
      -              },
      -              "slots": {
      -                "additionalProperties": {
      -                  "additionalProperties": false,
      -                  "properties": {
      -                    "ownership": {
      -                      "enum": [
      -                        "reference",
      -                        "exclusive"
      -                      ],
      -                      "type": "string"
      -                    },
      -                    "targetClipIds": {
      -                      "items": {
      -                        "maxLength": 256,
      -                        "minLength": 1,
      -                        "type": "string"
      -                      },
      -                      "type": "array"
      -                    }
      -                  },
      -                  "required": [
      -                    "targetClipIds",
      -                    "ownership"
      -                  ],
      -                  "type": "object"
      -                },
      -                "propertyNames": {
      -                  "type": "string"
      -                },
      -                "type": "object"
      -              },
      -              "version": {
      -                "const": 3,
      -                "type": "number"
      -              }
      -            },
      -            "required": [
      -              "version",
      -              "kind",
      -              "slots"
      -            ],
      -            "type": "object"
      -          }
      -        ]
      -      },
      -      "props": {
      -        "additionalProperties": {},
      -        "propertyNames": {
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "zPlane": {
      -        "enum": [
      -          "front",
      -          "behind-subject"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "kind",
      -      "componentId",
      -      "props",
      -      "execution",
      -      "placement"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "anchor": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "space": {
      -            "const": "scene",
      -            "type": "string"
      -          },
      -          "x": {
      -            "maximum": 1,
      -            "minimum": 0,
      -            "type": "number"
      -          },
      -          "y": {
      -            "maximum": 1,
      -            "minimum": 0,
      -            "type": "number"
      -          }
      -        },
      -        "required": [
      -          "space",
      -          "x",
      -          "y"
      -        ],
      -        "type": "object"
      -      },
      -      "kind": {
      -        "const": "overlay",
      -        "type": "string"
      -      },
      -      "parallax": {
      -        "maximum": 0.3,
      -        "minimum": -0.3,
      -        "type": "number"
      -      },
      -      "params": {
      -        "additionalProperties": {},
      -        "propertyNames": {
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "primitiveId": {
      -        "minLength": 1,
      -        "pattern": "^(?!custom$)",
      -        "type": "string"
      -      },
      -      "zPlane": {
      -        "enum": [
      -          "front",
      -          "behind-subject"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "kind",
      -      "primitiveId",
      -      "params"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "component": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "assets": {
      -            "additionalProperties": {
      -              "minLength": 1,
      -              "type": "string"
      -            },
      -            "propertyNames": {
      -              "type": "string"
      -            },
      -            "type": "object"
      -          },
      -          "componentId": {
      -            "maxLength": 256,
      -            "minLength": 1,
      -            "type": "string"
      -          },
      -          "mediaBindings": {
      -            "additionalProperties": {
      -              "items": {
      -                "maxLength": 128,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "propertyNames": {
      -              "type": "string"
      -            },
      -            "type": "object"
      -          },
      -          "params": {
      -            "additionalProperties": {
      -              "$ref": "#/$defs/__schema0"
      -            },
      -            "propertyNames": {
      -              "type": "string"
      -            },
      -            "type": "object"
      -          },
      -          "seed": {
      -            "minLength": 1,
      -            "type": "string"
      -          },
      -          "sourceVersionId": {
      -            "pattern": "^[a-f0-9]{64}$",
      -            "type": "string"
      -          },
      -          "version": {
      -            "const": 3,
      -            "type": "number"
      -          }
      -        },
      -        "required": [
      -          "version",
      -          "componentId",
      -          "sourceVersionId",
      -          "params",
      -          "seed"
      -        ],
      -        "type": "object"
      -      },
      -      "kind": {
      -        "const": "effect",
      -        "type": "string"
      -      },
      -      "params": {
      -        "additionalProperties": {},
      -        "propertyNames": {
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "primitiveId": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "targetTrackIds": {
      -        "items": {
      -          "minLength": 1,
      -          "type": "string"
      -        },
      -        "minItems": 1,
      -        "type": "array"
      -      },
      -      "wrapperOrder": {
      -        "maximum": 9007199254740991,
      -        "minimum": 0,
      -        "type": "integer"
      -      }
      -    },
      -    "required": [
      -      "kind"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "html": {
      -        "description": "Your card's HTML — rendered VERBATIM as the graphic (shell motion via applyMotionPreset in a FOLLOWING call). CANVAS CONTRACT: the card renders in a viewport equal to the composition format's pixel frame (1080×1920 at 9:16 fhd); the root is NOT auto-pinned — declare explicit width/height matching the frame (box-sizing:border-box) and anchor content with flex/grid; position:absolute;inset:0 on the root does NOT fill the frame; for edge-to-edge backgrounds add an inner absolutely-positioned layer with generous negative inset. Overlay compositing applies a ~92% safe-area inset — keep critical copy away from the extreme edges. FONTS: name a family from GET /v1/fonts (list_render_fonts) — the renderer loads those faces for the card and waits for them, so `font-family: Inter` draws Inter. `@import` and remote font files are REFUSED: the card renders with no network. A family that is not on that list has no bytes behind it and the browser falls back, so end any stack with a generic (`Inter, sans-serif`) rather than relying on a system face being present.",
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "kind": {
      -        "const": "card",
      -        "type": "string"
      -      },
      -      "tokens": {
      -        "additionalProperties": {
      -          "type": "string"
      -        },
      -        "propertyNames": {
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "zPlane": {
      -        "const": "front",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "kind",
      -      "html"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "anchor": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "clipId": {
      +            "minLength": 1,
      +            "type": "string"
      +          },
      +          "offsetMs": {
      +            "type": "number"
      +          }
      +        },
      +        "required": [
      +          "clipId",
      +          "offsetMs"
      +        ],
      +        "type": "object"
      +      },
      +      "audioRole": {
      +        "enum": [
      +          "sfx",
      +          "music",
      +          "vo",
      +          "ambience"
      +        ],
      +        "type": "string"
      +      },
      +      "duck": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "attackMs": {
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "duckDb": {
      +            "maximum": 0,
      +            "type": "number"
      +          },
      +          "releaseMs": {
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "windows": {
      +            "items": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "endMs": {
      +                  "type": "number"
      +                },
      +                "startMs": {
      +                  "type": "number"
      +                }
      +              },
      +              "required": [
      +                "startMs",
      +                "endMs"
      +              ],
      +              "type": "object"
      +            },
      +            "type": "array"
      +          }
      +        },
      +        "required": [
      +          "duckDb",
      +          "attackMs",
      +          "releaseMs"
      +        ],
      +        "type": "object"
      +      },
      +      "excludedRanges": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "end": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "reason": {
      +              "type": "string"
      +            },
      +            "start": {
      +              "minimum": 0,
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "start",
      +            "end"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "fadeInMs": {
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "fadeOutMs": {
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "kenBurns": {
      +        "enum": [
      +          "in",
      +          "out",
      +          "pan-l",
      +          "pan-r",
      +          "none"
      +        ],
      +        "type": "string"
      +      },
      +      "kind": {
      +        "const": "media",
      +        "type": "string"
      +      },
      +      "loop": {
      +        "type": "boolean"
      +      },
      +      "mediaId": {
      +        "type": "string"
      +      },
      +      "muted": {
      +        "type": "boolean"
      +      },
      +      "playbackRate": {
      +        "exclusiveMinimum": 0,
      +        "type": "number"
      +      },
      +      "reframe": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "segments": {
      +            "items": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "bias": {
      +                  "additionalProperties": false,
      +                  "description": "Optional FINE framing nudge off the focus center, source-normalized in [−0.3, 0.3]. A small correction (headroom, rule-of-thirds), NOT a reframe — use `focus`/`zoom` for the actual shot. Omit (treated as 0) to sit dead-center on the focus.",
      +                  "properties": {
      +                    "x": {
      +                      "description": "Horizontal nudge, source-normalized (+ = right).",
      +                      "maximum": 0.3,
      +                      "minimum": -0.3,
      +                      "type": "number"
      +                    },
      +                    "y": {
      +                      "description": "Vertical nudge, source-normalized (+ = down).",
      +                      "maximum": 0.3,
      +                      "minimum": -0.3,
      +                      "type": "number"
      +                    }
      +                  },
      +                  "required": [
      +                    "x",
      +                    "y"
      +                  ],
      +                  "type": "object"
      +                },
      +                "ease": {
      +                  "additionalProperties": false,
      +                  "description": "Zoom/center ramp DURATIONS in SECONDS at this segment's edges — NOT a unitless 0–1 curve. ~0.3–0.6s reads as a snappy push; >1s reads sluggish. Keep `in` + `out` ≤ the segment's duration (endSec − startSec): the two edges share the span, so to ramp across the WHOLE segment set one edge to the full duration and the other to 0. Omit for an instant cut to this framing.",
      +                  "properties": {
      +                    "in": {
      +                      "description": "Ease-IN ramp DURATION in seconds at the segment START.",
      +                      "minimum": 0,
      +                      "type": "number"
      +                    },
      +                    "out": {
      +                      "description": "Ease-OUT ramp DURATION in seconds at the segment END.",
      +                      "minimum": 0,
      +                      "type": "number"
      +                    }
      +                  },
      +                  "required": [
      +                    "in",
      +                    "out"
      +                  ],
      +                  "type": "object"
      +                },
      +                "endSec": {
      +                  "description": "Segment END in seconds, clip-relative. The span (endSec − startSec) is this segment's duration — the window `ease` ramps over.",
      +                  "exclusiveMinimum": 0,
      +                  "type": "number"
      +                },
      +                "focus": {
      +                  "anyOf": [
      +                    {
      +                      "additionalProperties": false,
      +                      "properties": {
      +                        "mode": {
      +                          "const": "frame-center",
      +                          "type": "string"
      +                        }
      +                      },
      +                      "required": [
      +                        "mode"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    {
      +                      "additionalProperties": false,
      +                      "properties": {
      +                        "mode": {
      +                          "const": "point",
      +                          "type": "string"
      +                        },
      +                        "x": {
      +                          "maximum": 1,
      +                          "minimum": 0,
      +                          "type": "number"
      +                        },
      +                        "y": {
      +                          "maximum": 1,
      +                          "minimum": 0,
      +                          "type": "number"
      +                        }
      +                      },
      +                      "required": [
      +                        "mode",
      +                        "x",
      +                        "y"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    {
      +                      "additionalProperties": false,
      +                      "properties": {
      +                        "faceId": {
      +                          "minLength": 1,
      +                          "type": "string"
      +                        },
      +                        "mode": {
      +                          "const": "face",
      +                          "type": "string"
      +                        },
      +                        "shotScale": {
      +                          "enum": [
      +                            "close",
      +                            "standard",
      +                            "wide"
      +                          ],
      +                          "type": "string"
      +                        }
      +                      },
      +                      "required": [
      +                        "mode",
      +                        "faceId"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    {
      +                      "additionalProperties": false,
      +                      "properties": {
      +                        "mode": {
      +                          "const": "all-faces",
      +                          "type": "string"
      +                        }
      +                      },
      +                      "required": [
      +                        "mode"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    {
      +                      "additionalProperties": false,
      +                      "properties": {
      +                        "mode": {
      +                          "const": "active-speaker",
      +                          "type": "string"
      +                        }
      +                      },
      +                      "required": [
      +                        "mode"
      +                      ],
      +                      "type": "object"
      +                    }
      +                  ],
      +                  "description": "WHO/WHAT the camera tracks this segment (the reframe center), selected by `mode`: `frame-center` = no tracking, hold the geometric center (static/graphic footage, or a pure zoom); `point` = lock to a fixed source-normalized {x,y} (a non-moving on-screen element); `face` = track a detected face by `faceId` (from get_media_context), with optional `shotScale` close|standard|wide for tightness; `all-faces` = frame the bounding box of every detected face (group/ensemble shots); `active-speaker` = follow whoever is speaking (diarized talking-head / podcast). Pick by what the beat is about; pair with `zoom` for how tight."
      +                },
      +                "intent": {
      +                  "description": "Optional editorial LABEL for diff/log readability (e.g. 'speaker-tight', 'wide-context'). Cosmetic — NOT honored by the derive math and excluded from the variant cache key.",
      +                  "type": "string"
      +                },
      +                "startSec": {
      +                  "description": "Segment START in seconds, clip-relative. Segments tile the clip's duration in order.",
      +                  "minimum": 0,
      +                  "type": "number"
      +                },
      +                "zoom": {
      +                  "description": "How TIGHT the framing is — the fraction of the source the output viewport shows. <1 punches IN (a smaller source fraction, magnified to fill the frame); 1 = the full frame (no crop). ~0.6–0.8 is a moderate push-in, ~0.5 a tight close-up, 0.1 the maximum zoom. There is NO zoom-OUT past the full frame (max 1). Omit for the full frame. MUTUALLY EXCLUSIVE with `focus.shotScale`: a face-tracked shot is sized EITHER by the editorial scale (shotScale, calibrated to the detected face) OR by an explicit zoom — never both.",
      +                  "maximum": 1,
      +                  "minimum": 0.1,
      +                  "type": "number"
      +                }
      +              },
      +              "required": [
      +                "startSec",
      +                "endSec",
      +                "focus"
      +              ],
      +              "type": "object"
      +            },
      +            "minItems": 1,
      +            "type": "array"
      +          }
      +        },
      +        "required": [
      +          "segments"
      +        ],
      +        "type": "object"
      +      },
      +      "sync": {
      +        "enum": [
      +          "video",
      +          "independent"
      +        ],
      +        "type": "string"
      +      },
      +      "trim": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "end": {
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "start": {
      +            "minimum": 0,
      +            "type": "number"
      +          }
      +        },
      +        "required": [
      +          "start",
      +          "end"
      +        ],
      +        "type": "object"
      +      },
      +      "volume": {
      +        "maximum": 4,
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "volumeDb": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "kind",
      +      "mediaId"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "componentId": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "execution": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "assets": {
      +                "additionalProperties": {
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "componentId": {
      +                "maxLength": 256,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "mediaBindings": {
      +                "additionalProperties": {
      +                  "items": {
      +                    "maxLength": 128,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  },
      +                  "type": "array"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "params": {
      +                "additionalProperties": {
      +                  "$ref": "#/$defs/__schema0"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "seed": {
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "sourceVersionId": {
      +                "pattern": "^[a-f0-9]{64}$",
      +                "type": "string"
      +              },
      +              "version": {
      +                "const": 3,
      +                "type": "number"
      +              }
      +            },
      +            "required": [
      +              "version",
      +              "componentId",
      +              "sourceVersionId",
      +              "params",
      +              "seed"
      +            ],
      +            "type": "object"
      +          },
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "assets": {
      +                "additionalProperties": {
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "componentId": {
      +                "maxLength": 256,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "mediaBindings": {
      +                "additionalProperties": {
      +                  "items": {
      +                    "maxLength": 128,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  },
      +                  "type": "array"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "params": {
      +                "additionalProperties": {
      +                  "$ref": "#/$defs/__schema0"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "seed": {
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "sourceVersionId": {
      +                "pattern": "^[a-f0-9]{64}$",
      +                "type": "string"
      +              },
      +              "version": {
      +                "const": 4,
      +                "type": "number"
      +              }
      +            },
      +            "required": [
      +              "version",
      +              "componentId",
      +              "sourceVersionId",
      +              "params",
      +              "seed"
      +            ],
      +            "type": "object"
      +          }
      +        ]
      +      },
      +      "kind": {
      +        "const": "component",
      +        "type": "string"
      +      },
      +      "placement": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "kind": {
      +                "const": "clip",
      +                "type": "string"
      +              },
      +              "version": {
      +                "const": 3,
      +                "type": "number"
      +              }
      +            },
      +            "required": [
      +              "version",
      +              "kind"
      +            ],
      +            "type": "object"
      +          },
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "kind": {
      +                "const": "content-slots",
      +                "type": "string"
      +              },
      +              "slots": {
      +                "additionalProperties": {
      +                  "additionalProperties": false,
      +                  "properties": {
      +                    "ownership": {
      +                      "enum": [
      +                        "reference",
      +                        "exclusive"
      +                      ],
      +                      "type": "string"
      +                    },
      +                    "targetClipIds": {
      +                      "items": {
      +                        "maxLength": 256,
      +                        "minLength": 1,
      +                        "type": "string"
      +                      },
      +                      "type": "array"
      +                    }
      +                  },
      +                  "required": [
      +                    "targetClipIds",
      +                    "ownership"
      +                  ],
      +                  "type": "object"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "version": {
      +                "const": 3,
      +                "type": "number"
      +              }
      +            },
      +            "required": [
      +              "version",
      +              "kind",
      +              "slots"
      +            ],
      +            "type": "object"
      +          }
      +        ]
      +      },
      +      "props": {
      +        "additionalProperties": {},
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "retired": {
      +        "additionalProperties": {},
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "zPlane": {
      +        "enum": [
      +          "front",
      +          "behind-subject"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "kind",
      +      "componentId",
      +      "props"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "anchor": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "space": {
      +            "const": "scene",
      +            "type": "string"
      +          },
      +          "x": {
      +            "maximum": 1,
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "y": {
      +            "maximum": 1,
      +            "minimum": 0,
      +            "type": "number"
      +          }
      +        },
      +        "required": [
      +          "space",
      +          "x",
      +          "y"
      +        ],
      +        "type": "object"
      +      },
      +      "kind": {
      +        "const": "overlay",
      +        "type": "string"
      +      },
      +      "parallax": {
      +        "maximum": 0.3,
      +        "minimum": -0.3,
      +        "type": "number"
      +      },
      +      "params": {
      +        "additionalProperties": {},
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "primitiveId": {
      +        "minLength": 1,
      +        "pattern": "^(?!custom$)",
      +        "type": "string"
      +      },
      +      "zPlane": {
      +        "enum": [
      +          "front",
      +          "behind-subject"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "kind",
      +      "primitiveId",
      +      "params"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "component": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "assets": {
      +                "additionalProperties": {
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "componentId": {
      +                "maxLength": 256,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "mediaBindings": {
      +                "additionalProperties": {
      +                  "items": {
      +                    "maxLength": 128,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  },
      +                  "type": "array"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "params": {
      +                "additionalProperties": {
      +                  "$ref": "#/$defs/__schema0"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "seed": {
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "sourceVersionId": {
      +                "pattern": "^[a-f0-9]{64}$",
      +                "type": "string"
      +              },
      +              "version": {
      +                "const": 3,
      +                "type": "number"
      +              }
      +            },
      +            "required": [
      +              "version",
      +              "componentId",
      +              "sourceVersionId",
      +              "params",
      +              "seed"
      +            ],
      +            "type": "object"
      +          },
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "assets": {
      +                "additionalProperties": {
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "componentId": {
      +                "maxLength": 256,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "mediaBindings": {
      +                "additionalProperties": {
      +                  "items": {
      +                    "maxLength": 128,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  },
      +                  "type": "array"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "params": {
      +                "additionalProperties": {
      +                  "$ref": "#/$defs/__schema0"
      +                },
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "seed": {
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "sourceVersionId": {
      +                "pattern": "^[a-f0-9]{64}$",
      +                "type": "string"
      +              },
      +              "version": {
      +                "const": 4,
      +                "type": "number"
      +              }
      +            },
      +            "required": [
      +              "version",
      +              "componentId",
      +              "sourceVersionId",
      +              "params",
      +              "seed"
      +            ],
      +            "type": "object"
      +          }
      +        ]
      +      },
      +      "kind": {
      +        "const": "effect",
      +        "type": "string"
      +      },
      +      "params": {
      +        "additionalProperties": {},
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "primitiveId": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "targetTrackIds": {
      +        "items": {
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "wrapperOrder": {
      +        "maximum": 9007199254740991,
      +        "minimum": 0,
      +        "type": "integer"
      +      }
      +    },
      +    "required": [
      +      "kind"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "html": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "kind": {
      +        "const": "card",
      +        "type": "string"
      +      },
      +      "tokens": {
      +        "additionalProperties": {
      +          "type": "string"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "zPlane": {
      +        "const": "front",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "kind",
      +      "html"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "compositionId": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "kind": {
      +        "const": "composition",
      +        "type": "string"
      +      },
      +      "trim": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "end": {
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "start": {
      +            "minimum": 0,
      +            "type": "number"
      +          }
      +        },
      +        "required": [
      +          "start",
      +          "end"
      +        ],
      +        "type": "object"
      +      }
      +    },
      +    "required": [
      +      "kind",
      +      "compositionId"
      +    ],
      +    "type": "object"
      +  }
      +]
    • removedInput schema / properties / body / properties / seededGraphics / items / properties / startTime / description
      Removed value: -"Timeline start (seconds)."
    • removedInput schema / properties / body / properties / seededGraphics / items / properties / transitionIn / properties / component / additionalProperties
      Removed value: -false
    • addedInput schema / properties / body / properties / seededGraphics / items / properties / transitionIn / properties / component / anyOf
      Added value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "assets": {
      +        "additionalProperties": {
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "componentId": {
      +        "maxLength": 256,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "mediaBindings": {
      +        "additionalProperties": {
      +          "items": {
      +            "maxLength": 128,
      +            "minLength": 1,
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "params": {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/__schema0"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "seed": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "sourceVersionId": {
      +        "pattern": "^[a-f0-9]{64}$",
      +        "type": "string"
      +      },
      +      "version": {
      +        "const": 3,
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "version",
      +      "componentId",
      +      "sourceVersionId",
      +      "params",
      +      "seed"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "assets": {
      +        "additionalProperties": {
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "componentId": {
      +        "maxLength": 256,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "mediaBindings": {
      +        "additionalProperties": {
      +          "items": {
      +            "maxLength": 128,
      +            "minLength": 1,
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "params": {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/__schema0"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "seed": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "sourceVersionId": {
      +        "pattern": "^[a-f0-9]{64}$",
      +        "type": "string"
      +      },
      +      "version": {
      +        "const": 4,
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "version",
      +      "componentId",
      +      "sourceVersionId",
      +      "params",
      +      "seed"
      +    ],
      +    "type": "object"
      +  }
      +]
    • removedInput schema / properties / body / properties / seededGraphics / items / properties / transitionIn / properties / component / properties
      Removed value: -{
      -  "assets": {
      -    "additionalProperties": {
      -      "minLength": 1,
      -      "type": "string"
      -    },
      -    "propertyNames": {
      -      "type": "string"
      -    },
      -    "type": "object"
      -  },
      -  "componentId": {
      -    "maxLength": 256,
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "mediaBindings": {
      -    "additionalProperties": {
      -      "items": {
      -        "maxLength": 128,
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "propertyNames": {
      -      "type": "string"
      -    },
      -    "type": "object"
      -  },
      -  "params": {
      -    "additionalProperties": {
      -      "$ref": "#/$defs/__schema0"
      -    },
      -    "propertyNames": {
      -      "type": "string"
      -    },
      -    "type": "object"
      -  },
      -  "seed": {
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "sourceVersionId": {
      -    "pattern": "^[a-f0-9]{64}$",
      -    "type": "string"
      -  },
      -  "version": {
      -    "const": 3,
      -    "type": "number"
      -  }
      -}
    • removedInput schema / properties / body / properties / seededGraphics / items / properties / transitionIn / properties / component / required
      Removed value: -[
      -  "version",
      -  "componentId",
      -  "sourceVersionId",
      -  "params",
      -  "seed"
      -]
    • removedInput schema / properties / body / properties / seededGraphics / items / properties / transitionIn / properties / component / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / seededGraphics / items / properties / tweens
      Added value: +{
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "duration": {
      +        "exclusiveMinimum": 0,
      +        "type": "number"
      +      },
      +      "id": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "keyframes": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "easeEach": {
      +            "const": "none",
      +            "type": "string"
      +          },
      +          "format": {
      +            "const": "percentage",
      +            "type": "string"
      +          },
      +          "keyframes": {
      +            "items": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "ease": {
      +                  "type": "string"
      +                },
      +                "percentage": {
      +                  "type": "number"
      +                },
      +                "properties": {
      +                  "additionalProperties": {
      +                    "type": "number"
      +                  },
      +                  "propertyNames": {
      +                    "type": "string"
      +                  },
      +                  "type": "object"
      +                }
      +              },
      +              "required": [
      +                "percentage",
      +                "properties"
      +              ],
      +              "type": "object"
      +            },
      +            "minItems": 2,
      +            "type": "array"
      +          }
      +        },
      +        "required": [
      +          "format",
      +          "easeEach",
      +          "keyframes"
      +        ],
      +        "type": "object"
      +      },
      +      "position": {
      +        "type": "number"
      +      },
      +      "propertyGroup": {
      +        "enum": [
      +          "visual",
      +          "scale",
      +          "rotation",
      +          "position"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "id",
      +      "propertyGroup",
      +      "position",
      +      "duration",
      +      "keyframes"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • removedOutput schema / properties / format / description
      Removed value: -"Output-format spec per §Format."
  2. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Beyond the annotations (destructiveHint=true, idempotentHint=false), the description discloses a concurrency guard with a specific status code, the reason for it (the Director never has its input edited mid-run), and the timing of effect. This is exactly the extra context the safety annotations cannot convey.

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?

Three short sentences, front-loaded with the action, then the constraint, then the effect. No filler; every clause carries information an agent 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?

An output schema exists, so return values need not be explained, and the annotations carry the safety profile. The description covers the critical refusal condition and next-compose semantics, leaving only the exact merge behavior of the partial body unspecified — a minor gap for a 2-parameter tool.

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 50% and the description names no parameter directly, but '(partial)' conveys that the body is a partial merge rather than a full replacement, which is real semantic value for the body object. briefId and the mechanics of the merge remain undocumented in the description, so baseline 3 is appropriate.

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?

The description gives a specific verb+resource ('Edit a brief') and adds the meaningful qualifier '(partial)' that signals merge semantics. It does not explicitly distinguish itself from siblings like create_brief, delete_brief, or get_brief, so it lands just short of the top band.

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?

It states the blocking condition explicitly (409 while an ACTIVE compose job references the brief) and routes the agent to concrete alternatives ('finish, resume, or abandon the job first'). It also clarifies the temporal effect ('Edits apply to the NEXT compose'). Only the broader when-to-use vs create_brief/delete_brief is left implicit.

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.