Skip to main content
Glama

preview dialogue edits

dialogue-previews_create
Destructive

Generate an audio preview of user-approved transcript word changes and removals in the original speaker voice, so you can review edits before producing the final video.

Instructions

Start an Edit Dialogue audio preview: re-synthesize user-approved word changes and removals from a saved single-speaker video's transcript in the original speaker voice, returning the preview job (id, status). Not for translation (dubbing_create), another voice or a new full script (lipsync_create with a script, or speech-previews_create), or the final video (dialogue-videos_create). May clone the source speaker voice and incur synthesis charges; confirm the edits and permission to use that voice before creating. The tool first checks that the transcription (COMPLETED) or previous preview (COMPLETED or COMPLETED_PARTIAL) was made from this source video, and fails otherwise; it adds a preview job and never overwrites the source. Next, poll dialogue-previews_get with the id and disclose any COMPLETED_PARTIAL shortfall; after the user approves the audio, quote the final video with dialogue-videos_estimate. When dialogue_get-options reports keyedPreview, persist an idempotencyKey before creating (sending one otherwise fails); recover only through an explicit retry of identical input with that same key, and never retry an ambiguous creation automatically. With projectId, projectIntent=explicit is required; default new work to a new project.

Input Schema

NameRequiredDescriptionDefault
editsYesThe complete list of user-approved changes/removals for this preview (1 to 100), including earlier ones to keep when revising. Word ids come from the COMPLETED transcription's transcript, or from the previous preview's sourceTranscript, never its resultTranscript.
projectIdYesProject for the preview, the one used for the transcription. Keep unchanged on retries. Default new work to a new project: the id projects_create returned for this request (defaultWorkflow edit_dialogue). Use an existing project only when the user explicitly chose it, and then pass projectIntent=explicit.
videoAssetIdYesSaved VIDEO asset for the transcription or prior preview, accessible to the connected account.
projectIntentNoRequired with projectId. Set only for an explicit user project selection/update, or the new project just created for this request. Never infer intent from a matching project name, workflow name or active editor.
idempotencyKeyNoPersist a unique key before creation when dialogue_get-options reports keyedPreview. Reuse only with identical inputs for an explicitly requested retry.
organizationIdNoRun only this call in another of the user’s Sync organizations, by id from organizations_list, when the user asks for it (for example “generate this in the Acme org”). The session keeps its organization; reads of the ids this call returns stay in this organization. Omit to use the session’s organization.
transcriptionIdNoDeprecated alias of transcriptionJobId.
previousPreviewIdNoId of a COMPLETED or COMPLETED_PARTIAL preview of this source, to revise it. Its sourceTranscript and cloned voice are reused, but its edits are not carried over, so edits must be the full set you want; sending the same edits again reruns it. Supply exactly one of previousPreviewId or transcriptionJobId.
transcriptionJobIdNoId from dialogue-transcriptions_create, for a first preview; that transcription must be COMPLETED. Supply exactly one of transcriptionJobId or previousPreviewId.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv0.2.4
    • changedInput schema / properties / edits / description
      Previous value: -"User-approved changes/removals referencing timed word IDs in the source transcript."New value: +"The complete list of user-approved changes/removals for this preview (1 to 100), including earlier ones to keep when revising. Word ids come from the COMPLETED transcription's transcript, or from the previous preview's sourceTranscript, never its resultTranscript."
    • changedInput schema / properties / previousPreviewId / description
      Previous value: -"Completed or partially completed preview ID for this source when reopening. Supply exactly one of previousPreviewId or transcriptionJobId."New value: +"Id of a COMPLETED or COMPLETED_PARTIAL preview of this source, to revise it. Its sourceTranscript and cloned voice are reused, but its edits are not carried over, so edits must be the full set you want; sending the same edits again reruns it. Supply exactly one of previousPreviewId or transcriptionJobId."
    • changedInput schema / properties / projectId / description
      Previous value: -"Accessible Sync project for the preview. Keep unchanged on retries."New value: +"Project for the preview, the one used for the transcription. Keep unchanged on retries. Default new work to a new project: the id projects_create returned for this request (defaultWorkflow edit_dialogue). Use an existing project only when the user explicitly chose it, and then pass projectIntent=explicit."
    • changedInput schema / properties / transcriptionJobId / description
      Previous value: -"Completed transcription ID for this source. Supply exactly one of transcriptionJobId or previousPreviewId."New value: +"Id from dialogue-transcriptions_create, for a first preview; that transcription must be COMPLETED. Supply exactly one of transcriptionJobId or previousPreviewId."
  2. Addedv0.1.5

TDQS

A4.8/5.0
Behavior5/5

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

Goes well past the annotations: it discloses voice cloning and synthesis charges, the requirement to confirm edits and voice-use permission, the validation that fails if the source video doesn't match, and that it 'adds a preview job and never overwrites the source.' It also spells out the non-idempotent recovery protocol (persist idempotencyKey when dialogue_get-options reports keyedPreview, retry only with identical input and the same key, never auto-retry an ambiguous creation), which the idempotentHint=false annotation alone would not convey.

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?

Purpose and exclusions are front-loaded and every sentence carries distinct operational content (preconditions, cost, polling, idempotency, project rules). It is dense, however — a few long multi-clause sentences (the keyedPreview/retry sentence especially) pack several independent rules together and would read faster if split.

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 costly, non-idempotent mutation with 9 parameters and no output schema, the description covers preconditions, side effects, failure modes, required follow-up polling, and the retry contract. An agent has everything needed to call it safely without consulting other documentation.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description still adds real meaning by tying idempotencyKey to a runtime signal (keyedPreview, 'sending one otherwise fails'), stating projectIntent=explicit is required with projectId, and defaulting new work to a new project. It does not restate the edits/wordId semantics, which the schema already covers in depth.

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?

States a specific verb and resource ('Start an Edit Dialogue audio preview: re-synthesize user-approved word changes and removals... in the original speaker voice') and names what it returns (preview job id, status). It explicitly differentiates from siblings by naming dubbing_create, lipsync_create, speech-previews_create, and dialogue-videos_create with the condition that selects each.

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

Usage Guidelines5/5

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

Gives explicit when-not routing ('Not for translation... another voice or new full script... or the final video') and an ordered follow-up path: poll dialogue-previews_get, disclose COMPLETED_PARTIAL shortfall, then quote with dialogue-videos_estimate after user approval. Prerequisites (COMPLETED transcription or COMPLETED/COMPLETED_PARTIAL prior preview) and the projectIntent=explicit rule are stated as gating conditions.

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