Default model tools

brand_pack_write

Write account Brand Studio pack

Creates or updates an account-scoped brand pack for an accessible Project: wordmark, organization, palette, fonts, tagline and optional ingested logo. Account IDs are namespaced to avoid collisions with curated packs. Brand is reusable context for programmable scenes, not a fixed visual template. Writing a pack changes no production; a scene that uses it is applied to a production by a separate explicit call.

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": "brand_pack_write",
  "title": "Write account Brand Studio pack",
  "description": "Creates or updates an account-scoped brand pack for an accessible Project: wordmark, organization, palette, fonts, tagline and optional ingested logo. Account IDs are namespaced to avoid collisions with curated packs. Brand is reusable context for programmable scenes, not a fixed visual template. Writing a pack changes no production; a scene that uses it is applied to a production by a separate explicit call.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "project_id": {
        "type": "string",
        "description": "Project public ID; this is the account boundary for the brand pack."
      },
      "brand_id": {
        "type": "string",
        "description": "Requested brand id. It will be normalized/prefixed to acct-... unless already prefixed."
      },
      "pack_id": {
        "type": "string",
        "description": "Alias for brand_id."
      },
      "name": {
        "type": "string"
      },
      "wordmark": {
        "type": "string"
      },
      "organization": {
        "type": "string"
      },
      "tagline": {
        "type": "string"
      },
      "palette": {
        "type": "object",
        "description": "Partial palette override, e.g. {background, text, accent, accent2, line}."
      },
      "fonts": {
        "type": "object",
        "description": "Partial typography override, e.g. {family, cssFamily, weight, letterSpacing}."
      },
      "logo_asset_id": {
        "type": "string",
        "description": "Asset id returned by identity_asset_ingest."
      },
      "document": {
        "type": "object",
        "description": "Optional full or partial identity-studio.brand.v0 document. Explicit scalar args win where supplied."
      }
    },
    "required": [
      "project_id"
    ],
    "additionalProperties": false
  },
  "annotations": {
    "title": "Write account Brand Studio pack",
    "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": "brand_pack_write",
  "title": "Write account Brand Studio pack",
  "description": "Creates or updates an account-scoped brand pack for an accessible Project: wordmark, organization, palette, fonts, tagline and optional ingested logo. Account IDs are namespaced to avoid collisions with curated packs. Brand is reusable context for programmable scenes, not a fixed visual template. Writing a pack changes no production; a scene that uses it is applied to a production by a separate explicit call.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "project_id": {
        "type": "string",
        "description": "Project public ID; this is the account boundary for the brand pack."
      },
      "brand_id": {
        "type": "string",
        "description": "Requested brand id. It will be normalized/prefixed to acct-... unless already prefixed."
      },
      "pack_id": {
        "type": "string",
        "description": "Alias for brand_id."
      },
      "name": {
        "type": "string"
      },
      "wordmark": {
        "type": "string"
      },
      "organization": {
        "type": "string"
      },
      "tagline": {
        "type": "string"
      },
      "palette": {
        "type": "object",
        "description": "Partial palette override, e.g. {background, text, accent, accent2, line}."
      },
      "fonts": {
        "type": "object",
        "description": "Partial typography override, e.g. {family, cssFamily, weight, letterSpacing}."
      },
      "logo_asset_id": {
        "type": "string",
        "description": "Asset id returned by identity_asset_ingest."
      },
      "document": {
        "type": "object",
        "description": "Optional full or partial identity-studio.brand.v0 document. Explicit scalar args win where supplied."
      }
    },
    "required": [
      "project_id"
    ],
    "additionalProperties": false
  },
  "annotations": {
    "title": "Write account Brand Studio pack",
    "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": {
      "brand_pack": {
        "type": "object",
        "description": "Account-scoped brand pack row with brand_id/pack_id and brand_url."
      },
      "warnings": {
        "type": "array",
        "items": {
          "type": "object"
        }
      },
      "schema": {
        "type": "string",
        "description": "Receipt schema identifier, bitterclip.brand_pack_write_receipt.v0."
      },
      "project_id": {
        "type": "string",
        "description": "Project public ID the brand pack was written through."
      },
      "blockers": {
        "type": "array",
        "items": {
          "type": "object"
        },
        "description": "Typed blockers; empty when the call succeeded."
      }
    },
    "required": [],
    "additionalProperties": false
  }
}

Live Workspace descriptor

{
  "name": "brand_pack_write",
  "title": "Write account Brand Studio pack",
  "description": "Creates or updates an account-scoped brand pack for an accessible Project: wordmark, organization, palette, fonts, tagline and optional ingested logo. Account IDs are namespaced to avoid collisions with curated packs. Brand is reusable context for programmable scenes, not a fixed visual template. Writing a pack changes no production; a scene that uses it is applied to a production by a separate explicit call.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "project_id": {
        "type": "string",
        "description": "Project public ID; this is the account boundary for the brand pack."
      },
      "brand_id": {
        "type": "string",
        "description": "Requested brand id. It will be normalized/prefixed to acct-... unless already prefixed."
      },
      "pack_id": {
        "type": "string",
        "description": "Alias for brand_id."
      },
      "name": {
        "type": "string"
      },
      "wordmark": {
        "type": "string"
      },
      "organization": {
        "type": "string"
      },
      "tagline": {
        "type": "string"
      },
      "palette": {
        "type": "object",
        "description": "Partial palette override, e.g. {background, text, accent, accent2, line}."
      },
      "fonts": {
        "type": "object",
        "description": "Partial typography override, e.g. {family, cssFamily, weight, letterSpacing}."
      },
      "logo_asset_id": {
        "type": "string",
        "description": "Asset id returned by identity_asset_ingest."
      },
      "document": {
        "type": "object",
        "description": "Optional full or partial identity-studio.brand.v0 document. Explicit scalar args win where supplied."
      }
    },
    "required": [
      "project_id"
    ],
    "additionalProperties": false
  },
  "annotations": {
    "title": "Write account Brand Studio pack",
    "readOnlyHint": false,
    "destructiveHint": false,
    "idempotentHint": true,
    "openWorldHint": false
  },
  "securitySchemes": [
    {
      "type": "noauth"
    }
  ],
  "_meta": {
    "securitySchemes": [
      {
        "type": "noauth"
      }
    ]
  },
  "outputSchema": {
    "type": "object",
    "properties": {
      "brand_pack": {
        "type": "object",
        "description": "Account-scoped brand pack row with brand_id/pack_id and brand_url."
      },
      "warnings": {
        "type": "array",
        "items": {
          "type": "object"
        }
      },
      "schema": {
        "type": "string",
        "description": "Receipt schema identifier, bitterclip.brand_pack_write_receipt.v0."
      },
      "project_id": {
        "type": "string",
        "description": "Project public ID the brand pack was written through."
      },
      "blockers": {
        "type": "array",
        "items": {
          "type": "object"
        },
        "description": "Typed blockers; empty when the call succeeded."
      }
    },
    "required": [],
    "additionalProperties": false
  }
}

Errors

[
  "project_not_found",
  "invalid_input"
]

Examples

[
  {
    "label": "Build a two-tone reveal brand",
    "input": {
      "project_id": "show_...",
      "brand_id": "acme-two-tone",
      "wordmark": "Acme",
      "organization": "Acme Labs",
      "tagline": "proof in motion",
      "palette": {
        "background": "#101820",
        "text": "#f7f2e8",
        "accent": "#ff6b4a",
        "accent2": "#4fc3f7"
      },
      "logo_asset_id": "ibrandasset_..."
    }
  }
]