Skip to main content
Glama

edit_from_transcript

Cut and re-assemble a video from an edited copy of its own word-level transcript — the text-editing counterpart to clips_from_job's timestamp-based cutting. Operates on a parent job (find_clips, summarize, or video transcribe) that has a word-level transcript; possessing the parent source_job_id is the capability, no upload step. Get the editable text first via get_job_status(job_id, format: "edit") or the download route — one [NNNN]-marked line per sentence — then edit it in any text editor: delete words or whole lines, move whole lines, but do not add or change a word (a marker used twice, or any added/changed word, invalidates the whole edit and is rejected before payment). Two-call flow: (1) call with source_job_id + the full edited text as edited_transcript (sent inline, max 262144 UTF-8 bytes) + optional title to receive {job_id, payment_challenge} — an invalid edit is rejected here, before any charge, with the exact failing lines; (2) pay via MPP (Tempo USDC) or open the Stripe Checkout payment_url in a browser, then call again with job_id + payment_credential to start processing. Flat price: $1.00 — see /.well-known/mpp.json for the Tempo USDC rate. Up to 300 cuts and 60 minutes of output per call; repeated phrases match their first occurrence, left to right. Outputs: role clip-video (the edited video), plus clip-srt and clip-words re-timed to match the edit. Source must still be in storage (72h TTL for find_clips parents, 24h elsewhere — check expires_at from get_job_status on the parent). Use whenever the edit is easier to describe in text than in timestamps — tightening a clip or a short segment by deleting filler words and tangents, or reordering a handful of sentences; use extract_clip (via clips_from_job) instead when you already know the exact start/end seconds you want. Retrying with job_id alone recovers the current state. A rejected edit creates no job, so show its errors to the user from the response that returned them. Failed jobs auto-refund.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleNo
job_idNo
source_job_idNo
edited_transcriptNo
payment_credentialNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.9/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so: the exact two-call payment flow, rejection of invalid edits before any charge, the do-not-add-or-change-a-word constraint, up to 300 cuts/60 minute output, first-occurrence matching for repeated phrases, 72h vs 24h TTL differences, retry-with-job_id recovery, and auto-refund on failure. This is an unusually complete behavioral disclosure for a paid, stateful tool.

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?

Front-loaded with purpose and alternative, then flows into the numbered two-call flow. Every sentence is substantive given the tool's complexity (payment, validation, TTLs), though the density is high and a reader must parse a lot in one pass.

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?

Despite no annotations and no output schema, the description covers return artifacts (clip-video, clip-srt, clip-words re-timed), error handling, pricing, and lifecycle. Nothing an agent needs to invoke this complex paid flow correctly appears to be missing.

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?

Schema description coverage is 0% and there are 5 undocumented parameters with 0 required, so the description must compensate fully. It does: it maps source_job_id + edited_transcript (inline, max 262144 UTF-8 bytes) + optional title to call one, and job_id + payment_credential to call two, and explains the transcript's [NNNN] line format.

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+resource: 'Cut and re-assemble a video from an edited copy of its own word-level transcript.' It explicitly distinguishes itself from sibling clips_from_job ('the text-editing counterpart to clips_from_job's timestamp-based cutting') and from extract_clip, so an agent can place it without opening any schema.

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 an explicit decision rule: 'Use whenever the edit is easier to describe in text than in timestamps... use extract_clip instead when you already know the exact start/end seconds.' It also names prerequisites (parent must have a word-level transcript, source still in storage) and the sibling tools that produce valid parents (find_clips, summarize, transcribe).

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