Skip to main content
Glama

Edit Scene

edit_scene
DestructiveIdempotent

Change one scene; pass only what changes. Nothing is re-rendered here: the result's regenerate_mode tells you which regenerate_scene mode applies it (none during script review, where approve_script renders everything anyway).

    - narration: the exact words spoken. Use it to fix mispronounced, wrong or garbled words
      (write names/numbers the way they should be said). On a rendered video Fabeo re-writes the
      scene's prompts with the new line on regenerate_scene(mode='narration'). If the voice is still
      wrong after that (pronunciation, a regional language or accent, gibberish), offer the user to
      record the line themselves: set_scene_audio.
    - visual_description: what the scene shows (setting, action, outfit, camera). Also
      re-written into the prompts on regenerate_scene(mode='narration').
    - positive_prompt (rendered scenes only; clip clip_index, see get_scene_prompts): write the
      clip's MiniMax H3 prompt yourself for exact control. It drives BOTH picture and sound, so
      it must quote the narration word for word in its audio part (the whole line for a one-clip
      scene, this clip's consecutive part otherwise) -- it is rejected if it doesn't; to change
      the words pass narration too. H3 style: one continuous take (no cuts or montage),
      concrete subject/appearance/outfit/setting/camera motion, no on-screen text; in
      reference-image scenes open with '<Subject 1> is ... in <Picture 1>'. A hand-written
      prompt is kept as written (Fabeo won't overwrite it).
    - keyframe (rendered scenes only): 'keep' (default); 'variant' to try a different key
      frame for the clip; 'upload' to open the clip on the user's own image -- upload it first
      with get_start_frame_upload_url (the clip then animates from that exact frame, so describe
      motion from it in positive_prompt).
    - duration_seconds: the scene's length (2-15s per clip). The clip renders exactly this long,
      so shorten it to cut music, silence or garbled speech after the voiceover ends; a length
      shorter than the narration needs cuts the voiceover (the result warns). Shorter scenes
      also cost fewer credits. Applied by regenerate_scene(mode='clips') on a rendered video.
    - start_frame_image_key / end_frame_image_key: make the scene open on, and/or land on, the
      user's own pictures. Works during script review (before approve_script) and on a rendered
      video. Get the key first like a reference image (upload_reference_image,
      get_reference_upload_url, or get_reference_upload_page + check_reference_upload; this needs
      the user's rights confirmation) -- not get_start_frame_upload_url, which is per rendered clip.
      The start frame is the scene's first clip's opening picture; the end frame is where its last
      clip should finish. They must be two different images; they are separate from the scene's
      reference images (the people/products shown). Describe the motion between them in
      positive_prompt. Check them in get_video / get_scene_prompts (start_frame, end_frame);
      remove_start_frame / remove_end_frame undo. On a rendered video apply with
      regenerate_scene(mode='images').

Input Schema

NameRequiredDescriptionDefault
keyframeNo'keep' (default), 'variant' for a different key frame, or 'upload' to open the clip on the user's own start frame (see below).keep
scene_idYesThe scene's scene_id, from get_video.
video_idYesThe video's video_id (from create_video, list_videos or get_video).
narrationNoNew spoken line, word for word (see below).
clip_indexNo0-based clip within the scene (see get_scene_prompts); most scenes have one clip.
positive_promptNoHand-written MiniMax H3 prompt for clip clip_index; must quote the narration word for word (see below).
duration_secondsNoNew scene length in seconds (2-15 per clip; see below).
remove_end_frameNoDrop the scene's end frame.
remove_start_frameNoDrop the scene's start frame.
visual_descriptionNoNew description of what the scene shows (see below).
end_frame_image_keyNoreference_image_key of the picture the scene should END on (see below).
start_frame_image_keyNoreference_image_key of the picture the scene should START on (see below).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

The description discloses behavior the annotations cannot: edits are staged and applied later, and 'the result's regenerate_mode tells you which regenerate_scene mode applies it (none during script review)'. It also flags rejection conditions ('it is rejected if it doesn't [quote the narration]'), side effects ('a length shorter than the narration needs cuts the voiceover'), cost implications, persistence of hand-written prompts, and the rights-confirmation prerequisite for frame keys — far beyond the destructive/idempotent hints.

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

Conciseness4/5

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

The core contract is front-loaded in one sentence and each bullet is scoped to one parameter, so it is easy to scan. It is still long and occasionally verbose (e.g. the multi-clause H3 style paragraph), but almost every clause carries actionable information rather than restating the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 12-parameter mutation tool with no output schema, the definition covers the full lifecycle: how each field is applied, which regenerate_scene mode consumes it, how to obtain frame keys, how to verify them (get_video / get_scene_prompts), and how to undo. An agent could invoke this correctly without consulting other documentation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although schema coverage is already 100%, the description adds substantial meaning the schema cannot: H3 prompt style rules (one continuous take, no on-screen text, the '<Subject 1> is ... in <Picture 1>' opener), the distinction between start/end frame keys and reference images, and the duration/voiceover tradeoff. It effectively teaches correct value construction for the hardest parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence gives a specific verb and resource ('Change one scene; pass only what changes') and immediately distinguishes it from regenerate_scene by stating that nothing re-renders here. The per-field bullets make it unambiguous which aspects of a scene this tool mutates versus which are left to regeneration.

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

Usage Guidelines4/5

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

It routes the agent explicitly to siblings in several concrete situations: 'offer the user to record the line themselves: set_scene_audio', 'get the key first like a reference image (upload_reference_image ...) -- not get_start_frame_upload_url', and 'remove_start_frame / remove_end_frame undo'. The one notable gap is that the sibling edit_scene_narration, which overlaps with the narration parameter, is never mentioned, so the agent gets no guidance on choosing between them.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources