Default model tools

identity_apply_to_project

Apply Brand Studio identity to project

Model-visible Signature apply for saving authored or selected Brand Studio defaults. Saves project defaults as account-library refs for NEW highlight reels; future episode_create calls with identity:"project_default" then apply it as the user's branding. It also saves a previewed authored scene as the project's default opener or outro. Accepts opener/outro preset strings or structured slot objects, materializes them into the account identity library, imports alternates into the library without storing project alternates, validates enabled packs through the frozen identity resolver, writes an apply receipt, prewarms opener/outro sources through the existing identity moment bake path, and broadcasts the update to open editors. On first apply, enabled/enabled_for_reels:true turns identity on; omitting both flags saves the pack disabled. uses_title is true only for title-enabled openers/outros; static assets keep it false, so opener_title produces the typed ignored warning. cut_style_id:"none" (or a cut_style style_id of "none") selects normal cuts with no branded seam layer.

Surface: Default model and app

Product release eb8538f4a297f331d0399351c1e175bffcd212d2
Public contract commit 20688e11af473a363145ed880d5019c90a7ec1e2
Public contract SHA-256 87a94b85a84dc19245fc03f9b544c70d64bd9f5e08585dcccb38157cace5700d
Captured 2026-10-04T11:55:45.577Z. Review or improve this contract on GitHub.

These blocks show the complete MCP descriptors captured from serving Rails. Security schemes and resource URIs can differ by connected host.

Default model descriptor

{
  "name": "identity_apply_to_project",
  "title": "Apply Brand Studio identity to project",
  "description": "Model-visible Signature apply for saving authored or selected Brand Studio defaults. Saves project defaults as account-library refs for NEW highlight reels; future episode_create calls with identity:\"project_default\" then apply it as the user's branding. It also saves a previewed authored scene as the project's default opener or outro. Accepts opener/outro preset strings or structured slot objects, materializes them into the account identity library, imports alternates into the library without storing project alternates, validates enabled packs through the frozen identity resolver, writes an apply receipt, prewarms opener/outro sources through the existing identity moment bake path, and broadcasts the update to open editors. On first apply, enabled/enabled_for_reels:true turns identity on; omitting both flags saves the pack disabled. uses_title is true only for title-enabled openers/outros; static assets keep it false, so opener_title produces the typed ignored warning. cut_style_id:\"none\" (or a cut_style style_id of \"none\") selects normal cuts with no branded seam layer.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "project_id": {
        "type": "string",
        "description": "Project public ID."
      },
      "brand_id": {
        "type": "string",
        "description": "Identity brand id. Defaults to the current project identity or BitterClip."
      },
      "opener_preset_id": {
        "type": [
          "string",
          "object",
          "null"
        ],
        "description": "Source-backed opener preset id or structured opener slot {preset_id, params, gain_db}.",
        "properties": {
          "preset_id": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "params": {
            "type": "object"
          },
          "gain_db": {
            "type": "number"
          },
          "uses_title": {
            "type": "boolean",
            "description": "When true, new reels may fill this opener's title slot from episode_create opener_title."
          }
        }
      },
      "cut_style_id": {
        "type": [
          "string",
          "null"
        ],
        "description": "Duration-neutral cut style id; none/null selects normal cuts with no branded seam layer."
      },
      "cut_style": {
        "type": [
          "object",
          "null"
        ],
        "description": "Optional duration-neutral cut style payload. Used by Brand Studio controls for intensity/density without changing segment durations. style_id:none/null clears the slot.",
        "properties": {
          "style_id": {
            "type": [
              "string",
              "null"
            ]
          },
          "intensity": {
            "type": "string"
          },
          "density": {
            "type": "string"
          }
        }
      },
      "outro_preset_id": {
        "type": [
          "string",
          "object",
          "null"
        ],
        "description": "Source-backed outro preset id or structured outro slot {preset_id, params, gain_db}.",
        "properties": {
          "preset_id": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "params": {
            "type": "object"
          },
          "gain_db": {
            "type": "number"
          },
          "uses_title": {
            "type": "boolean",
            "description": "Reserved for title-capable source-backed slots; default false."
          }
        }
      },
      "music_bed": {
        "type": "object",
        "description": "Music-bed slot: enabled:false means no bed, and library_entry_id selects an account-owned bed. Fades and ducking are optional; omitted values keep the current setting or the server defaults (400ms in, 1200ms out, 0dB duck).",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "library_entry_id": {
            "type": "string"
          },
          "span": {
            "type": "string",
            "enum": [
              "content_only",
              "content_and_outro"
            ]
          },
          "fit": {
            "type": "string",
            "enum": [
              "trim",
              "loop"
            ]
          },
          "gain_db": {
            "type": "number"
          },
          "duck_db": {
            "type": "number"
          },
          "fade_in_ms": {
            "type": "integer",
            "description": "Fade-in length in milliseconds."
          },
          "fade_out_ms": {
            "type": "integer",
            "description": "Fade-out length in milliseconds."
          }
        }
      },
      "alternates": {
        "type": "object",
        "description": "Additive library entries by role. Supported keys: opener, outro, cut_style/cut_effect, music_bed. Opener/outro/cut_style entries are added to the account library; project defaults remain explicit refs only."
      },
      "star_alternate": {
        "type": "object",
        "description": "Promote a saved account-library entry to the project role default without mutating existing compositions. Shape: {role, library_entry_id}, {role, index}, or {role, alternate}.",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "opener",
              "outro",
              "cut_style",
              "cut_effect",
              "music_bed"
            ]
          },
          "index": {
            "type": "integer"
          },
          "alternate": {
            "type": "object"
          },
          "library_entry_id": {
            "type": "string"
          }
        }
      },
      "enabled": {
        "type": "boolean",
        "description": "Whether the identity pack is enabled for future reels. Required to be true on first apply when the caller intends to turn identity on; omitted first apply defaults false."
      },
      "enabled_for_reels": {
        "type": "boolean",
        "description": "Alias for enabled, matching Brand Studio UI language. Required to be true on first apply when the caller intends to turn identity on; omitted first apply defaults false."
      },
      "prewarm": {
        "type": "boolean",
        "description": "Whether to enqueue opener/outro source-backed prewarm. Defaults true."
      }
    },
    "required": [
      "project_id"
    ],
    "additionalProperties": false
  },
  "annotations": {
    "title": "Apply Brand Studio identity to project",
    "readOnlyHint": false,
    "destructiveHint": false,
    "idempotentHint": true,
    "openWorldHint": false
  },
  "securitySchemes": [
    {
      "type": "noauth"
    }
  ],
  "_meta": {
    "securitySchemes": [
      {
        "type": "noauth"
      }
    ],
    "ui": {
      "visibility": [
        "model",
        "app"
      ]
    },
    "openai/widgetAccessible": true
  }
}

App descriptor

{
  "name": "identity_apply_to_project",
  "title": "Apply Brand Studio identity to project",
  "description": "Model-visible Signature apply for saving authored or selected Brand Studio defaults. Saves project defaults as account-library refs for NEW highlight reels; future episode_create calls with identity:\"project_default\" then apply it as the user's branding. It also saves a previewed authored scene as the project's default opener or outro. Accepts opener/outro preset strings or structured slot objects, materializes them into the account identity library, imports alternates into the library without storing project alternates, validates enabled packs through the frozen identity resolver, writes an apply receipt, prewarms opener/outro sources through the existing identity moment bake path, and broadcasts the update to open editors. On first apply, enabled/enabled_for_reels:true turns identity on; omitting both flags saves the pack disabled. uses_title is true only for title-enabled openers/outros; static assets keep it false, so opener_title produces the typed ignored warning. cut_style_id:\"none\" (or a cut_style style_id of \"none\") selects normal cuts with no branded seam layer.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "project_id": {
        "type": "string",
        "description": "Project public ID."
      },
      "brand_id": {
        "type": "string",
        "description": "Identity brand id. Defaults to the current project identity or BitterClip."
      },
      "opener_preset_id": {
        "type": [
          "string",
          "object",
          "null"
        ],
        "description": "Source-backed opener preset id or structured opener slot {preset_id, params, gain_db}.",
        "properties": {
          "preset_id": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "params": {
            "type": "object"
          },
          "gain_db": {
            "type": "number"
          },
          "uses_title": {
            "type": "boolean",
            "description": "When true, new reels may fill this opener's title slot from episode_create opener_title."
          }
        }
      },
      "cut_style_id": {
        "type": [
          "string",
          "null"
        ],
        "description": "Duration-neutral cut style id; none/null selects normal cuts with no branded seam layer."
      },
      "cut_style": {
        "type": [
          "object",
          "null"
        ],
        "description": "Optional duration-neutral cut style payload. Used by Brand Studio controls for intensity/density without changing segment durations. style_id:none/null clears the slot.",
        "properties": {
          "style_id": {
            "type": [
              "string",
              "null"
            ]
          },
          "intensity": {
            "type": "string"
          },
          "density": {
            "type": "string"
          }
        }
      },
      "outro_preset_id": {
        "type": [
          "string",
          "object",
          "null"
        ],
        "description": "Source-backed outro preset id or structured outro slot {preset_id, params, gain_db}.",
        "properties": {
          "preset_id": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "params": {
            "type": "object"
          },
          "gain_db": {
            "type": "number"
          },
          "uses_title": {
            "type": "boolean",
            "description": "Reserved for title-capable source-backed slots; default false."
          }
        }
      },
      "music_bed": {
        "type": "object",
        "description": "Music-bed slot: enabled:false means no bed, and library_entry_id selects an account-owned bed. Fades and ducking are optional; omitted values keep the current setting or the server defaults (400ms in, 1200ms out, 0dB duck).",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "library_entry_id": {
            "type": "string"
          },
          "span": {
            "type": "string",
            "enum": [
              "content_only",
              "content_and_outro"
            ]
          },
          "fit": {
            "type": "string",
            "enum": [
              "trim",
              "loop"
            ]
          },
          "gain_db": {
            "type": "number"
          },
          "duck_db": {
            "type": "number"
          },
          "fade_in_ms": {
            "type": "integer",
            "description": "Fade-in length in milliseconds."
          },
          "fade_out_ms": {
            "type": "integer",
            "description": "Fade-out length in milliseconds."
          }
        }
      },
      "alternates": {
        "type": "object",
        "description": "Additive library entries by role. Supported keys: opener, outro, cut_style/cut_effect, music_bed. Opener/outro/cut_style entries are added to the account library; project defaults remain explicit refs only."
      },
      "star_alternate": {
        "type": "object",
        "description": "Promote a saved account-library entry to the project role default without mutating existing compositions. Shape: {role, library_entry_id}, {role, index}, or {role, alternate}.",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "opener",
              "outro",
              "cut_style",
              "cut_effect",
              "music_bed"
            ]
          },
          "index": {
            "type": "integer"
          },
          "alternate": {
            "type": "object"
          },
          "library_entry_id": {
            "type": "string"
          }
        }
      },
      "enabled": {
        "type": "boolean",
        "description": "Whether the identity pack is enabled for future reels. Required to be true on first apply when the caller intends to turn identity on; omitted first apply defaults false."
      },
      "enabled_for_reels": {
        "type": "boolean",
        "description": "Alias for enabled, matching Brand Studio UI language. Required to be true on first apply when the caller intends to turn identity on; omitted first apply defaults false."
      },
      "prewarm": {
        "type": "boolean",
        "description": "Whether to enqueue opener/outro source-backed prewarm. Defaults true."
      }
    },
    "required": [
      "project_id"
    ],
    "additionalProperties": false
  },
  "annotations": {
    "title": "Apply Brand Studio identity to project",
    "readOnlyHint": false,
    "destructiveHint": false,
    "idempotentHint": true,
    "openWorldHint": false
  },
  "securitySchemes": [
    {
      "type": "noauth"
    }
  ],
  "_meta": {
    "securitySchemes": [
      {
        "type": "noauth"
      }
    ],
    "ui": {
      "visibility": [
        "model",
        "app"
      ]
    },
    "openai/widgetAccessible": true
  },
  "outputSchema": {
    "type": "object",
    "properties": {
      "applied": {
        "type": "boolean"
      },
      "receipt": {
        "type": "object"
      },
      "prewarm": {
        "type": "object"
      },
      "brand_identity": {
        "type": "object"
      },
      "blockers": {
        "type": "array",
        "items": {
          "type": "object"
        }
      },
      "schema": {
        "type": "string",
        "description": "Project identity state schema identifier, bitterclip.brand_identity_project_state.v0."
      },
      "project_id": {
        "type": "string",
        "description": "Project public ID."
      },
      "project_title": {
        "type": "string",
        "description": "Project title."
      },
      "options": {
        "type": "object",
        "description": "Brands, opener and outro presets, cut styles and FX templates available to this Project."
      },
      "music_beds": {
        "type": "array",
        "items": {
          "type": "object"
        },
        "description": "Music beds available to this Project."
      },
      "account_scenes": {
        "type": "array",
        "items": {
          "type": "object"
        },
        "description": "Account FX scenes available to this Project."
      }
    },
    "required": [],
    "additionalProperties": false
  }
}

Live Workspace descriptor

{
  "name": "identity_apply_to_project",
  "title": "Apply Brand Studio identity to project",
  "description": "Model-visible Signature apply for saving authored or selected Brand Studio defaults. Saves project defaults as account-library refs for NEW highlight reels; future episode_create calls with identity:\"project_default\" then apply it as the user's branding. It also saves a previewed authored scene as the project's default opener or outro. Accepts opener/outro preset strings or structured slot objects, materializes them into the account identity library, imports alternates into the library without storing project alternates, validates enabled packs through the frozen identity resolver, writes an apply receipt, prewarms opener/outro sources through the existing identity moment bake path, and broadcasts the update to open editors. On first apply, enabled/enabled_for_reels:true turns identity on; omitting both flags saves the pack disabled. uses_title is true only for title-enabled openers/outros; static assets keep it false, so opener_title produces the typed ignored warning. cut_style_id:\"none\" (or a cut_style style_id of \"none\") selects normal cuts with no branded seam layer.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "project_id": {
        "type": "string",
        "description": "Project public ID."
      },
      "brand_id": {
        "type": "string",
        "description": "Identity brand id. Defaults to the current project identity or BitterClip."
      },
      "opener_preset_id": {
        "type": [
          "string",
          "object",
          "null"
        ],
        "description": "Source-backed opener preset id or structured opener slot {preset_id, params, gain_db}.",
        "properties": {
          "preset_id": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "params": {
            "type": "object"
          },
          "gain_db": {
            "type": "number"
          },
          "uses_title": {
            "type": "boolean",
            "description": "When true, new reels may fill this opener's title slot from episode_create opener_title."
          }
        }
      },
      "cut_style_id": {
        "type": [
          "string",
          "null"
        ],
        "description": "Duration-neutral cut style id; none/null selects normal cuts with no branded seam layer."
      },
      "cut_style": {
        "type": [
          "object",
          "null"
        ],
        "description": "Optional duration-neutral cut style payload. Used by Brand Studio controls for intensity/density without changing segment durations. style_id:none/null clears the slot.",
        "properties": {
          "style_id": {
            "type": [
              "string",
              "null"
            ]
          },
          "intensity": {
            "type": "string"
          },
          "density": {
            "type": "string"
          }
        }
      },
      "outro_preset_id": {
        "type": [
          "string",
          "object",
          "null"
        ],
        "description": "Source-backed outro preset id or structured outro slot {preset_id, params, gain_db}.",
        "properties": {
          "preset_id": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "params": {
            "type": "object"
          },
          "gain_db": {
            "type": "number"
          },
          "uses_title": {
            "type": "boolean",
            "description": "Reserved for title-capable source-backed slots; default false."
          }
        }
      },
      "music_bed": {
        "type": "object",
        "description": "Music-bed slot: enabled:false means no bed, and library_entry_id selects an account-owned bed. Fades and ducking are optional; omitted values keep the current setting or the server defaults (400ms in, 1200ms out, 0dB duck).",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "library_entry_id": {
            "type": "string"
          },
          "span": {
            "type": "string",
            "enum": [
              "content_only",
              "content_and_outro"
            ]
          },
          "fit": {
            "type": "string",
            "enum": [
              "trim",
              "loop"
            ]
          },
          "gain_db": {
            "type": "number"
          },
          "duck_db": {
            "type": "number"
          },
          "fade_in_ms": {
            "type": "integer",
            "description": "Fade-in length in milliseconds."
          },
          "fade_out_ms": {
            "type": "integer",
            "description": "Fade-out length in milliseconds."
          }
        }
      },
      "alternates": {
        "type": "object",
        "description": "Additive library entries by role. Supported keys: opener, outro, cut_style/cut_effect, music_bed. Opener/outro/cut_style entries are added to the account library; project defaults remain explicit refs only."
      },
      "star_alternate": {
        "type": "object",
        "description": "Promote a saved account-library entry to the project role default without mutating existing compositions. Shape: {role, library_entry_id}, {role, index}, or {role, alternate}.",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "opener",
              "outro",
              "cut_style",
              "cut_effect",
              "music_bed"
            ]
          },
          "index": {
            "type": "integer"
          },
          "alternate": {
            "type": "object"
          },
          "library_entry_id": {
            "type": "string"
          }
        }
      },
      "enabled": {
        "type": "boolean",
        "description": "Whether the identity pack is enabled for future reels. Required to be true on first apply when the caller intends to turn identity on; omitted first apply defaults false."
      },
      "enabled_for_reels": {
        "type": "boolean",
        "description": "Alias for enabled, matching Brand Studio UI language. Required to be true on first apply when the caller intends to turn identity on; omitted first apply defaults false."
      },
      "prewarm": {
        "type": "boolean",
        "description": "Whether to enqueue opener/outro source-backed prewarm. Defaults true."
      }
    },
    "required": [
      "project_id"
    ],
    "additionalProperties": false
  },
  "annotations": {
    "title": "Apply Brand Studio identity to project",
    "readOnlyHint": false,
    "destructiveHint": false,
    "idempotentHint": true,
    "openWorldHint": false
  },
  "securitySchemes": [
    {
      "type": "noauth"
    }
  ],
  "_meta": {
    "securitySchemes": [
      {
        "type": "noauth"
      }
    ]
  },
  "outputSchema": {
    "type": "object",
    "properties": {
      "applied": {
        "type": "boolean"
      },
      "receipt": {
        "type": "object"
      },
      "prewarm": {
        "type": "object"
      },
      "brand_identity": {
        "type": "object"
      },
      "blockers": {
        "type": "array",
        "items": {
          "type": "object"
        }
      },
      "schema": {
        "type": "string",
        "description": "Project identity state schema identifier, bitterclip.brand_identity_project_state.v0."
      },
      "project_id": {
        "type": "string",
        "description": "Project public ID."
      },
      "project_title": {
        "type": "string",
        "description": "Project title."
      },
      "options": {
        "type": "object",
        "description": "Brands, opener and outro presets, cut styles and FX templates available to this Project."
      },
      "music_beds": {
        "type": "array",
        "items": {
          "type": "object"
        },
        "description": "Music beds available to this Project."
      },
      "account_scenes": {
        "type": "array",
        "items": {
          "type": "object"
        },
        "description": "Account FX scenes available to this Project."
      }
    },
    "required": [],
    "additionalProperties": false
  }
}

Errors

[
  "project_not_found",
  "invalid_input",
  "identity_music_bed_not_found"
]

Examples

[]