Skip to main content
Glama

Create Brand Kit

create_brand_kit

Create or UPSERT a brand kit (re-POSTing the same kitId updates it in place — this is also the brand-kit UPDATE path). Sets fonts/colors/logo. This is brand step 0 of the workflow: author the kit, then bind it to a PROJECT so colors/fonts/motion theme the output AUTOMATICALLY — pass its kitId as brandKitId to create_project, or attach it to an existing project via update_project (PATCH /projects/:id over REST). Without a bound kit, create_render produces UNBRANDED output. Tenant-scoped (no project arg).

Tool call template

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

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

Input Schema

NameRequiredDescriptionDefault
bodyYesPOST /brand-kits body. Org/user are server-resolved; never accepted from the body.
commandIdNoRetry identity. A call repeated with the same commandId returns the first result instead of acting twice.

Output Schema

NameRequiredDescriptionDefault
idNo
logoNo
nameNo
audioNo
fontsNo
introNo
outroNo
colorsNo
motifsNo
motionNo
sizingNo
densityNo
spacingNo
taglineNo
captionsNo
createdAtNo
updatedAtNo
watermarkNo
descriptionNo
extraColorsNo
inspirationNo
styleRubricNo
exemplarKeysNo
contactSheetKeyNo
voiceGuidelinesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed27 schema fields changed
    • removedInput schema / $defs / __schema19
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "ambiencePreference": {
      -      "anyOf": [
      -        {
      -          "$ref": "#/$defs/__schema33"
      -        },
      -        {
      -          "$ref": "#/$defs/__schema34"
      -        }
      -      ],
      -      "description": "Preferred ambience bed (`{ref}`) or explicit null (opt-out). Surfaced for driving agents; compose has no ambience auto-placement."
      -    },
      -    "bedStyle": {
      -      "additionalProperties": false,
      -      "description": "Preferred music bed (`bedId`) or a style hint (`genre` / `bpmRange`). Surfaced for driving agents; compose does not auto-select a pack bed.",
      -      "properties": {
      -        "bedId": {
      -          "$ref": "#/$defs/__schema30"
      -        },
      -        "bpmRange": {
      -          "$ref": "#/$defs/__schema32"
      -        },
      -        "genre": {
      -          "$ref": "#/$defs/__schema31"
      -        }
      -      },
      -      "type": "object"
      -    },
      -    "musicEnabled": {
      -      "type": "boolean"
      -    },
      -    "musicMood": {
      -      "maxLength": 300,
      -      "type": "string"
      -    },
      -    "sfxIntensity": {
      -      "enum": [
      -        "off",
      -        "light",
      -        "standard",
      -        "dense"
      -      ],
      -      "type": "string"
      -    },
      -    "sonicLogo": {
      -      "additionalProperties": false,
      -      "description": "A brand sound signature bound to the intro/outro bookend. `ref` = a palette reference; bound only when the kit carries the matching bumper (intro/outro), else a non-blocking advisory.",
      -      "properties": {
      -        "offsetMs": {
      -          "$ref": "#/$defs/__schema22"
      -        },
      -        "placement": {
      -          "$ref": "#/$defs/__schema21"
      -        },
      -        "ref": {
      -          "$ref": "#/$defs/__schema20"
      -        }
      -      },
      -      "required": [
      -        "ref",
      -        "placement"
      -      ],
      -      "type": "object"
      -    },
      -    "uiSoundSet": {
      -      "additionalProperties": false,
      -      "description": "Per-family SFX overrides (the brand's own tick/pop/…). Highest-priority tier over the org palette + pack default in the compose SFX draw.",
      -      "properties": {
      -        "confirm": {
      -          "$ref": "#/$defs/__schema26"
      -        },
      -        "error": {
      -          "$ref": "#/$defs/__schema27"
      -        },
      -        "impact": {
      -          "$ref": "#/$defs/__schema25"
      -        },
      -        "pop": {
      -          "$ref": "#/$defs/__schema24"
      -        },
      -        "riser": {
      -          "$ref": "#/$defs/__schema29"
      -        },
      -        "tick": {
      -          "$ref": "#/$defs/__schema23"
      -        },
      -        "whoosh": {
      -          "$ref": "#/$defs/__schema28"
      -        }
      -      },
      -      "type": "object"
      -    }
      -  },
      -  "type": "object"
      -}
    • removedInput schema / $defs / __schema20
      Removed value: -{
      -  "minLength": 1,
      -  "type": "string"
      -}
    • removedInput schema / $defs / __schema21
      Removed value: -{
      -  "enum": [
      -    "intro",
      -    "outro",
      -    "both"
      -  ],
      -  "type": "string"
      -}
    • removedInput schema / $defs / __schema22
      Removed value: -{
      -  "maximum": 10000,
      -  "minimum": 0,
      -  "type": "integer"
      -}
    • removedInput schema / $defs / __schema23
      Removed value: -{
      -  "minLength": 1,
      -  "type": "string"
      -}
    • removedInput schema / $defs / __schema24
      Removed value: -{
      -  "minLength": 1,
      -  "type": "string"
      -}
    • removedInput schema / $defs / __schema25
      Removed value: -{
      -  "minLength": 1,
      -  "type": "string"
      -}
    • removedInput schema / $defs / __schema26
      Removed value: -{
      -  "minLength": 1,
      -  "type": "string"
      -}
    • removedInput schema / $defs / __schema27
      Removed value: -{
      -  "minLength": 1,
      -  "type": "string"
      -}
    • removedInput schema / $defs / __schema28
      Removed value: -{
      -  "minLength": 1,
      -  "type": "string"
      -}
    • removedInput schema / $defs / __schema29
      Removed value: -{
      -  "minLength": 1,
      -  "type": "string"
      -}
    • removedInput schema / $defs / __schema30
      Removed value: -{
      -  "minLength": 1,
      -  "type": "string"
      -}
    • removedInput schema / $defs / __schema31
      Removed value: -{
      -  "maxLength": 120,
      -  "type": "string"
      -}
    • removedInput schema / $defs / __schema32
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "max": {
      -      "type": "number"
      -    },
      -    "min": {
      -      "type": "number"
      -    }
      -  },
      -  "required": [
      -    "min",
      -    "max"
      -  ],
      -  "type": "object"
      -}
    • removedInput schema / $defs / __schema33
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "ref": {
      -      "minLength": 1,
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "ref"
      -  ],
      -  "type": "object"
      -}
    • removedInput schema / $defs / __schema34
      Removed value: -{
      -  "type": "null"
      -}
    • removedInput schema / $defs / __schema38
      Removed value: -{
      -  "items": {
      -    "$ref": "#/$defs/__schema39"
      -  },
      -  "maxItems": 24,
      -  "type": "array"
      -}
    • removedInput schema / $defs / __schema39
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "body": {
      -      "oneOf": [
      -        {
      -          "properties": {
      -            "html": {
      -              "minLength": 1,
      -              "type": "string"
      -            },
      -            "kind": {
      -              "const": "card",
      -              "type": "string"
      -            },
      -            "tokens": {
      -              "additionalProperties": {
      -                "type": "string"
      -              },
      -              "properties": {},
      -              "propertyNames": {
      -                "type": "string"
      -              },
      -              "type": "object"
      -            }
      -          },
      -          "required": [
      -            "kind",
      -            "html"
      -          ],
      -          "type": "object"
      -        },
      -        {
      -          "properties": {
      -            "kind": {
      -              "const": "overlay",
      -              "type": "string"
      -            },
      -            "params": {
      -              "additionalProperties": {},
      -              "properties": {},
      -              "propertyNames": {
      -                "type": "string"
      -              },
      -              "type": "object"
      -            },
      -            "primitiveId": {
      -              "minLength": 1,
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "kind",
      -            "primitiveId"
      -          ],
      -          "type": "object"
      -        },
      -        {
      -          "properties": {
      -            "componentId": {
      -              "minLength": 1,
      -              "type": "string"
      -            },
      -            "kind": {
      -              "const": "component",
      -              "type": "string"
      -            },
      -            "props": {
      -              "additionalProperties": {},
      -              "properties": {},
      -              "propertyNames": {
      -                "type": "string"
      -              },
      -              "type": "object"
      -            }
      -          },
      -          "required": [
      -            "kind",
      -            "componentId"
      -          ],
      -          "type": "object"
      -        }
      -      ]
      -    },
      -    "coverage": {
      -      "enum": [
      -        "reproduced",
      -        "approximated",
      -        "skipped"
      -      ],
      -      "type": "string"
      -    },
      -    "diffScore": {
      -      "maximum": 1,
      -      "minimum": 0,
      -      "type": "number"
      -    },
      -    "evidence": {
      -      "items": {
      -        "$ref": "#/$defs/__schema40"
      -      },
      -      "maxItems": 24,
      -      "type": "array"
      -    },
      -    "id": {
      -      "maxLength": 40,
      -      "minLength": 1,
      -      "type": "string"
      -    },
      -    "motion": {
      -      "additionalProperties": false,
      -      "properties": {
      -        "confidence": {
      -          "enum": [
      -            "high",
      -            "low"
      -          ],
      -          "type": "string"
      -        },
      -        "enterMs": {
      -          "maximum": 5000,
      -          "minimum": 0,
      -          "type": "integer"
      -        },
      -        "exitMs": {
      -          "maximum": 5000,
      -          "minimum": 0,
      -          "type": "integer"
      -        },
      -        "preset": {
      -          "enum": [
      -            "fade-up",
      -            "slide-in-left",
      -            "slide-in-right",
      -            "scale-pop",
      -            "stagger-reveal"
      -          ],
      -          "type": "string"
      -        },
      -        "staggerMs": {
      -          "maximum": 2000,
      -          "minimum": 0,
      -          "type": "integer"
      -        }
      -      },
      -      "required": [
      -        "preset"
      -      ],
      -      "type": "object"
      -    },
      -    "observed": {
      -      "maxLength": 500,
      -      "minLength": 1,
      -      "type": "string"
      -    },
      -    "role": {
      -      "enum": [
      -        "title-card",
      -        "stat",
      -        "lower-third",
      -        "pull-quote",
      -        "hero",
      -        "logo-tag",
      -        "enumeration",
      -        "sequence",
      -        "comparison"
      -      ],
      -      "type": "string"
      -    },
      -    "skipReason": {
      -      "maxLength": 300,
      -      "type": "string"
      -    },
      -    "zone": {
      -      "additionalProperties": false,
      -      "properties": {
      -        "h": {
      -          "type": "number"
      -        },
      -        "w": {
      -          "type": "number"
      -        },
      -        "x": {
      -          "type": "number"
      -        },
      -        "y": {
      -          "type": "number"
      -        }
      -      },
      -      "required": [
      -        "x",
      -        "y",
      -        "w",
      -        "h"
      -      ],
      -      "type": "object"
      -    }
      -  },
      -  "required": [
      -    "id",
      -    "observed",
      -    "body",
      -    "role",
      -    "coverage"
      -  ],
      -  "type": "object"
      -}
    • removedInput schema / $defs / __schema40
      Removed value: -{
      -  "maximum": 9007199254740991,
      -  "minimum": 0,
      -  "type": "integer"
      -}
    • removedInput schema / properties / body / properties / audio / $ref
      Removed value: -"#/$defs/__schema19"
    • addedInput schema / properties / body / properties / audio / description
      Added value: +"Call describe_tool_input with tool \"create_brand_kit\" and field \"audio\" for the exact JSON Schema."
    • addedInput schema / properties / body / properties / audio / type
      Added value: +"object"
    • removedInput schema / properties / body / properties / motifs / $ref
      Removed value: -"#/$defs/__schema38"
    • addedInput schema / properties / body / properties / motifs / description
      Added value: +"Call describe_tool_input with tool \"create_brand_kit\" and field \"motifs\" for the exact JSON Schema."
    • addedInput schema / properties / body / properties / motifs / items
      Added value: +{
      +  "required": [
      +    "id",
      +    "observed",
      +    "body",
      +    "role",
      +    "coverage"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / properties / body / properties / motifs / maxItems
      Added value: +24
    • addedInput schema / properties / body / properties / motifs / type
      Added value: +"array"
  2. Changed109 schema fields changed
    • addedInput schema / $defs
      Added value: +{
      +  "__schema0": {
      +    "maxLength": 200,
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema1": {
      +    "maxLength": 200,
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema10": {
      +    "type": "boolean"
      +  },
      +  "__schema11": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "backgroundColor": {
      +        "type": "string"
      +      },
      +      "color": {
      +        "type": "string"
      +      },
      +      "emphasisColor": {
      +        "type": "string"
      +      },
      +      "emphasisFontFamily": {
      +        "type": "string"
      +      },
      +      "emphasisFontStyle": {
      +        "enum": [
      +          "normal",
      +          "italic"
      +        ],
      +        "type": "string"
      +      },
      +      "emphasisFontWeight": {
      +        "type": "number"
      +      },
      +      "emphasisLetterSpacing": {
      +        "type": "number"
      +      },
      +      "emphasisPlate": {
      +        "type": "boolean"
      +      },
      +      "emphasisPlateColor": {
      +        "type": "string"
      +      },
      +      "emphasisPlateTextColor": {
      +        "type": "string"
      +      },
      +      "emphasisScale": {
      +        "type": "number"
      +      },
      +      "emphasisTextTransform": {
      +        "enum": [
      +          "none",
      +          "uppercase"
      +        ],
      +        "type": "string"
      +      },
      +      "entrance": {
      +        "enum": [
      +          "none",
      +          "fade",
      +          "word-pop",
      +          "stagger-up"
      +        ],
      +        "type": "string"
      +      },
      +      "entranceMs": {
      +        "type": "number"
      +      },
      +      "entranceStaggerMs": {
      +        "type": "number"
      +      },
      +      "exitMs": {
      +        "type": "number"
      +      },
      +      "fontFamily": {
      +        "type": "string"
      +      },
      +      "fontSize": {
      +        "type": "number"
      +      },
      +      "fontWeight": {
      +        "type": "number"
      +      },
      +      "highlightColor": {
      +        "type": "string"
      +      },
      +      "plate": {
      +        "enum": [
      +          "glass",
      +          "solid",
      +          "none"
      +        ],
      +        "type": "string"
      +      },
      +      "position": {
      +        "enum": [
      +          "top",
      +          "center",
      +          "bottom"
      +        ],
      +        "type": "string"
      +      },
      +      "textTransform": {
      +        "enum": [
      +          "none",
      +          "uppercase"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "__schema12": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "duration": {
      +        "type": "number"
      +      },
      +      "easing": {
      +        "anyOf": [
      +          {
      +            "enum": [
      +              "linear",
      +              "ease",
      +              "ease-in",
      +              "ease-out",
      +              "ease-in-out"
      +            ],
      +            "type": "string"
      +          },
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "kind": {
      +                "const": "cubic-bezier",
      +                "type": "string"
      +              },
      +              "x1": {
      +                "type": "number"
      +              },
      +              "x2": {
      +                "type": "number"
      +              },
      +              "y1": {
      +                "type": "number"
      +              },
      +              "y2": {
      +                "type": "number"
      +              }
      +            },
      +            "required": [
      +              "kind",
      +              "x1",
      +              "y1",
      +              "x2",
      +              "y2"
      +            ],
      +            "type": "object"
      +          }
      +        ]
      +      },
      +      "entrance": {
      +        "enum": [
      +          "none",
      +          "fade",
      +          "word-pop",
      +          "stagger-up"
      +        ],
      +        "type": "string"
      +      },
      +      "exitMs": {
      +        "type": "number"
      +      },
      +      "staggerMs": {
      +        "type": "number"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "__schema13": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "alt": {
      +        "type": "string"
      +      },
      +      "placement": {
      +        "enum": [
      +          "tl",
      +          "tr",
      +          "bl",
      +          "br"
      +        ],
      +        "type": "string"
      +      },
      +      "sizePct": {
      +        "type": "number"
      +      },
      +      "src": {
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "src"
      +    ],
      +    "type": "object"
      +  },
      +  "__schema14": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "durationMs": {
      +        "type": "number"
      +      },
      +      "kind": {
      +        "enum": [
      +          "card",
      +          "video"
      +        ],
      +        "type": "string"
      +      },
      +      "src": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "subtitle": {
      +        "type": "string"
      +      },
      +      "title": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "kind"
      +    ],
      +    "type": "object"
      +  },
      +  "__schema15": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "durationMs": {
      +        "type": "number"
      +      },
      +      "kind": {
      +        "enum": [
      +          "card",
      +          "video"
      +        ],
      +        "type": "string"
      +      },
      +      "src": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "subtitle": {
      +        "type": "string"
      +      },
      +      "title": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "kind"
      +    ],
      +    "type": "object"
      +  },
      +  "__schema16": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "opacity": {
      +        "maximum": 1,
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "placement": {
      +        "enum": [
      +          "tl",
      +          "tr",
      +          "bl",
      +          "br"
      +        ],
      +        "type": "string"
      +      },
      +      "src": {
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "src"
      +    ],
      +    "type": "object"
      +  },
      +  "__schema17": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "base": {
      +        "type": "number"
      +      },
      +      "lg": {
      +        "type": "number"
      +      },
      +      "sm": {
      +        "type": "number"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "__schema18": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "borderRadius": {
      +        "type": "number"
      +      },
      +      "fontSizeBody": {
      +        "type": "number"
      +      },
      +      "fontSizeHeading": {
      +        "type": "number"
      +      },
      +      "fontSizeLabel": {
      +        "type": "number"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "__schema19": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "ambiencePreference": {
      +        "anyOf": [
      +          {
      +            "$ref": "#/$defs/__schema33"
      +          },
      +          {
      +            "$ref": "#/$defs/__schema34"
      +          }
      +        ],
      +        "description": "Preferred ambience bed (`{ref}`) or explicit null (opt-out). Surfaced for driving agents; compose has no ambience auto-placement."
      +      },
      +      "bedStyle": {
      +        "additionalProperties": false,
      +        "description": "Preferred music bed (`bedId`) or a style hint (`genre` / `bpmRange`). Surfaced for driving agents; compose does not auto-select a pack bed.",
      +        "properties": {
      +          "bedId": {
      +            "$ref": "#/$defs/__schema30"
      +          },
      +          "bpmRange": {
      +            "$ref": "#/$defs/__schema32"
      +          },
      +          "genre": {
      +            "$ref": "#/$defs/__schema31"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "musicEnabled": {
      +        "type": "boolean"
      +      },
      +      "musicMood": {
      +        "maxLength": 300,
      +        "type": "string"
      +      },
      +      "sfxIntensity": {
      +        "enum": [
      +          "off",
      +          "light",
      +          "standard",
      +          "dense"
      +        ],
      +        "type": "string"
      +      },
      +      "sonicLogo": {
      +        "additionalProperties": false,
      +        "description": "A brand sound signature bound to the intro/outro bookend. `ref` = a palette reference; bound only when the kit carries the matching bumper (intro/outro), else a non-blocking advisory.",
      +        "properties": {
      +          "offsetMs": {
      +            "$ref": "#/$defs/__schema22"
      +          },
      +          "placement": {
      +            "$ref": "#/$defs/__schema21"
      +          },
      +          "ref": {
      +            "$ref": "#/$defs/__schema20"
      +          }
      +        },
      +        "required": [
      +          "ref",
      +          "placement"
      +        ],
      +        "type": "object"
      +      },
      +      "uiSoundSet": {
      +        "additionalProperties": false,
      +        "description": "Per-family SFX overrides (the brand's own tick/pop/…). Highest-priority tier over the org palette + pack default in the compose SFX draw.",
      +        "properties": {
      +          "confirm": {
      +            "$ref": "#/$defs/__schema26"
      +          },
      +          "error": {
      +            "$ref": "#/$defs/__schema27"
      +          },
      +          "impact": {
      +            "$ref": "#/$defs/__schema25"
      +          },
      +          "pop": {
      +            "$ref": "#/$defs/__schema24"
      +          },
      +          "riser": {
      +            "$ref": "#/$defs/__schema29"
      +          },
      +          "tick": {
      +            "$ref": "#/$defs/__schema23"
      +          },
      +          "whoosh": {
      +            "$ref": "#/$defs/__schema28"
      +          }
      +        },
      +        "type": "object"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "__schema2": {
      +    "maxLength": 2000,
      +    "type": "string"
      +  },
      +  "__schema20": {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema21": {
      +    "enum": [
      +      "intro",
      +      "outro",
      +      "both"
      +    ],
      +    "type": "string"
      +  },
      +  "__schema22": {
      +    "maximum": 10000,
      +    "minimum": 0,
      +    "type": "integer"
      +  },
      +  "__schema23": {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema24": {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema25": {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema26": {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema27": {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema28": {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema29": {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema3": {
      +    "maxLength": 500,
      +    "type": "string"
      +  },
      +  "__schema30": {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema31": {
      +    "maxLength": 120,
      +    "type": "string"
      +  },
      +  "__schema32": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "max": {
      +        "type": "number"
      +      },
      +      "min": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "min",
      +      "max"
      +    ],
      +    "type": "object"
      +  },
      +  "__schema33": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "ref": {
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "ref"
      +    ],
      +    "type": "object"
      +  },
      +  "__schema34": {
      +    "type": "null"
      +  },
      +  "__schema35": {
      +    "items": {
      +      "$ref": "#/$defs/__schema36"
      +    },
      +    "maxItems": 24,
      +    "type": "array"
      +  },
      +  "__schema36": {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema37": {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema38": {
      +    "items": {
      +      "$ref": "#/$defs/__schema39"
      +    },
      +    "maxItems": 24,
      +    "type": "array"
      +  },
      +  "__schema39": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "body": {
      +        "oneOf": [
      +          {
      +            "properties": {
      +              "html": {
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "kind": {
      +                "const": "card",
      +                "type": "string"
      +              },
      +              "tokens": {
      +                "additionalProperties": {
      +                  "type": "string"
      +                },
      +                "properties": {},
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              }
      +            },
      +            "required": [
      +              "kind",
      +              "html"
      +            ],
      +            "type": "object"
      +          },
      +          {
      +            "properties": {
      +              "kind": {
      +                "const": "overlay",
      +                "type": "string"
      +              },
      +              "params": {
      +                "additionalProperties": {},
      +                "properties": {},
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              },
      +              "primitiveId": {
      +                "minLength": 1,
      +                "type": "string"
      +              }
      +            },
      +            "required": [
      +              "kind",
      +              "primitiveId"
      +            ],
      +            "type": "object"
      +          },
      +          {
      +            "properties": {
      +              "componentId": {
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "kind": {
      +                "const": "component",
      +                "type": "string"
      +              },
      +              "props": {
      +                "additionalProperties": {},
      +                "properties": {},
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              }
      +            },
      +            "required": [
      +              "kind",
      +              "componentId"
      +            ],
      +            "type": "object"
      +          }
      +        ]
      +      },
      +      "coverage": {
      +        "enum": [
      +          "reproduced",
      +          "approximated",
      +          "skipped"
      +        ],
      +        "type": "string"
      +      },
      +      "diffScore": {
      +        "maximum": 1,
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "evidence": {
      +        "items": {
      +          "$ref": "#/$defs/__schema40"
      +        },
      +        "maxItems": 24,
      +        "type": "array"
      +      },
      +      "id": {
      +        "maxLength": 40,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "motion": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "confidence": {
      +            "enum": [
      +              "high",
      +              "low"
      +            ],
      +            "type": "string"
      +          },
      +          "enterMs": {
      +            "maximum": 5000,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "exitMs": {
      +            "maximum": 5000,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "preset": {
      +            "enum": [
      +              "fade-up",
      +              "slide-in-left",
      +              "slide-in-right",
      +              "scale-pop",
      +              "stagger-reveal"
      +            ],
      +            "type": "string"
      +          },
      +          "staggerMs": {
      +            "maximum": 2000,
      +            "minimum": 0,
      +            "type": "integer"
      +          }
      +        },
      +        "required": [
      +          "preset"
      +        ],
      +        "type": "object"
      +      },
      +      "observed": {
      +        "maxLength": 500,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "role": {
      +        "enum": [
      +          "title-card",
      +          "stat",
      +          "lower-third",
      +          "pull-quote",
      +          "hero",
      +          "logo-tag",
      +          "enumeration",
      +          "sequence",
      +          "comparison"
      +        ],
      +        "type": "string"
      +      },
      +      "skipReason": {
      +        "maxLength": 300,
      +        "type": "string"
      +      },
      +      "zone": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "h": {
      +            "type": "number"
      +          },
      +          "w": {
      +            "type": "number"
      +          },
      +          "x": {
      +            "type": "number"
      +          },
      +          "y": {
      +            "type": "number"
      +          }
      +        },
      +        "required": [
      +          "x",
      +          "y",
      +          "w",
      +          "h"
      +        ],
      +        "type": "object"
      +      }
      +    },
      +    "required": [
      +      "id",
      +      "observed",
      +      "body",
      +      "role",
      +      "coverage"
      +    ],
      +    "type": "object"
      +  },
      +  "__schema4": {
      +    "maxLength": 500,
      +    "type": "string"
      +  },
      +  "__schema40": {
      +    "maximum": 9007199254740991,
      +    "minimum": 0,
      +    "type": "integer"
      +  },
      +  "__schema41": {
      +    "maxLength": 4000,
      +    "type": "string"
      +  },
      +  "__schema42": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "graphicsPerMin": {
      +        "maximum": 60,
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "maxSimultaneous": {
      +        "maximum": 6,
      +        "minimum": 1,
      +        "type": "integer"
      +      }
      +    },
      +    "required": [
      +      "graphicsPerMin",
      +      "maxSimultaneous"
      +    ],
      +    "type": "object"
      +  },
      +  "__schema43": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "extractedAt": {
      +        "type": "number"
      +      },
      +      "extractionVersion": {
      +        "maxLength": 60,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "sources": {
      +        "items": {
      +          "$ref": "#/$defs/__schema44"
      +        },
      +        "maxItems": 24,
      +        "minItems": 1,
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "sources",
      +      "extractedAt",
      +      "extractionVersion"
      +    ],
      +    "type": "object"
      +  },
      +  "__schema44": {
      +    "type": "string"
      +  },
      +  "__schema45": {
      +    "maxLength": 128,
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "__schema5": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "accent": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "background": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "primary": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "secondary": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "text": {
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "primary",
      +      "secondary",
      +      "accent",
      +      "background",
      +      "text"
      +    ],
      +    "type": "object"
      +  },
      +  "__schema6": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "hex": {
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "label": {
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "usage": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "hex",
      +        "label"
      +      ],
      +      "type": "object"
      +    },
      +    "type": "array"
      +  },
      +  "__schema7": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "fontFamily": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "fontWeight": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "fontFamily",
      +      "fontWeight"
      +    ],
      +    "type": "object"
      +  },
      +  "__schema8": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "fontFamily": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "fontWeight": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "fontFamily",
      +      "fontWeight"
      +    ],
      +    "type": "object"
      +  },
      +  "__schema9": {
      +    "maxLength": 5000,
      +    "type": "string"
      +  }
      +}
    • addedInput schema / properties / body / properties / audio / $ref
      Added value: +"#/$defs/__schema19"
    • removedInput schema / properties / body / properties / audio / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / audio / properties
      Removed value: -{
      -  "ambiencePreference": {
      -    "anyOf": [
      -      {
      -        "additionalProperties": false,
      -        "properties": {
      -          "ref": {
      -            "minLength": 1,
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "ref"
      -        ],
      -        "type": "object"
      -      },
      -      {
      -        "type": "null"
      -      }
      -    ],
      -    "description": "Preferred ambience bed (`{ref}`) or explicit null (opt-out). Surfaced for driving agents; compose has no ambience auto-placement."
      -  },
      -  "bedStyle": {
      -    "additionalProperties": false,
      -    "description": "Preferred music bed (`bedId`) or a style hint (`genre` / `bpmRange`). Surfaced for driving agents; compose does not auto-select a pack bed.",
      -    "properties": {
      -      "bedId": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "bpmRange": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "max": {
      -            "type": "number"
      -          },
      -          "min": {
      -            "type": "number"
      -          }
      -        },
      -        "required": [
      -          "min",
      -          "max"
      -        ],
      -        "type": "object"
      -      },
      -      "genre": {
      -        "maxLength": 120,
      -        "type": "string"
      -      }
      -    },
      -    "type": "object"
      -  },
      -  "musicEnabled": {
      -    "type": "boolean"
      -  },
      -  "musicMood": {
      -    "maxLength": 300,
      -    "type": "string"
      -  },
      -  "sfxIntensity": {
      -    "enum": [
      -      "off",
      -      "light",
      -      "standard",
      -      "dense"
      -    ],
      -    "type": "string"
      -  },
      -  "sonicLogo": {
      -    "additionalProperties": false,
      -    "description": "A brand sound signature bound to the intro/outro bookend. `ref` = a palette reference; bound only when the kit carries the matching bumper (intro/outro), else a non-blocking advisory.",
      -    "properties": {
      -      "offsetMs": {
      -        "maximum": 10000,
      -        "minimum": 0,
      -        "type": "integer"
      -      },
      -      "placement": {
      -        "enum": [
      -          "intro",
      -          "outro",
      -          "both"
      -        ],
      -        "type": "string"
      -      },
      -      "ref": {
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "ref",
      -      "placement"
      -    ],
      -    "type": "object"
      -  },
      -  "uiSoundSet": {
      -    "additionalProperties": false,
      -    "description": "Per-family SFX overrides (the brand's own tick/pop/…). Highest-priority tier over the org palette + pack default in the compose SFX draw.",
      -    "properties": {
      -      "confirm": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "error": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "impact": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "pop": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "riser": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "tick": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "whoosh": {
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "type": "object"
      -  }
      -}
    • removedInput schema / properties / body / properties / audio / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / bodyFont / $ref
      Added value: +"#/$defs/__schema8"
    • removedInput schema / properties / body / properties / bodyFont / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / bodyFont / properties
      Removed value: -{
      -  "fontFamily": {
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "fontWeight": {
      -    "type": "number"
      -  }
      -}
    • removedInput schema / properties / body / properties / bodyFont / required
      Removed value: -[
      -  "fontFamily",
      -  "fontWeight"
      -]
    • removedInput schema / properties / body / properties / bodyFont / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / captionProfile / $ref
      Added value: +"#/$defs/__schema11"
    • removedInput schema / properties / body / properties / captionProfile / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / captionProfile / properties
      Removed value: -{
      -  "backgroundColor": {
      -    "type": "string"
      -  },
      -  "color": {
      -    "type": "string"
      -  },
      -  "emphasisColor": {
      -    "type": "string"
      -  },
      -  "emphasisFontFamily": {
      -    "type": "string"
      -  },
      -  "emphasisFontStyle": {
      -    "enum": [
      -      "normal",
      -      "italic"
      -    ],
      -    "type": "string"
      -  },
      -  "emphasisFontWeight": {
      -    "type": "number"
      -  },
      -  "emphasisLetterSpacing": {
      -    "type": "number"
      -  },
      -  "emphasisPlate": {
      -    "type": "boolean"
      -  },
      -  "emphasisPlateColor": {
      -    "type": "string"
      -  },
      -  "emphasisPlateTextColor": {
      -    "type": "string"
      -  },
      -  "emphasisScale": {
      -    "type": "number"
      -  },
      -  "emphasisTextTransform": {
      -    "enum": [
      -      "none",
      -      "uppercase"
      -    ],
      -    "type": "string"
      -  },
      -  "entrance": {
      -    "enum": [
      -      "none",
      -      "fade",
      -      "word-pop",
      -      "stagger-up"
      -    ],
      -    "type": "string"
      -  },
      -  "entranceMs": {
      -    "type": "number"
      -  },
      -  "entranceStaggerMs": {
      -    "type": "number"
      -  },
      -  "exitMs": {
      -    "type": "number"
      -  },
      -  "fontFamily": {
      -    "type": "string"
      -  },
      -  "fontSize": {
      -    "type": "number"
      -  },
      -  "fontWeight": {
      -    "type": "number"
      -  },
      -  "highlightColor": {
      -    "type": "string"
      -  },
      -  "plate": {
      -    "enum": [
      -      "glass",
      -      "solid",
      -      "none"
      -    ],
      -    "type": "string"
      -  },
      -  "position": {
      -    "enum": [
      -      "top",
      -      "center",
      -      "bottom"
      -    ],
      -    "type": "string"
      -  },
      -  "textTransform": {
      -    "enum": [
      -      "none",
      -      "uppercase"
      -    ],
      -    "type": "string"
      -  }
      -}
    • removedInput schema / properties / body / properties / captionProfile / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / colors / $ref
      Added value: +"#/$defs/__schema5"
    • removedInput schema / properties / body / properties / colors / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / colors / properties
      Removed value: -{
      -  "accent": {
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "background": {
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "primary": {
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "secondary": {
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "text": {
      -    "minLength": 1,
      -    "type": "string"
      -  }
      -}
    • removedInput schema / properties / body / properties / colors / required
      Removed value: -[
      -  "primary",
      -  "secondary",
      -  "accent",
      -  "background",
      -  "text"
      -]
    • removedInput schema / properties / body / properties / colors / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / contactSheetKey / $ref
      Added value: +"#/$defs/__schema37"
    • removedInput schema / properties / body / properties / contactSheetKey / minLength
      Removed value: -1
    • removedInput schema / properties / body / properties / contactSheetKey / type
      Removed value: -"string"
    • addedInput schema / properties / body / properties / density / $ref
      Added value: +"#/$defs/__schema42"
    • removedInput schema / properties / body / properties / density / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / density / properties
      Removed value: -{
      -  "graphicsPerMin": {
      -    "maximum": 60,
      -    "minimum": 0,
      -    "type": "number"
      -  },
      -  "maxSimultaneous": {
      -    "maximum": 6,
      -    "minimum": 1,
      -    "type": "integer"
      -  }
      -}
    • removedInput schema / properties / body / properties / density / required
      Removed value: -[
      -  "graphicsPerMin",
      -  "maxSimultaneous"
      -]
    • removedInput schema / properties / body / properties / density / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / description / $ref
      Added value: +"#/$defs/__schema2"
    • removedInput schema / properties / body / properties / description / maxLength
      Removed value: -2000
    • removedInput schema / properties / body / properties / description / type
      Removed value: -"string"
    • addedInput schema / properties / body / properties / exemplarKeys / $ref
      Added value: +"#/$defs/__schema35"
    • removedInput schema / properties / body / properties / exemplarKeys / items
      Removed value: -{
      -  "minLength": 1,
      -  "type": "string"
      -}
    • removedInput schema / properties / body / properties / exemplarKeys / maxItems
      Removed value: -24
    • removedInput schema / properties / body / properties / exemplarKeys / type
      Removed value: -"array"
    • addedInput schema / properties / body / properties / extraColors / $ref
      Added value: +"#/$defs/__schema6"
    • removedInput schema / properties / body / properties / extraColors / items
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "hex": {
      -      "minLength": 1,
      -      "type": "string"
      -    },
      -    "label": {
      -      "minLength": 1,
      -      "type": "string"
      -    },
      -    "usage": {
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "hex",
      -    "label"
      -  ],
      -  "type": "object"
      -}
    • removedInput schema / properties / body / properties / extraColors / type
      Removed value: -"array"
    • addedInput schema / properties / body / properties / headingFont / $ref
      Added value: +"#/$defs/__schema7"
    • removedInput schema / properties / body / properties / headingFont / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / headingFont / properties
      Removed value: -{
      -  "fontFamily": {
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "fontWeight": {
      -    "type": "number"
      -  }
      -}
    • removedInput schema / properties / body / properties / headingFont / required
      Removed value: -[
      -  "fontFamily",
      -  "fontWeight"
      -]
    • removedInput schema / properties / body / properties / headingFont / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / inspiration / $ref
      Added value: +"#/$defs/__schema43"
    • removedInput schema / properties / body / properties / inspiration / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / inspiration / properties
      Removed value: -{
      -  "extractedAt": {
      -    "type": "number"
      -  },
      -  "extractionVersion": {
      -    "maxLength": 60,
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "sources": {
      -    "items": {
      -      "type": "string"
      -    },
      -    "maxItems": 24,
      -    "minItems": 1,
      -    "type": "array"
      -  }
      -}
    • removedInput schema / properties / body / properties / inspiration / required
      Removed value: -[
      -  "sources",
      -  "extractedAt",
      -  "extractionVersion"
      -]
    • removedInput schema / properties / body / properties / inspiration / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / intro / $ref
      Added value: +"#/$defs/__schema14"
    • removedInput schema / properties / body / properties / intro / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / intro / properties
      Removed value: -{
      -  "durationMs": {
      -    "type": "number"
      -  },
      -  "kind": {
      -    "enum": [
      -      "card",
      -      "video"
      -    ],
      -    "type": "string"
      -  },
      -  "src": {
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "subtitle": {
      -    "type": "string"
      -  },
      -  "title": {
      -    "type": "string"
      -  }
      -}
    • removedInput schema / properties / body / properties / intro / required
      Removed value: -[
      -  "kind"
      -]
    • removedInput schema / properties / body / properties / intro / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / kitId / $ref
      Added value: +"#/$defs/__schema0"
    • removedInput schema / properties / body / properties / kitId / maxLength
      Removed value: -200
    • removedInput schema / properties / body / properties / kitId / minLength
      Removed value: -1
    • removedInput schema / properties / body / properties / kitId / type
      Removed value: -"string"
    • addedInput schema / properties / body / properties / logo / $ref
      Added value: +"#/$defs/__schema13"
    • removedInput schema / properties / body / properties / logo / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / logo / properties
      Removed value: -{
      -  "alt": {
      -    "type": "string"
      -  },
      -  "placement": {
      -    "enum": [
      -      "tl",
      -      "tr",
      -      "bl",
      -      "br"
      -    ],
      -    "type": "string"
      -  },
      -  "sizePct": {
      -    "type": "number"
      -  },
      -  "src": {
      -    "minLength": 1,
      -    "type": "string"
      -  }
      -}
    • removedInput schema / properties / body / properties / logo / required
      Removed value: -[
      -  "src"
      -]
    • removedInput schema / properties / body / properties / logo / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / motifs / $ref
      Added value: +"#/$defs/__schema38"
    • removedInput schema / properties / body / properties / motifs / items
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "body": {
      -      "oneOf": [
      -        {
      -          "properties": {
      -            "html": {
      -              "minLength": 1,
      -              "type": "string"
      -            },
      -            "kind": {
      -              "const": "card",
      -              "type": "string"
      -            },
      -            "tokens": {
      -              "additionalProperties": {
      -                "type": "string"
      -              },
      -              "properties": {},
      -              "propertyNames": {
      -                "type": "string"
      -              },
      -              "type": "object"
      -            }
      -          },
      -          "required": [
      -            "kind",
      -            "html"
      -          ],
      -          "type": "object"
      -        },
      -        {
      -          "properties": {
      -            "kind": {
      -              "const": "overlay",
      -              "type": "string"
      -            },
      -            "params": {
      -              "additionalProperties": {},
      -              "properties": {},
      -              "propertyNames": {
      -                "type": "string"
      -              },
      -              "type": "object"
      -            },
      -            "primitiveId": {
      -              "minLength": 1,
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "kind",
      -            "primitiveId"
      -          ],
      -          "type": "object"
      -        },
      -        {
      -          "properties": {
      -            "componentId": {
      -              "minLength": 1,
      -              "type": "string"
      -            },
      -            "kind": {
      -              "const": "component",
      -              "type": "string"
      -            },
      -            "props": {
      -              "additionalProperties": {},
      -              "properties": {},
      -              "propertyNames": {
      -                "type": "string"
      -              },
      -              "type": "object"
      -            }
      -          },
      -          "required": [
      -            "kind",
      -            "componentId"
      -          ],
      -          "type": "object"
      -        }
      -      ]
      -    },
      -    "coverage": {
      -      "enum": [
      -        "reproduced",
      -        "approximated",
      -        "skipped"
      -      ],
      -      "type": "string"
      -    },
      -    "diffScore": {
      -      "maximum": 1,
      -      "minimum": 0,
      -      "type": "number"
      -    },
      -    "evidence": {
      -      "items": {
      -        "maximum": 9007199254740991,
      -        "minimum": 0,
      -        "type": "integer"
      -      },
      -      "maxItems": 24,
      -      "type": "array"
      -    },
      -    "id": {
      -      "maxLength": 40,
      -      "minLength": 1,
      -      "type": "string"
      -    },
      -    "motion": {
      -      "additionalProperties": false,
      -      "properties": {
      -        "confidence": {
      -          "enum": [
      -            "high",
      -            "low"
      -          ],
      -          "type": "string"
      -        },
      -        "enterMs": {
      -          "maximum": 5000,
      -          "minimum": 0,
      -          "type": "integer"
      -        },
      -        "exitMs": {
      -          "maximum": 5000,
      -          "minimum": 0,
      -          "type": "integer"
      -        },
      -        "preset": {
      -          "enum": [
      -            "fade-up",
      -            "slide-in-left",
      -            "slide-in-right",
      -            "scale-pop",
      -            "stagger-reveal"
      -          ],
      -          "type": "string"
      -        },
      -        "staggerMs": {
      -          "maximum": 2000,
      -          "minimum": 0,
      -          "type": "integer"
      -        }
      -      },
      -      "required": [
      -        "preset"
      -      ],
      -      "type": "object"
      -    },
      -    "observed": {
      -      "maxLength": 500,
      -      "minLength": 1,
      -      "type": "string"
      -    },
      -    "role": {
      -      "enum": [
      -        "title-card",
      -        "stat",
      -        "lower-third",
      -        "pull-quote",
      -        "hero",
      -        "logo-tag",
      -        "enumeration",
      -        "sequence",
      -        "comparison"
      -      ],
      -      "type": "string"
      -    },
      -    "skipReason": {
      -      "maxLength": 300,
      -      "type": "string"
      -    },
      -    "zone": {
      -      "additionalProperties": false,
      -      "properties": {
      -        "h": {
      -          "type": "number"
      -        },
      -        "w": {
      -          "type": "number"
      -        },
      -        "x": {
      -          "type": "number"
      -        },
      -        "y": {
      -          "type": "number"
      -        }
      -      },
      -      "required": [
      -        "x",
      -        "y",
      -        "w",
      -        "h"
      -      ],
      -      "type": "object"
      -    }
      -  },
      -  "required": [
      -    "id",
      -    "observed",
      -    "body",
      -    "role",
      -    "coverage"
      -  ],
      -  "type": "object"
      -}
    • removedInput schema / properties / body / properties / motifs / maxItems
      Removed value: -24
    • removedInput schema / properties / body / properties / motifs / type
      Removed value: -"array"
    • addedInput schema / properties / body / properties / motion / $ref
      Added value: +"#/$defs/__schema12"
    • removedInput schema / properties / body / properties / motion / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / motion / properties
      Removed value: -{
      -  "duration": {
      -    "type": "number"
      -  },
      -  "easing": {
      -    "anyOf": [
      -      {
      -        "enum": [
      -          "linear",
      -          "ease",
      -          "ease-in",
      -          "ease-out",
      -          "ease-in-out"
      -        ],
      -        "type": "string"
      -      },
      -      {
      -        "additionalProperties": false,
      -        "properties": {
      -          "kind": {
      -            "const": "cubic-bezier",
      -            "type": "string"
      -          },
      -          "x1": {
      -            "type": "number"
      -          },
      -          "x2": {
      -            "type": "number"
      -          },
      -          "y1": {
      -            "type": "number"
      -          },
      -          "y2": {
      -            "type": "number"
      -          }
      -        },
      -        "required": [
      -          "kind",
      -          "x1",
      -          "y1",
      -          "x2",
      -          "y2"
      -        ],
      -        "type": "object"
      -      }
      -    ]
      -  },
      -  "entrance": {
      -    "enum": [
      -      "none",
      -      "fade",
      -      "word-pop",
      -      "stagger-up"
      -    ],
      -    "type": "string"
      -  },
      -  "exitMs": {
      -    "type": "number"
      -  },
      -  "staggerMs": {
      -    "type": "number"
      -  }
      -}
    • removedInput schema / properties / body / properties / motion / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / name / $ref
      Added value: +"#/$defs/__schema1"
    • removedInput schema / properties / body / properties / name / maxLength
      Removed value: -200
    • removedInput schema / properties / body / properties / name / minLength
      Removed value: -1
    • removedInput schema / properties / body / properties / name / type
      Removed value: -"string"
    • addedInput schema / properties / body / properties / outro / $ref
      Added value: +"#/$defs/__schema15"
    • removedInput schema / properties / body / properties / outro / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / outro / properties
      Removed value: -{
      -  "durationMs": {
      -    "type": "number"
      -  },
      -  "kind": {
      -    "enum": [
      -      "card",
      -      "video"
      -    ],
      -    "type": "string"
      -  },
      -  "src": {
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  "subtitle": {
      -    "type": "string"
      -  },
      -  "title": {
      -    "type": "string"
      -  }
      -}
    • removedInput schema / properties / body / properties / outro / required
      Removed value: -[
      -  "kind"
      -]
    • removedInput schema / properties / body / properties / outro / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / secondaryTagline / $ref
      Added value: +"#/$defs/__schema4"
    • removedInput schema / properties / body / properties / secondaryTagline / maxLength
      Removed value: -500
    • removedInput schema / properties / body / properties / secondaryTagline / type
      Removed value: -"string"
    • addedInput schema / properties / body / properties / sizing / $ref
      Added value: +"#/$defs/__schema18"
    • removedInput schema / properties / body / properties / sizing / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / sizing / properties
      Removed value: -{
      -  "borderRadius": {
      -    "type": "number"
      -  },
      -  "fontSizeBody": {
      -    "type": "number"
      -  },
      -  "fontSizeHeading": {
      -    "type": "number"
      -  },
      -  "fontSizeLabel": {
      -    "type": "number"
      -  }
      -}
    • removedInput schema / properties / body / properties / sizing / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / spacing / $ref
      Added value: +"#/$defs/__schema17"
    • removedInput schema / properties / body / properties / spacing / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / spacing / properties
      Removed value: -{
      -  "base": {
      -    "type": "number"
      -  },
      -  "lg": {
      -    "type": "number"
      -  },
      -  "sm": {
      -    "type": "number"
      -  }
      -}
    • removedInput schema / properties / body / properties / spacing / type
      Removed value: -"object"
    • addedInput schema / properties / body / properties / styleRubric / $ref
      Added value: +"#/$defs/__schema41"
    • removedInput schema / properties / body / properties / styleRubric / maxLength
      Removed value: -4000
    • removedInput schema / properties / body / properties / styleRubric / type
      Removed value: -"string"
    • addedInput schema / properties / body / properties / syncCaptions / $ref
      Added value: +"#/$defs/__schema10"
    • removedInput schema / properties / body / properties / syncCaptions / type
      Removed value: -"boolean"
    • addedInput schema / properties / body / properties / tagline / $ref
      Added value: +"#/$defs/__schema3"
    • removedInput schema / properties / body / properties / tagline / maxLength
      Removed value: -500
    • removedInput schema / properties / body / properties / tagline / type
      Removed value: -"string"
    • addedInput schema / properties / body / properties / voiceGuidelines / $ref
      Added value: +"#/$defs/__schema9"
    • removedInput schema / properties / body / properties / voiceGuidelines / maxLength
      Removed value: -5000
    • removedInput schema / properties / body / properties / voiceGuidelines / type
      Removed value: -"string"
    • addedInput schema / properties / body / properties / watermark / $ref
      Added value: +"#/$defs/__schema16"
    • removedInput schema / properties / body / properties / watermark / additionalProperties
      Removed value: -false
    • removedInput schema / properties / body / properties / watermark / properties
      Removed value: -{
      -  "opacity": {
      -    "maximum": 1,
      -    "minimum": 0,
      -    "type": "number"
      -  },
      -  "placement": {
      -    "enum": [
      -      "tl",
      -      "tr",
      -      "bl",
      -      "br"
      -    ],
      -    "type": "string"
      -  },
      -  "src": {
      -    "minLength": 1,
      -    "type": "string"
      -  }
      -}
    • removedInput schema / properties / body / properties / watermark / required
      Removed value: -[
      -  "src"
      -]
    • removedInput schema / properties / body / properties / watermark / type
      Removed value: -"object"
    • addedInput schema / properties / commandId / $ref
      Added value: +"#/$defs/__schema45"
    • removedInput schema / properties / commandId / maxLength
      Removed value: -128
    • removedInput schema / properties / commandId / minLength
      Removed value: -1
    • removedInput schema / properties / commandId / type
      Removed value: -"string"
  3. Changed1 schema field changed
    • addedInput schema / properties / commandId
      Added value: +{
      +  "description": "Retry identity. A call repeated with the same commandId returns the first result instead of acting twice.",
      +  "maxLength": 128,
      +  "minLength": 1,
      +  "type": "string"
      +}
  4. Changed2 schema fields changed
    • removedInput schema / properties / body / properties / motifs / items / properties / body / anyOf
      Removed value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "html": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "kind": {
      -        "const": "card",
      -        "type": "string"
      -      },
      -      "tokens": {
      -        "additionalProperties": {
      -          "type": "string"
      -        },
      -        "propertyNames": {
      -          "type": "string"
      -        },
      -        "type": "object"
      -      }
      -    },
      -    "required": [
      -      "kind",
      -      "html"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "kind": {
      -        "const": "overlay",
      -        "type": "string"
      -      },
      -      "params": {
      -        "additionalProperties": {},
      -        "propertyNames": {
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "primitiveId": {
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "kind",
      -      "primitiveId"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "componentId": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "kind": {
      -        "const": "component",
      -        "type": "string"
      -      },
      -      "props": {
      -        "additionalProperties": {},
      -        "propertyNames": {
      -          "type": "string"
      -        },
      -        "type": "object"
      -      }
      -    },
      -    "required": [
      -      "kind",
      -      "componentId"
      -    ],
      -    "type": "object"
      -  }
      -]
    • addedInput schema / properties / body / properties / motifs / items / properties / body / oneOf
      Added value: +[
      +  {
      +    "properties": {
      +      "html": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "kind": {
      +        "const": "card",
      +        "type": "string"
      +      },
      +      "tokens": {
      +        "additionalProperties": {
      +          "type": "string"
      +        },
      +        "properties": {},
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      }
      +    },
      +    "required": [
      +      "kind",
      +      "html"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "properties": {
      +      "kind": {
      +        "const": "overlay",
      +        "type": "string"
      +      },
      +      "params": {
      +        "additionalProperties": {},
      +        "properties": {},
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "primitiveId": {
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "kind",
      +      "primitiveId"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "properties": {
      +      "componentId": {
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "kind": {
      +        "const": "component",
      +        "type": "string"
      +      },
      +      "props": {
      +        "additionalProperties": {},
      +        "properties": {},
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      }
      +    },
      +    "required": [
      +      "kind",
      +      "componentId"
      +    ],
      +    "type": "object"
      +  }
      +]
  5. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Goes well beyond annotations by disclosing upsert semantics (re-POSTing same kitId updates in place), tenant scoping (no project arg), and the cross-tool effect on rendering. There is a mild tension with idempotentHint=false, though that hint concerns environment no-ops while the description describes an in-place update, so it is not a clear contradiction.

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 verb+resource, then workflow, then consequences—logical ordering. It's dense with parentheticals and all-caps emphasis that could be tightened, but each sentence carries real information.

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?

Output schema exists, so return values aren't needed. Description covers the important context: upsert behavior, workflow step, binding path, and tenant scoping—enough to call it correctly. It leaves out how the tool relates to extract_brand_kit and the many optional body fields.

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%, so the schema already documents the body fields; the description only names kitId, fonts, colors, and logo. This adds the meaningful kitId upsert semantic, but says nothing about the many other body fields, 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?

States a specific verb+resource: 'Create or UPSERT a brand kit' and clarifies it also serves as the UPDATE path. Distinctly scoped as the authoring entry point ('brand step 0'). Minor gap: it doesn't disambiguate from the sibling extract_brand_kit, which is another way to obtain a brand kit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly tells the agent when and how to use it: author the kit, then bind it via create_project (kitId as brandKitId) or update_project. It names the concrete alternative consumers and warns that without binding, create_render produces UNBRANDED output. This is exactly the when/alternatives/consequence guidance the dimension wants.

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.