---
title: "update_storyboard: Update a film"
description: "Change a film's own properties in one call; only the fields you send change."
canonical_url: "https://meetkuro.com/agents/tools/update_storyboard/"
updated: 2026-11-03
locale: "en"
tool: "update_storyboard"
scopes: ["storyboards.write"]
---

# update_storyboard

**Update a film**

Change a film's own properties in one call; only the fields you send change. name; description (null clears it); user_tags (replaces the account's own tags, never the Organizer's); favorite; cover_scene (that scene's still becomes the cover); cast (replaces it with the Subjects named, which list_subjects finds; empty casts nobody); settings (aspect ratio, default image and clip models, clip resolution and audio, style by id or name, null takes the film off a style — scenes whose takes no longer fit are re-fitted and listed); archived (reversible, the first answer to a film the user no longer wants; delete_storyboard is the permanent one). One undo step; undo_storyboard takes it back. Spends no credits.

## Scope

- `storyboards.write` — Authors, edits, renders and deletes storyboards. Reading a board rides media.read, and the two board tools that spend need generation.write as well.

## Behaviour

- **Writes**: Creates or changes items in the caller's own account.
- **Can delete or overwrite**: Can delete, overwrite, cancel or withdraw something the caller already has, so a host should confirm it.
- **Stays in the account**: Stays inside the caller's private Kuro account: any media provider it calls acts on Kuro's account, and the result is visible to no one else.

## Credits

What the tool's description says about credits, verbatim:

- Spends no credits.

## Inputs

| Name | Type | Required | Details |
| --- | --- | --- | --- |
| `storyboard_id` | string | yes | uuid |
| `name` | string | no | at least 1 character; at most 100 characters |
| `description` | string or null | no | — |
| `user_tags` | array of string | no | at most 8 items |
| `favorite` | boolean | no | — |
| `cover_scene` | integer | no | > 0 |
| `cast` | array of string | no | — |
| `settings` | object | no | fields: aspect_ratio, default_image_model, default_video_model, clip_resolution, clip_audio, style |
| `archived` | boolean | no | — |

## Example call

A `tools/call` request with the required arguments only, each a placeholder read off the schema. Replace them before sending.

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "update_storyboard",
    "arguments": {
      "storyboard_id": "00000000-0000-4000-8000-000000000000"
    }
  }
}
```

## Input schema

As the server sends it in `tools/list`:

```json
{
  "type": "object",
  "properties": {
    "storyboard_id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "description": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 300
        },
        {
          "type": "null"
        }
      ]
    },
    "user_tags": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 40
      },
      "maxItems": 8
    },
    "favorite": {
      "type": "boolean"
    },
    "cover_scene": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "cast": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "settings": {
      "type": "object",
      "properties": {
        "aspect_ratio": {
          "type": "string",
          "enum": [
            "9:16",
            "1:1",
            "16:9"
          ]
        },
        "default_image_model": {
          "type": "string",
          "enum": [
            "seedream-5-lite",
            "nano-banana-2.1",
            "nano-banana-2",
            "gpt-image-2.5-flare",
            "gpt-image-2.5-sunburst",
            "gpt-image-2",
            "nano-banana-2-lite",
            "seedream-5-pro",
            "flux-schnell",
            "flux-2-flex",
            "flux-2-pro",
            "flux-2-max",
            "recraft-v4.1-svg",
            "recraft-v4.1-pro-svg",
            "p-image",
            "grok-imagine-image",
            "grok-imagine-image-quality",
            "krea-3",
            "qwen-image-3-pro",
            "soul-2"
          ]
        },
        "default_video_model": {
          "type": "string",
          "enum": [
            "seedance-2.5",
            "seedance-2.0",
            "seedance-2.0-mini",
            "seedance-2.0-fast",
            "grok-imagine-video-1.5",
            "veo-3.1",
            "veo-3.1-fast",
            "veo-3.1-lite",
            "gemini-omni-1.1",
            "kling-v3-omni-video",
            "kling-v3-video",
            "happyhorse-1.0",
            "wan-3",
            "wan-3-prime",
            "gen-4.5",
            "p-video",
            "p-video-2",
            "flux-3",
            "minimax-h3-max",
            "p-video-avatar",
            "p-video-animate",
            "p-video-replace",
            "omni-human-1.5",
            "kling-avatar-v2",
            "kling-v3-motion-control",
            "kling-lip-sync",
            "sync-lipsync-2",
            "genjutsu-motion-transfer",
            "genjutsu-object-swap"
          ]
        },
        "clip_resolution": {
          "type": "string",
          "enum": [
            "360p",
            "480p",
            "720p",
            "768p",
            "1080p",
            "4K"
          ]
        },
        "clip_audio": {
          "type": "boolean"
        },
        "style": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "additionalProperties": false
    },
    "archived": {
      "type": "boolean"
    }
  },
  "required": [
    "storyboard_id"
  ],
  "additionalProperties": false
}
```

## Related tools

- [`list_subjects`](https://meetkuro.com/agents/tools/list_subjects.md): The named identities this account reuses — a character, a location, a product, a prop, a wardrobe.
- [`delete_storyboard`](https://meetkuro.com/agents/tools/delete_storyboard.md): Delete a film for good — the board, its scenes, its history — and stop anything it is still rendering or filming.
- [`undo_storyboard`](https://meetkuro.com/agents/tools/undo_storyboard.md): Take back YOUR last gesture on a film, or redo the one you took back.
- [`create_storyboard`](https://meetkuro.com/agents/tools/create_storyboard.md): Make a film three ways: from a brief you have written as scenes, from media the account already holds, or from a video you have already analysed.

---

## About Kuro

Kuro is an AI picture studio: prompt-driven images, clips, voice-overs and music, and storyboard-backed films with consistent characters across every scene.

Agents connect over MCP and can generate directly:

```
claude mcp add kuro https://api.meetkuro.com/mcp --transport http
```

The app is at https://app.meetkuro.com and requires an account.

Each guide, model page, comparison and free tool page on this site (not a tool's variants, and not the index pages) has a Markdown twin at its own URL plus `.md`, and so do /benchmarks/, the English /agents/ page (as /agents.md) and the MCP tool reference. Every tool: https://meetkuro.com/agents/tools/
