---
title: "add_scene: Add a scene"
description: "Add one scene to a film."
canonical_url: "https://meetkuro.com/agents/tools/add_scene/"
updated: 2026-11-03
locale: "en"
tool: "add_scene"
scopes: ["storyboards.write"]
---

# add_scene

**Add a scene**

Add one scene to a film. Absent after_scene appends it to the end of Video 1; 0 puts it first; N splices it right after Scene N on that scene's own video. continue_from_scene gives it the last frame of that scene's clip as its still. Anything left out is filled in: the description and image prompt fall back to the title, an unwritten motion prompt gets a subtle drift, and the length is the film's clip model's usual take. The answer names the number the board gives it, which on a branched board may not be N+1. 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.
- **Adds or updates**: Adds or updates; nothing the caller already has is deleted or overwritten.
- **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 |
| `title` | string | yes | at least 1 character; at most 80 characters |
| `description` | string | no | at least 1 character; at most 600 characters |
| `image_prompt` | string | no | at least 1 character; at most 2000 characters |
| `motion_prompt` | string | no | at least 1 character; at most 6000 characters |
| `duration_seconds` | number | no | ≥ 0.2 |
| `hold_motion` | string | no | one of "none", "push_in", "pull_out", "pan_left", "pan_right", "animate" |
| `cast` | array of string | no | — |
| `after_scene` | integer | no | ≥ 0 |
| `continue_from_scene` | integer | no | > 0 |

## 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": "add_scene",
    "arguments": {
      "storyboard_id": "00000000-0000-4000-8000-000000000000",
      "title": "<title>"
    }
  }
}
```

## Input schema

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

```json
{
  "type": "object",
  "properties": {
    "storyboard_id": {
      "type": "string",
      "format": "uuid"
    },
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 80
    },
    "description": {
      "type": "string",
      "minLength": 1,
      "maxLength": 600
    },
    "image_prompt": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000
    },
    "motion_prompt": {
      "type": "string",
      "minLength": 1,
      "maxLength": 6000
    },
    "duration_seconds": {
      "type": "number",
      "minimum": 0.2
    },
    "hold_motion": {
      "type": "string",
      "enum": [
        "none",
        "push_in",
        "pull_out",
        "pan_left",
        "pan_right",
        "animate"
      ]
    },
    "cast": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "after_scene": {
      "type": "integer",
      "minimum": 0
    },
    "continue_from_scene": {
      "type": "integer",
      "exclusiveMinimum": 0
    }
  },
  "required": [
    "storyboard_id",
    "title"
  ],
  "additionalProperties": false
}
```

## Related tools

- [`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.

---

## 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/
