preview_timeline
Preview timeline structure, composed viewer pixels, and bounded transcript. Returns facts, not quality judgments.
External MCP viewer note: viewer pixels require full projectId and timelineId UUIDs and a connected authenticated browser executor with access to the media. The visible page need not show that project or timeline. Browser failures do not fall back to cloud. Judge the sheet's pixels, not rendering metadata.
Browser execution requires the full timelineId UUID, never a shortened ID. Get it from editor state, read_project, or manage_timelines action="list". External calls also require full projectId; internal agents may omit it. Non-execution reads need no browser scope. Never switches the visible timeline or silently falls back to cloud.
Choose views:
timeline: tracks, placed items, gaps, layering, effects, transitions and markers.
viewer: exact frames or uniform samples (default 9, max 25). Batch 12-20 for an overview, then exact frames for detail. Samples prove only sampled moments; inspect adjacent entry/exit frames before judging cuts, fades or motion. Returns one labeled contact sheet with times/FPS; the Web agent also saves workspacePath.
transcript: non-muted audio/video text mapped through trim, source offset and playback rate, labeled by track/item/asset; coverage is complete, partial or unavailable.
views:["viewer"], viewerFrames and viewerFrameCount require browser scope; structure/transcript-only reads may omit timelineId. fromFrame/toFrame use half-open timeline frames; tracks filters timeline/transcript, itemIds excludes gaps/markers. Paginate with the same range/filters and offset/timelineId from "more:". Normalizations appear under "Adjusted:".
Use inspect_item for placed-item properties, read_script/apply_script for speech edits, inspect_asset for source media.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "preview_timeline"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum timeline structure entries returned (default 50, max 100; larger values use 100). | |
| views | No | One or more views: "timeline", "viewer", "transcript". Defaults to ["timeline"]. "viewer" requires the full timelineId UUID. viewerFrames/viewerFrameCount also include "viewer" without removing other views; offset, limit, itemIds, or tracks without a view they apply to also include "timeline". | |
| offset | No | Zero-based timeline structure entry offset (default 0). For continuation, use offset and timelineId from the returned more: line, and keep the same range and filters. | |
| tracks | No | Optional track aliases/ids (up to 10) for timeline and transcript views. | |
| itemIds | No | Optional placed item ids/prefixes (up to 10). When present, the timeline view returns only matching item entries, transitions into or out of them, and effects attached to them; gaps and markers are omitted. | |
| toFrame | No | Optional exclusive timeline end frame. Omit to use the timeline duration; a value past it uses the duration. | |
| fromFrame | No | Optional inclusive timeline start frame. Omit to start at frame 0. A start at or after the timeline end returns an empty range with the timeline duration. | |
| projectId | No | Full project UUID. Required for external browser work; internal agents may omit. Execution/explicit-timeline calls never change later calls' target. | |
| timelineId | No | Full timeline UUID, never a shortened ID. Required with views:["viewer"], viewerFrames, or viewerFrameCount; optional for structure/transcript-only reads. Copy the full target ID from editor state, read_project, or manage_timelines action="list". Execution never switches the visible timeline. | |
| viewerFrames | No | Requires the full timelineId UUID, including for "playhead". Requests viewer for these exact timeline frame numbers, or "playhead" when turn-start editor state is available. Renders the first 25 and returns the rest to request next. Frames outside the selected range are skipped and listed; the call fails only when none can be rendered. Takes precedence over viewerFrameCount. | |
| idempotencyKey | No | Stable key for this browser execution. Reuse only with identical scope and parameters after a lost acknowledgement; applies only to this call. | |
| browserProfileId | No | Optional browser profile override. Omit to select automatically; do not ask the user to choose. | |
| viewerFrameCount | No | Requires the full timelineId UUID. Requests viewer and uniformly samples this many frames (default 9, max 25). Ignored when viewerFrames is present. |