Skip to main content
Glama

create_decoration_preset_branch

Fork a new branch from a specific decoration preset version to create variant designs while preserving version history. Requires Kiln Pro.

Instructions

Fork a new branch from a specific preset version.

Needs Kiln Pro.

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": {
      "preset_id": "<preset_id>"
    },
    "name": "create_decoration_preset_branch"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameNoThe new branch's name, when the person said one. Must not match a non-retired branch of the same preset (``BRANCH_EXISTS``). Omit it to let Kiln name the branch.
preset_idYesId of the preset the branch belongs to. Must not be empty.
annotationNoWhat the branch is trying, in the person's own words (``"holiday 2026 variant"``). Stored on the branch; names it when ``name`` is omitted. Default: "".
created_byNoLabel recorded as the branch's creator, stored as given. Omit it to record none.
parent_branch_idNoId of the branch this one forks from, recorded for lineage. A retired or unknown parent is refused. Omit it for a branch with no parent.
base_preset_version_idNoPreset version id the branch starts from; it becomes the branch's head. Omit it to create a branch with no versions yet.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed7 schema fields changedv1.5.1
    • changedInput schema / properties / annotation / description
      Previous value: -"Default: \"\"."New value: +"What the branch is trying, in the person's own words (``\"holiday 2026 variant\"``).  Stored on the branch; names it when ``name`` is omitted. Default: \"\"."
    • addedInput schema / properties / base_preset_version_id / description
      Added value: +"Preset version id the branch starts from; it becomes the branch's head.  Omit it to create a branch with no versions yet."
    • addedInput schema / properties / created_by / description
      Added value: +"Label recorded as the branch's creator, stored as given.  Omit it to record none."
    • addedInput schema / properties / name / description
      Added value: +"The new branch's name, when the person said one.  Must not match a non-retired branch of the same preset (``BRANCH_EXISTS``).  Omit it to let Kiln name the branch."
    • addedInput schema / properties / parent_branch_id / description
      Added value: +"Id of the branch this one forks from, recorded for lineage.  A retired or unknown parent is refused. Omit it for a branch with no parent."
    • addedInput schema / properties / preset_id / description
      Added value: +"Id of the preset the branch belongs to.  Must not be empty."
    • changedInput schema / required
      Previous value: -[
      -  "preset_id",
      -  "name"
      -]New value: +[
      +  "preset_id"
      +]
  2. Addedv1.5.0

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds a real behavioral constraint beyond that — the Kiln Pro tier requirement — but says nothing about what the fork inherits, whether the branch is created locally or pushed to cloud, or any side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, zero filler, with the core action front-loaded and the prerequisite isolated on its own line so it is easy to scan.

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?

For a six-parameter mutation tool with full schema coverage, no output schema, and annotations covering the safety profile, the description covers what the tool does and the one external prerequisite. It could say more about lineage/inheritance behavior, but nothing essential to correct invocation is missing.

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 description coverage is 100%, so every parameter (including name, annotation, parent_branch_id, and base_preset_version_id) is already documented with constraints and error codes. The description's phrase "from a specific preset version" only gestures at base_preset_version_id without adding meaning beyond the schema, so the baseline 3 applies.

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?

"Fork a new branch from a specific preset version" gives a specific verb (fork/create), a resource (branch), and an origin (a preset version), so the agent can distinguish it from list_decoration_preset_branches or create_decoration_preset. It stops short of naming a confusing sibling such as rebase_preset_branch, which would have earned a 5.

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

Usage Guidelines3/5

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

"Needs Kiln Pro" is a useful gating condition for calling the tool, but there is no explicit when-to-use guidance versus alternatives (e.g., when to branch instead of applying a preset directly, or how it relates to rebase/merge preset branch tools). Usage is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools