premiere-pro-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@premiere-pro-mcp List the sequences in this project and tell me which one is active."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Premiere Pro Bridge
Let Claude (or any MCP client) edit inside your open Adobe Premiere Pro project. You can ask it to cut clips, build sequences, add markers, set up exports and more.
This repo packages leancoderkavy/premiere-pro-mcp v1.30.0 (MIT) with a one-command setup and shorter docs. The server code comes from that project unchanged. All credit for it goes to its authors.
How it works
Claude ──MCP──▶ Node server ──script files──▶ Premiere panel (CEP) ──ExtendScript──▶ Premiere ProThe server writes small ExtendScript jobs to a temp folder. A panel inside Premiere picks each one up and runs it through Premiere's own scripting API, then sends the result back. Nothing touches your .prproj file directly, and no screen control is used. Everything runs locally.
Related MCP server: Premiere-MCP-BuildX-Exclusive-V3
Requirements
macOS (for Windows, see Manual setup)
Adobe Premiere Pro 2020 or later
Node.js 20, 22 or 24+ (
brew install node@22)Optional: FFmpeg, needed by
trim_clip,slip_editanddetect_silence(brew install ffmpeg)
Setup
git clone https://github.com/matt-j-penny/premiere-pro-bridge.git
cd premiere-pro-bridge
./setup.shsetup.sh:
Checks your Node version
Installs dependencies and builds the server
Installs the Premiere panel and turns on Adobe's CEP debug mode, which unsigned panels need
Registers the server as
premiere-proin Claude Code and Claude Desktop, if they're installed. Your Desktop config is backed up first.Runs a local health check
Then:
Fully quit and reopen Premiere Pro, and open a project.
Open Window > Extensions > MCP for Adobe Premiere Pro. The panel should say Running.
Restart Claude and ask:
Run verify_premiere_connection. Make no changes.
If that passes, you're connected. Try opening a copy of a project first, before you let it edit real work.
Example prompts
"List the sequences in this project and tell me which one is active."
"Add a marker at every point where the speaker pauses for more than a second."
"Cut the first 3 seconds off every clip on V1."
"Export the active sequence with the H.264 Match Source preset."
Updating
git pull
./setup.shQuit Premiere before you update, so the panel can be replaced.
Troubleshooting
Symptom | Fix |
Panel is missing from Window > Extensions | Fully quit Premiere (Cmd+Q) and reopen it. Then run |
Panel shows but Claude can't connect | Make sure the panel says Running and a project is open. Restart Claude after you run setup. |
| Run |
Anything else | Run |
Manual setup
For Windows, Cursor, VS Code or anything else:
npm ci
npm run build
node dist/index.js --install-cep
node dist/index.js --print-client-config claude # or cursor | vscode | codexPaste the printed config into your client's MCP settings.
Optional: UXP bridge (Premiere 25.6+)
The newer UXP bridge adds about 98 tools on top of the CEP panel. It needs a separate plugin install and a shared token. See uxp-plugin/DISTRIBUTION.md.
Uninstall
node dist/index.js --uninstall-cep
claude mcp remove -s user premiere-proThen delete the premiere-pro entry from your Claude Desktop config.
More docs
Full upstream README: every tool, env var and option
License
MIT. See LICENSE. The original copyright belongs to the upstream authors.
Available Tools
445 toolsacknowledge_operation_recoveryAcknowledge Operation RecoveryA
Acknowledge user-reviewed reconciliation of uncertain execution after current-state inspection. Requires the exact latest recovery and host-state revisions. Consumed operation IDs remain unavailable for replay; acknowledgement does not undo or retry a host edit.
Inputs: backend (required), reviewed (required), expected_recovery_revision (required), expected_host_state_revision (required),… Returns: ok, data, tool, error, +2 more
add_adjustment_layerAdd Adjustment LayerA
EXPERIMENTAL (QE DOM): add an adjustment layer at the playhead on the specified track. Refuses when the host lacks the QE APIs; verifies a new public TrackItem using isAdjustmentLayer and placement readback.
Inputs: track_index, idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
add_audio_keyframesAdd Audio KeyframesB
Add audio level keyframes to create fades or level changes
Inputs: node_id (required), keyframes (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
add_custom_metadata_fieldAdd Custom Metadata FieldA
Add a custom metadata field to the project's metadata schema. This creates a schema/column definition only; it does not set a per-item value. Use set_metadata field_name/value or complete Project Metadata XML with readback to update a value.
Inputs: field_name (required), field_type (required), field_label (required), idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
add_keyframeAdd KeyframeA
Add and read back a keyframe on an effect property. The receipt warns when its time is outside the clip's visible range. Two-component numeric values must match the current host value shape; Motion Position and Anchor Point use normalized 0–1 coordinates only. Colour keys refuse because CEP has no lossless time-specific colour setter. This verifies stored parameter data only; render/playback verification remains host-dependent.
Inputs: value (required), node_id (required), effect_name (required), time_seconds (required), +5 more. Returns: ok, data, tool, error, +2 more
add_markerAdd MarkerB
Add a marker to the active sequence or a clip and read its name, comments, color and duration back. EXPERIMENTAL (QE DOM): the receipt reports undoStackIndex movement, which does not prove QE can reverse the marker. Every marker attempt protects an engine undo boundary; undoTracked:false means the marker did not observably advance the QE index. Marker start and end storage are compared at exact integer ticks; unsupported time writes remain unverified with the created marker identity when available.
Inputs: time_seconds (required), name, color, node_id, +5 more. Returns: ok, data, tool, error, +2 more
add_markers_batchAdd Markers BatchA
Add up to 200 sequence or clip markers in one verified CEP request (beat grids, chapters, silence reviews, client notes). Every marker is validated and range-checked before the first write; the tool reads back the marker count and each created marker's time and fails closed on any mismatch. EXPERIMENTAL QE: records an observed marker boundary for guarded Undo/Redo; crossing it is refused by default, and unreadable history records unknown protection. This boundary does not verify native marker reversal. Marker start and end storage are compared at exact integer ticks; unsupported time writes remain unverified with the created marker identity when available.
Inputs: markers (required), node_id, sequence_id, idempotency_key, +4 more. Returns: ok, data, tool, error, +2 more
add_marker_to_project_itemAdd Marker To Project ItemB
Add a marker to a project item (source clip marker). EXPERIMENTAL QE: records an observed marker boundary for guarded Undo/Redo; crossing it is refused by default, and unreadable history records unknown protection. This boundary does not verify native marker reversal. Marker start and end storage are compared at exact integer ticks; unsupported time writes remain unverified with the created marker identity when available.
Inputs: item_id (required), time_seconds (required), name, type, +6 more. Returns: ok, data, tool, error, +2 more
add_text_overlayAdd Text OverlayA
Unavailable: Premiere does not expose a supported scripting API to create caption clips directly from raw text. For on-screen titles from plain text use add_title; for captions import an .srt/.vtt and use create_caption_track.
Inputs: text (required), start_seconds, caption_format, idempotency_key, +3 more. Returns: ok, data, tool, error, +2 more
add_titleAdd TitleA
Add an on-screen title from plain text using a stock Essential Graphics template that ships with Premiere (default: Basic Title). Pass text for one line, or lines to fill the template's text fields in order (for example a lower third's name and role). Premiere-built templates (kind 'premiere') get the text baked into a verified copy before import, because Premiere exposes no writable text for them (textVerification 'template_verified'; confirm the render with export_frame). The baked copy path is returned as templateFile and saved under the application support premiere-pro-mcp/titles folder (macOS: ~/Library/Application Support/premiere-pro-mcp/titles). The cache keeps the newest 50 baked copies by modification time; export or copy templates elsewhere if a project needs older copies retained. After Effects-built templates (kind 'after_effects') are imported and their text fields written by position and read back from Premiere (textVerification 'verified', 'mismatch', 'missing_property', or 'committed_unverified'). The graphic is trimmed to duration_seconds and its length read back. Optional styling: font_family (PostScript name) and font_size write every text run of each AE text control when the template allows font editing (Premiere 26 fontEditValue/fontSizeEditValue runs, or legacy fontName/fontSize keys); fill_color requires one exposed Fill Color control; position moves the whole graphic through intrinsic normalized Motion Position. Each requested field has styleChecks readback. Premiere-authored font/fill styling and align are refused before import: no reliable writable/readable CEP 26.5.2 contract is established. Tracking is unsupported. Font readback confirms the stored name, not installation or rendered glyphs. Use list_stock_titles to see templates, their kind, and how many lines each takes.
Inputs: text, align, lines, position, +10 more. Returns: ok, data, tool, error, +2 more
add_to_render_queueAdd To Render QueueA
Request an Adobe Media Encoder render-queue handoff for the active sequence. Requires a saved project and an .epr preset_path. Same as Project presets are refused before Premiere is contacted because AME encodes from a scratch project copy. Optional start_batch requests processing of every ready AME queue job, including unrelated jobs.
Inputs: output_path (required), preset_path (required), start_batch, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
add_to_timelineAdd To TimelineA
Insert a project item at a timeline position. Experimental: if a target clip spans that point, QE razors it before insertion to attempt to preserve its tail; both target and sync-locked track changes are read back. A host may still displace a tail, in which case the edit is reported as committed_unverified. Pass scope 'target_tracks' to ripple only the named pair (this will desync other tracks).
Inputs: item_id (required), scope, track_index, start_seconds, +4 more. Returns: ok, data, tool, error, +2 more
add_to_timeline_batchAdd To Timeline BatchA
Insert up to 32 project items with insert-edit semantics in one validated CEP request. Experimental QE sync-lock handling may ripple or split earlier placements. The tool preflights items and tracks, then verifies every placement again in the final sequence; changed placements return committed_unverified with their observed final positions.
Inputs: clips (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
add_trackAdd TrackB
Add verified video or audio tracks to the active sequence. Returns an error if Premiere cannot add the exact requested count.
Inputs: track_type (required), count, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
add_tracksAdd TracksA
Add video and/or audio tracks through QE, verify the active sequence gained the exact requested counts, and report explicitly when QE inserted the new tracks at index 0 and shifted every existing track up.
Inputs: audio_tracks, video_tracks, audio_51_tracks, idempotency_key, +3 more. Returns: ok, data, tool, error, +2 more
add_transitionAdd TransitionA
EXPERIMENTAL (undocumented QE DOM): Add a video transition between two clips at a cut point. Reads the transition back from the sequence track.
Inputs: track_index (required), transition_name (required), cut_point_seconds (required), idempotency_key, +3 more. Returns: ok, data, tool, error, +2 more
add_transition_to_clipAdd Transition To ClipA
EXPERIMENTAL (undocumented QE DOM): Add a transition to a specific video clip's start, end, or both edges, then read back the requested placement.
Inputs: node_id (required), transition_name (required), position, idempotency_key, +3 more. Returns: ok, data, tool, error, +2 more
adjust_audio_levelsAdjust Audio LevelsA
Adjust a clip's Volume > Level in dB. Does not read or change Essential Sound Amplify automation.
Inputs: node_id (required), level_db (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
analyze_dialogue_edit_candidatesAnalyze Dialogue Edit CandidatesARead-onlyIdempotent
Analyze caller-supplied, revision-bound transcript segments and optional local silence ranges for deterministic dialogue-edit candidates. It never calls a model, persists transcript text, or changes Premiere.
Inputs: segments (required), filler_words, silence_ranges, expected_cep_target, +2 more. Returns: ok, data, tool, error, +2 more
analyze_loudnessAnalyze LoudnessA
Measure integrated loudness (LUFS), loudness range (LU), and true peak (dBFS) from a local media file using FFmpeg's EBU R128 filter. Analysis only: it does not normalize audio or change Premiere.
Inputs: media_path, target_lufs, tolerance_lu, idempotency_key, +4 more. Returns: ok, data, tool, error, +2 more
analyze_video_interlacingAnalyze Video InterlacingA
Classify decoded video frames as progressive, top-field-first, bottom-field-first, mixed, or undetermined using FFmpeg idet. Read-only delivery preflight.
Inputs: media_path (required), use_cache, sample_seconds, idempotency_key, +3 more. Returns: ok, data, tool, error, +2 more
analyze_video_qcAnalyze Video QcB
Analyze a local video delivery for sustained black and frozen sections with FFmpeg. Read-only: it does not contact Premiere or modify the file.
Inputs: media_path (required), idempotency_key, expected_cep_target, expected_project_path, +2 more. Returns: ok, data, tool, error, +2 more
apply_after_effects_render_handoffApply After Effects Render HandoffA
Import exactly one previewed completed AE render into its approved Premiere bin after rechecking both hosts and file metadata. Requires confirmation and consumes the token before dispatch. Does not save, render, or change a timeline; the receipt returns the new projectItemId, and replace_clip swaps it in for an existing timeline clip at the same span.
Inputs: preview_token (required), confirm_import (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
apply_audio_effectApply Audio EffectB
Apply an audio effect to a clip. Experimental QE catalog lookup includes an exact-name probe when enumeration is empty. A component-list readback does not verify rendered audio.
Inputs: node_id (required), effect_name (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
apply_edit_planApply Edit PlanA
Apply a previously previewed compound edit after revalidating stable project, sequence and target identities before activation or mutation. Requires the edit capability and exact preview confirmation token; changed targets require a fresh preview. Ripple plans require the reviewed sequence to be active for the read-only QE sync-lock preflight.
Inputs: plan (required), confirmation_token (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
apply_effectApply EffectB
Apply a video effect to a clip. Experimental QE DOM catalog lookup includes an exact-name probe when enumeration is empty. A component-list readback does not verify rendered pixels.
Inputs: node_id (required), effect_name (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
apply_extended_edit_planApply Extended Edit PlanADestructive
Consume a reviewed compound CEP token once and invoke only its existing typed tools with same-command project/sequence/clip/effect guards. Stops at first failed or unverified receipt, reports completed and unknown steps, and never retries or rolls back partial work. Rendering and audible synchronization remain separate evidence.
Inputs: confirmation_token (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
apply_lutApply LutA
Unavailable on the CEP backend: Premiere's scripting API cannot load a LUT file into Lumetri Color. Its Input LUT and Look parameters are menu indexes over a curated set of bundled looks, and writing a file path to the LUT asset parameters is accepted but not rendered (seen on Premiere Pro 25.2.3, macOS, by comparing exported frames with the same LUT applied by ffmpeg; other builds were not tested). Fails before changing the clip. Apply the LUT in Lumetri Color > Creative > Look (Browse...) instead.
Inputs: node_id (required), lut_path (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
apply_mogrt_premiere_handoffApply Mogrt Premiere HandoffA
Import exactly one previewed MOGRT into the empty track of the explicit disposable Premiere verification sequence, then read back insertion and control descriptors. Requires explicit confirmation; no rendered-frame claim is made.
Inputs: preview_token (required), confirm_import (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
apply_scene_review_workflowApply Scene Review WorkflowADestructive
Consume approved source-scene preview once, create reviewed source markers and/or subclips requesting audio in a new verified bin using existing typed CEP tools. Same-command source/project guards refuse relinks or project changes. Stops on failed/unverified receipt and retains bounded partial results; no rollback or false-positive correctness claim.
Inputs: confirmation_token (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
apply_send_clip_to_after_effectsApply Send Clip To After EffectsA
Send the previewed clip to After Effects: recheck the clip, add a comp with its exact source range (footage layer audio off) to the open AE project and save it, import the comp into Premiere over Dynamic Link, then replace the clip with it at the same timeline span. The original's linked audio stays. Requires confirmation; the token is single-use. A failure after the AE save leaves the comp in AE and reports where it stopped.
Inputs: confirm_send (required), preview_token (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
apply_spot_workflow_planApply Spot Workflow PlanA
Apply one exact previewed motion-demo, product-spot, or brand-spot plan. Requires edit authority, requires filesystem authority for a MOGRT, and only targets empty explicitly named tracks. Host readback is not playback or render verification.
Inputs: plan (required), confirmation_token (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
apply_stacked_camera_editApply Stacked Camera EditADestructive
Apply one single-use reviewed ordinary stacked-camera plan to a newly cloned sequence. Reads actual track locks, linked partners, source identity, forward1x speed and nest/reverse state before clone and before writes; unavailable getters refuse. Verifies exact enabled states and master-audio ranges. Sequential partial completion is reported; no rollback or audible sync claim.
Inputs: confirmation_token (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
attach_custom_propertyAttach Custom PropertyA
Attach a custom property (key/value pair) to the active sequence and confirm it against the sequence project item's XMP packet. Reports failure when the property never lands in XMP.
Inputs: property_id (required), property_value (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
audit_project_structureAudit Project StructureA
Audit the Project panel against explicit layout rules (allowed root names, extension-to-bin placement, a sequences bin, maximum bin depth, empty bins, an explicit target_tree of bins with item node IDs, renames, remove_empty) and report violations by node ID. Read-only by default (inspect authority): walks up to 5000 items, reports truncation, and returns at most 200 proposed moves, 200 renames and 200 empty-bin removals plus a plan_token bound to the project, rules, and those exact operations. With apply: true (edit authority) it requires that plan_token, re-reads the project and refuses if the plan changed, the walk was truncated, or any target path is ambiguous (two bins with one name at a level). It then creates missing target bins, moves only the planned items (reading back each parent), deletes only remove_empty bins that are still empty (reading back the parent's children), then renames (reading back each name); target paths are resolved against the audited names, so renames run last. Outcome is verified only when every planned operation is verified, otherwise partial or failed with per-item details. Without target_tree, rename, or remove_empty it never deletes, renames, or moves bins; root-name, depth, and forbid_empty_bins findings are report-only.
Inputs: rules (required), apply, plan_token, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
audit_timeline_healthAudit Timeline HealthARead-onlyIdempotent
Audit one sequence snapshot for flash frames, gaps, overlaps, disabled clips, repeated shots, video without audio, extreme speed, invalid times, empty tracks, leading black, and trailing gaps; returns a 0..100 score, findings with timecodes, and fix routes. Local-only; never changes Premiere.
Inputs: snapshot (required), frame_rate, gap_min_frames, max_speed_percent, +5 more. Returns: ok, data, tool, error, +2 more
auto_reframe_sequenceAuto Reframe SequenceA
Auto-reframe a sequence into a new sequence of target_width x target_height. Premiere derives the new sequence from the source height (a 1080p source at 9:16 comes out 607x1080), so the tool then sets the requested frame size and verifies it; the Auto Reframe effect refits to the new size.
Inputs: target_width (required), target_height (required), new_name, sequence_id, +5 more. Returns: ok, data, tool, error, +2 more
batch_add_transitionsBatch Add TransitionsBDestructive
EXPERIMENTAL (undocumented QE DOM): Add the same video transition at each eligible cut point on a track and report per-cut readback.
Inputs: transition_name (required), track_index, idempotency_key, duration_seconds, +2 more. Returns: ok, data, tool, error, +2 more
batch_apply_effectBatch Apply EffectADestructive
Apply one audio or video effect to compatible selected clips, a compatible track, or all compatible clips. Every target is preflighted and then checked by component-count readback.
Inputs: target (required), effect_name (required), track_type, track_index, +3 more. Returns: ok, data, tool, error, +2 more
batch_enable_disableBatch Enable DisableBDestructive
Enable or disable multiple clips at once (selected, track, or all).
Inputs: target (required), enabled (required), track_type, track_index, +3 more. Returns: ok, data, tool, error, +2 more
batch_rename_clipsBatch Rename ClipsBDestructive
Rename multiple clips on the timeline using a pattern. Supports sequential numbering.
Inputs: pattern (required), track_type (required), track_index (required), start_number, +4 more. Returns: ok, data, tool, error, +2 more
bind_media_provenanceBind Media ProvenanceCRead-onlyIdempotent
Bind approved source/proxy content hashes and original availability to an analysis provider and timeline revision. Proxy flags do not prove delivery provider; caller-evidenced full-resolution export remains distinct from artifact validation.
Inputs: provenance (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
build_caption_artifactBuild Caption ArtifactA
Build a CapCut/Submagic-style SRT or VTT caption artifact from a caller-supplied word timeline: balanced word groups, sentence-aware breaks, min/max cue durations, optional karaoke word timestamps (VTT), emphasis and speaker markup. Local-only; returns the artifact inline or writes it inside an approved workspace and never changes Premiere.
Inputs: format (required), word_timeline (required), karaoke, max_lines, +15 more. Returns: ok, data, tool, error, +2 more
build_edit_review_evidenceBuild Edit Review EvidenceA
Create new before/after contact sheets, optional bounded MP4 excerpts, and checksum receipts from two reviewed rendered videos. Supports visual review of cuts, transitions, titles and masks; still grids do not verify temporal behavior or authenticate host lineage.
Inputs: after_sheet (required), after_video (required), before_sheet (required), before_video (required), +8 more. Returns: ok, data, tool, error, +2 more
build_project_handoff_manifestBuild Project Handoff ManifestARead-onlyIdempotent
Inspect explicitly listed dependencies inside an approved consolidated workspace. Reports observed bytes, missing files, expected source identity and unresolved nests/image sequences/AE/template dependencies. A copied project alone cannot pass completeness.
Inputs: dependencies (required), inventory_complete (required), approved_workspace_path (required), idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
cancel_workflow_jobCancel Workflow JobA
Request cancellation of an owned local process or undispatched local job. Native Premiere/AME cancellation is unsupported; no queue is cleared and no output file is deleted.
Inputs: job_id (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
can_executeCan ExecuteARead-onlyIdempotent
Validate an exact tool invocation, authority, live backend and bounded CEP targets without applying it. Returns named refusal/unknown reasons and evidence age; preflight is advisory and must be revalidated at dispatch.
Inputs: arguments (required), tool_name (required), expected_cep_target, expected_sequence_id, +1 more. Returns: ok, data, tool, error, +2 more
capture_frameCapture FrameA
Capture the current frame and return it as inline image data for the LLM to see. This supports still-image review only. The PNG keeps the sequence's transparency (hasAlpha); transparent areas may display as white or a checkerboard rather than the black a video render shows.
Inputs: time_seconds, idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
check_caption_safe_zoneCheck Caption Safe ZoneARead-onlyIdempotent
Check caption, title, logo, and graphic rectangles against approximate platform UI overlay zones (TikTok, Reels, Shorts, feed, YouTube, LinkedIn, X) and suggest the nearest clear position. Local-only geometry on caller-supplied normalized rects; it never reads or changes Premiere.
Inputs: frame (required), elements (required), platform (required), expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
check_offline_mediaCheck Offline MediaBRead-onlyIdempotent
Check for offline (missing) media in the project
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
clear_item_in_outClear Item In OutB
Clear in and/or out points on a project item (reset to full duration). Still-image Out is independently verified only when its own duration is readable; otherwise the result explains that limit.
Inputs: item_id (required), clear_in, clear_out, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
clear_sequence_in_outClear Sequence In OutB
Clear the in and/or out points on the active sequence so they read back as unset, and leave the other point unchanged.
Inputs: clear_in, clear_out, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
close_all_source_clipsClose All Source ClipsBDestructive
Close all clips in the Source Monitor.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
close_projectClose ProjectADestructive
Close an open Premiere Pro project: the active one, or the open project at project_path. Captures the close reply without reading torn-down project objects, then verifies closure and the active project in a separate read-only call. An unreadable verification remains committed_unverified; a native close that never returns remains unknown.
Inputs: save_first, project_path, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
close_sequenceClose SequenceADestructive
Request closing a sequence timeline tab. Premiere exposes no open-tab enumeration, so dispatch is requested_unverified; the sequence stays in the project.
Inputs: sequence_id, idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
close_source_monitorClose Source MonitorADestructive
Close the clip currently showing in the Source Monitor. Premiere then shows the previously opened clip, if any; the result names it.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
color_correctColor CorrectB
Apply basic color correction through experimental QE Lumetri insertion. Requires Lumetri component and requested property readback; rendered output is not verified.
Inputs: node_id (required), tint, blacks, whites, +9 more. Returns: ok, data, tool, error, +2 more
compare_cmx3600_edlsCompare Cmx3600 EdlsC
Compare two local CMX 3600 EDLs by event number and report bounded added, removed, and changed editorial events. Read-only; it does not alter either interchange file or Premiere.
Inputs: after_path (required), before_path (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
compute_mask_fit_motionCompute Mask Fit MotionARead-onlyIdempotent
Inspect only. Compute the Motion Scale (%) and Position that place a still image's subject inside an existing Rounded Crop, Crop, or similar mask effect. Reads the sequence frame size, the source frame size, current Motion values, and the mask effect's parameters, then solves the geometry deterministically from a caller-supplied subject box (fractions of the source image, for example head-top to chin). No image analysis and no changes to Premiere. Apply the result with set_clip_scale and set_clip_position (or set_effect_property), then verify with capture_frame. Assumes Rotation 0 and uniform scale; mask geometry is treated as fixed in the sequence frame (mask_space 'sequence').
Inputs: node_id (required), subject (required), fit_axis, placement, +9 more. Returns: ok, data, tool, error, +2 more
consolidate_and_transferConsolidate And TransferA
Collect (copy) or transcode project media into a new project with Premiere's Project Manager. Premiere writes a Copied_ folder inside destination_path (created if missing); success is reported only after that folder holds the copied .prproj, with the copied files listed.
Inputs: destination_path (required), transcode, rename_media, exclude_unused, +9 more. Returns: ok, data, tool, error, +2 more
consolidate_duplicatesConsolidate DuplicatesC
Consolidate duplicate project items and report success only when duplicate media groups decrease.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
convert_timeline_timeConvert Timeline TimeARead-onlyIdempotent
Convert exact Premiere tick strings, rational frames, samples, decimal seconds and signed/drop-frame timecode locally. Nearest ties round away from zero; intervals use inclusive start and exclusive end. No floating-point tick parsing or host dispatch.
Inputs: to (required), from (required), value (required), frame_rate (required), +5 more. Returns: ok, data, tool, error, +2 more
copy_effects_between_clipsCopy Effects Between ClipsA
Copy all effects (or a specific effect) from one clip to another, including parameter values and keyframes, and read every written value back. A missing effect is added through the experimental legacy QE DOM; when the target already has that effect, its values are updated instead of stacking a second default-valued instance. Intrinsic components such as Motion and Opacity are skipped unless named. Uses the same component matching and per-property receipts as paste_clip_attributes.
Inputs: source_node_id (required), target_node_id (required), effect_name, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
copy_effect_valuesCopy Effect ValuesA
Copy verified scalar, numeric-array and colour effect-property values from one effect to the matching effect on another clip. Both clips must already have the same effect applied. Properties are matched by position, then by unique display name, because effects such as Lumetri Color repeat names across sections. Legacy CEP deliberately refuses Blend Mode because Premiere can corrupt its enum value on cross-clip writes.
Inputs: effect_name (required), source_node_id (required), target_node_id (required), idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
create_bars_and_toneCreate Bars And ToneA
Create a Bars and Tone synthetic media item in the project (useful for leader/calibration). Returns the created item's name, nodeId, and treePath, found by reading the project back.
Inputs: name, width, bin_id, height, +7 more. Returns: ok, data, tool, error, +2 more
create_binCreate BinA
Create a new bin (folder) in the project panel, optionally nested inside an existing bin. Reads the project back: verified is true only when the new bin is a direct child of the requested parent; otherwise the result reports outcome committed_unverified.
Inputs: name (required), parent_bin, parent_bin_id, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
create_caption_trackCreate Caption TrackA
Import an already reviewed caption artifact into the active sequence, or create a local lecture-caption timing and review workflow plan. Import rejects unsupported formats before host dispatch and reports structural success only when valid count readback shows exactly one new caption track. Unreadable or unexpected results preserve committed_unverified diagnostics; inspect before retrying. Captions import with Premiere's default style; styling, per-word colour, and Upgrade Caption to Graphic stay manual (get_caption_style_guidance). The planning action never contacts Premiere or changes an artifact. Caption tracks render in export_sequence by default; CEP cannot remove or hide them. Import results include observed undoSteps (null when unavailable) and reversal guidance for guarded experimental QE multiple_undo or caption mute through a capable UXP panel.
Inputs: action, item_id, start_seconds, caption_format, +9 more. Returns: ok, data, tool, error, +2 more
create_context_edit_planCreate Context Edit PlanARead-onlyIdempotent
Create a non-mutating, evidence-backed edit-plan scaffold from indexed Premiere context. It returns ranked source/time candidates and stale-state guards; the model must review them and use preview_edit_plan before any mutation.
Inputs: intent (required), project_id (required), strategy, sequence_id, +4 more. Returns: ok, data, tool, error, +2 more
create_editorial_context_packCreate Editorial Context PackARead-onlyIdempotent
Create a compact Markdown reading view from already captured local transcript, shot, audio, note, source, or timeline context. It returns stable evidence IDs and context revisions for review, never calls an AI/provider or Premiere, and cannot change the project.
Inputs: intent (required), project_id (required), kinds, max_entries, +5 more. Returns: ok, data, tool, error, +2 more
create_editorial_planCreate Editorial PlanARead-onlyIdempotent
Create a local, evidence-backed editorial workflow plan from captured project context. It never calls an LLM, uploads media, or changes Premiere.
Inputs: intent (required), workflow (required), project_id (required), sequence_id, +6 more. Returns: ok, data, tool, error, +2 more
create_mogrt_batchCreate Mogrt BatchA
Create the exact MOGRT recipes from a one-time batch preview. Requires explicit export confirmation and stops on the first After Effects failure without claiming rollback.
Inputs: preview_token (required), confirm_export (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
create_mogrt_recipeCreate Mogrt RecipeA
Create exactly one previewed MOGRT recipe in a saved After Effects project inside the approved workspace. Requires explicit export confirmation; it never creates projects or output folders.
Inputs: preview_token (required), confirm_export (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
create_projectCreate ProjectC
Create a new Premiere Pro project at the specified path
Inputs: path (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
create_project_backupCreate Project BackupA
Create a collision-safe, byte-verified backup beside an existing .prproj file without opening or modifying the source project.
Inputs: project_path (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
create_sequenceCreate SequenceC
Create a new sequence in the project
Inputs: name (required), preset_path, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
create_sequence_checkpointCreate Sequence CheckpointA
Clone a sequence into a named '[checkpoint]' copy before a risky edit and return a diff_sequence_snapshots-compatible snapshot of the original. Verifies the clone exists with matching track and clip counts, re-activates the original, and never deletes or overwrites anything.
Inputs: label, sequence_id, idempotency_key, include_snapshot, +2 more. Returns: ok, data, tool, error, +2 more
create_sequence_from_clipsCreate Sequence From ClipsA
Create a new sequence from project items, then verify its registered identity, name and source-item placements. clipCount reports observed track items; requestedClipCount reports requested source items.
Inputs: name (required), item_ids (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
create_sequence_from_presetCreate Sequence From PresetA
EXPERIMENTAL (undocumented QE DOM): create a new sequence from a specific preset file (.sqpreset) using qe.project.newSequence. Reports success only after a new sequence ID appears in the project collection; a same-name sequence that was already active is not treated as created.
Inputs: name (required), preset_path (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
create_smart_binCreate Smart BinA
Create a smart bin (search bin) and inspect its new identity and name. The stored search query has no getter, so creation reports committed_unverified with identity verification separately.
Inputs: name (required), query (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
create_source_freeze_frameCreate Source Freeze FrameA
Create a freeze frame from a project item at a SOURCE-media time (not a sequence time; for a sequence time use freeze_frame). Decodes the frame with ffmpeg from the item's media file (requires ffmpeg/ffprobe on PATH; no Source Monitor or QE state is used), refuses to overwrite an existing output file, imports the still and sets its Out mark to duration_seconds. Optional place puts it on an empty range of one video track (refuses an occupied or locked range rather than overwriting); optional zoom (requires place) adds Motion Scale and optional Position keyframes at the clip's first and last frame for a punch-in. Every step is read back; partial success reports which steps were committed but not verified. Refuses before any change when the item has no readable local media, the time is past the media end, or the item's interpreted frame rate differs from the file's.
Inputs: output_path (required), source_item_id (required), source_time_seconds (required), zoom, +5 more. Returns: ok, data, tool, error, +2 more
create_subclipCreate SubclipA
Create a subclip from a project item with in/out points (seconds from the start of the file, even when the media carries a start timecode). Returns the new item's nodeId and reads its stored range back from Premiere project metadata: outcome verified when each observed in/out point is within half a media frame (or audio sample) of the request, so a whole-frame miss is committed_unverified. Points are snapped to the nearest media frame and sent a quarter frame past it so Premiere stores that frame. A media start timecode is reported as mediaStartSeconds.
Inputs: name (required), item_id (required), in_seconds (required), out_seconds (required), +3 more. Returns: ok, data, tool, error, +2 more
create_subsequenceCreate SubsequenceA
Create a separate subsequence from selected clips or a time range. This Premiere API does not replace the original timeline clips with a nested-sequence reference.
Inputs: idempotency_key, expected_cep_target, expected_project_path, ignore_track_targeting. Returns: ok, data, tool, error, +2 more
crop_clipCrop ClipA
Apply or update Premiere's Crop effect on one video clip and read back every requested value. Adding Crop uses the legacy QE catalog only when the clip does not already contain it.
Inputs: node_id (required), top, left, zoom, +6 more. Returns: ok, data, tool, error, +2 more
delete_binDelete BinADestructive
Delete a bin (folder) and everything inside it from the project panel, and read back that it is gone. Deleting a bin also removes its media's clips from every sequence and deletes sequences stored in the bin, so a bin whose contents are used on a timeline — including a Sequences bin whose media lives elsewhere — is refused unless confirm_remove_from_sequences is true; the refusal lists the sequences and tracks (see find_item_usages). Bins holding offline media are refused unless allow_offline is true.
Inputs: bin_id (required), allow_offline, idempotency_key, expected_cep_target, +2 more. Returns: ok, data, tool, error, +2 more
delete_markerDelete MarkerBDestructive
Delete a marker at a specific time position. EXPERIMENTAL (QE DOM): the receipt reports undoStackIndex movement, which does not prove QE can reverse the marker. Every marker attempt protects an engine undo boundary; undoTracked:false means the marker did not observably advance the QE index.
Inputs: time_seconds (required), node_id, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
delete_multiple_project_itemsDelete Multiple Project ItemsADestructive
Delete several project items (bins, sequences, clips or files) and read back that each is gone. Every item is checked before any is deleted, against one timeline-usage index built in a single pass over every sequence (the same scan get_unused_media uses), so 100 items cost one scan instead of 100. Deletions then run in chunks of 25 items per host command with per-chunk readback and a progress notification at least every 10 s; up to 500 items per call. A chunk that fails stops the batch and the reply counts what was deleted before it. organize_project_items_uxp with action 'remove' (authenticated UXP bridge) is the preferred, documented route; this CEP fallback deletes clips and files through a temporary bin, which cannot be undone here. Items (or bins whose contents are) used on a timeline are refused unless confirm_remove_from_sequences is true. Nested sequences count as in use on the parent timeline.
Inputs: item_ids (required), allow_offline, idempotency_key, expected_cep_target, +2 more. Returns: ok, data, tool, error, +2 more
delete_preview_filesDelete Preview FilesADestructive
Request preview/render cache deletion through experimental QE DOM. A false return fails; other returns remain committed_unverified because no cache-file readback is available.
Inputs: media_type, idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
delete_project_itemDelete Project ItemADestructive
Delete a project item (bin, sequence, clip or file) from the project panel and read back that it is gone. organize_project_items_uxp with action 'remove' (authenticated UXP bridge) is the preferred, documented route. This CEP fallback deletes a clip or file by moving it into a temporary bin and deleting that bin, which cannot be undone here. Deleting media also removes its clips from every sequence, so an item (or a bin whose contents are) used on a timeline is refused unless confirm_remove_from_sequences is true. A sequence nested on another timeline is refused the same way.
Inputs: item_id (required), allow_offline, idempotency_key, expected_cep_target, +2 more. Returns: ok, data, tool, error, +2 more
delete_sequenceDelete SequenceADestructive
Delete a sequence from the project and read back that it is gone. A sequence nested on another timeline is refused unless confirm_remove_from_sequences is true, matching delete_project_item; deleting it would remove or orphan those nested clips.
Inputs: sequence_id (required), idempotency_key, expected_cep_target, expected_project_path, +1 more. Returns: ok, data, tool, error, +2 more
delete_trackDelete TrackADestructive
EXPERIMENTAL (undocumented QE DOM: removeVideoTrack/removeAudioTrack). Delete a video or audio track from the active sequence through QE and verify that exactly that track was removed (the remaining tracks keep their clips, custom names and lock/mute state in order). Refuses a track that still holds clips unless force is true. Caption tracks cannot be deleted (no host API); a caption track_type is refused with the manual route.
Inputs: track_type (required), track_index (required), force, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
deselect_all_clipsDeselect All ClipsC
Deselect all clips in the active sequence.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
detach_proxyDetach ProxyB
Detach/remove the proxy from a project item and read hasProxy back; unavailable readback reports committed_unverified.
Inputs: item_id (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
detect_active_picture_boundsDetect Active Picture BoundsA
Detect the most frequent active-picture crop rectangle in decoded video, exposing probable letterbox or pillarbox bars without modifying the source.
Inputs: media_path (required), limit, use_cache, sample_seconds, +4 more. Returns: ok, data, tool, error, +2 more
detect_audio_transientsDetect Audio TransientsA
Find probable beat or edit-point transients from decoded audio peaks. Returns candidates for editorial review; it does not claim musical beat-grid accuracy or change a timeline.
Inputs: media_path (required), use_cache, maximum_events, threshold_dbfs, +5 more. Returns: ok, data, tool, error, +2 more
detect_beatsDetect BeatsA
Estimate a steady beat grid from a local audio or video file without changing Premiere. FFmpeg decodes at most 30 minutes to a bounded mono analysis stream; local onset autocorrelation returns BPM, phase-aligned beat times, confidence, and half/double-time alternatives.
Inputs: media_path (required), max_beats, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
detect_motion_peaksDetect Motion PeaksA
Find probable high-motion moments in a bounded local video sample from decoded frame differences. Read-only editorial candidates; camera movement, flashes, cuts, and subject motion are not semantically distinguished.
Inputs: media_path (required), threshold, use_cache, maximum_events, +7 more. Returns: ok, data, tool, error, +2 more
detect_repeated_takesDetect Repeated TakesARead-onlyIdempotent
Detect repeated sentence takes (retakes) in a word timeline using token similarity within a time window, and plan removal of all but the kept take. Returns take groups, removal and keep ranges, and apply routes. Local-only; never changes Premiere.
Inputs: word_timeline (required), keep, min_words, frame_rate, +6 more. Returns: ok, data, tool, error, +2 more
detect_scene_editsDetect Scene EditsC
Safe scene-edit facade. It uses the authenticated Premiere UXP bridge when connected and explicitly confirmed; CEP fallback is intentionally withheld because synchronous scene detection can block the panel.
Inputs: mode (required), confirm_non_undoable (required), operation_id, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
detect_silenceDetect SilenceA
Find silent ranges in a media file and return both the silences and the complementary segments worth keeping. Analysis only — nothing in the project or on the timeline is modified. Requires ffmpeg on PATH: Premiere's scripting API exposes no audio-level or waveform data, so silence cannot be measured through the bridge.
Inputs: media_path, idempotency_key, project_item_id, noise_threshold_db, +3 more. Returns: ok, data, tool, error, +2 more
detect_source_scene_changesDetect Source Scene ChangesB
Detect probable visual cuts in a local source file using FFmpeg scene scores. Read-only and source-relative; it does not cut a Premiere timeline.
Inputs: media_path (required), threshold, maximum_events, idempotency_key, +3 more. Returns: ok, data, tool, error, +2 more
diff_sequence_snapshotsDiff Sequence SnapshotsARead-onlyIdempotent
Diff two sequence snapshots (from get_sequence_structure or inspect_sequence_structure_uxp) into added, removed, moved, trimmed, retimed, enabled, and renamed clip changes with frame deltas, per-track counts, and EDL-like timecode lines. Local-only; never reads or changes Premiere.
Inputs: after (required), before (required), frame_rate, tolerance_frames, +2 more. Returns: ok, data, tool, error, +2 more
duplicate_clipDuplicate ClipA
EXPERIMENTAL: Duplicate a timeline clip, with its linked audio/video partner, onto the first tracks above it that are empty for the clip's time range. The copy keeps the clip's source in point and visible duration, is placed with an overwrite edit (nothing ripples), and is read back. A post-write mismatch is committed_unverified; inspect the timeline or use Undo. High-rate audio above 48 kHz refuses before writing temporary source marks unless its existing marks already match the copy range; native restore diagnostics are pending. Fails without changes when no free track is available; add one with add_tracks.
Inputs: node_id (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
duplicate_sequenceDuplicate SequenceA
Duplicate an existing sequence and report the new copy's sequence ID (id) and, when Premiere exposes it, its project item node ID (projectItemNodeId). Project-item tools accept either. Readback verifies identity only; audio track-to-master routing is not verified. When sound is expected, check an export with export_sequence audio_check=expect_signal.
Inputs: sequence_id (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
enable_disable_clipEnable Disable ClipC
Enable or disable a clip on the timeline
Inputs: enabled (required), node_id (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
encode_fileEncode FileA
Request an Adobe Media Encoder encode for an external file. Requires a saved project. The returned job ID is an unverified handoff; verify queue presence or the output file independently. Optional start_batch requests processing of every ready AME queue job, including unrelated jobs.
Inputs: input_path (required), output_path (required), preset_path (required), in_seconds, +6 more. Returns: ok, data, tool, error, +2 more
encode_project_itemEncode Project ItemA
Request an Adobe Media Encoder encode for a project item. Requires a saved project. The returned job ID is an unverified handoff; verify queue presence or the output file independently. Optional start_batch requests processing of every ready AME queue job, including unrelated jobs.
Inputs: item_id (required), output_path (required), preset_path (required), start_batch, +4 more. Returns: ok, data, tool, error, +2 more
enqueue_after_effects_renderEnqueue After Effects RenderA
Queue exactly one previewed After Effects render with named host templates. Requires explicit confirmation; it saves the open project but never starts rendering or overwrites output.
Inputs: preview_token (required), confirm_enqueue (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
export_aafExport AafB
Unavailable on the CEP backend. Use export_aaf_uxp with an authenticated Premiere 26.3+ UXP bridge.
Inputs: output_path (required), sample_rate, mix_down_video, bits_per_sample, +4 more. Returns: ok, data, tool, error, +2 more
export_and_verifyExport And VerifyA
Preflight and directly render a guarded CEP sequence, then independently hash and probe the exact output against a delivery contract and optional decoded QC. Refuses existing destinations; never treats queue acceptance as completion.
Inputs: contract (required), output_path (required), preset_path (required), range, +5 more. Returns: ok, data, tool, error, +2 more
export_as_fcp_xmlExport As Fcp XmlA
Export the active sequence as a Final Cut Pro XML file. Sequences with effects FCP XML cannot represent can make Premiere show a Translation Report modal after writing the XML; dismiss it in Premiere before any queued command can run. Detects the written XML and fresh report if the modal blocks the host. Default wait is 60 minutes for long sequences.
Inputs: output_path (required), idempotency_key, timeout_minutes, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
export_as_projectExport As ProjectB
Export a sequence as a standalone Premiere Pro project file. Fails when Premiere writes no file or leaves a pre-existing output unchanged.
Inputs: output_path (required), overwrite, sequence_id, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
export_facility_metadata_tableExport Facility Metadata TableA
Create a new bounded ALE facility metadata table from reviewed named field rows. Rejects duplicate columns, unknown row fields and tabs/newlines that ALE cannot safely represent. No project metadata is read or changed; verify downstream facility import separately.
Inputs: fps (required), rows (required), columns (required), output_path (required), +3 more. Returns: ok, data, tool, error, +2 more
export_frameExport FrameA
Export a file-verified still image. PNG stills keep the sequence's transparency (straight alpha, reported as hasAlpha); composite them over black before measuring brightness or comparing with a video render. A single still does not verify motion over time, playback or audio. After a linked After Effects composition changes, Premiere can return its cached frame for a time it already rendered; to check the change, export a time not exported since the change.
Inputs: output_path (required), time_seconds, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
export_omfExport OmfA
Export the active sequence as an OMF file (Open Media Framework, for audio post-production). Long sequences can use a longer wait (default 60 minutes); if Premiere writes the file but times out, the receipt includes its size as committed_unverified.
Inputs: output_path (required), include_pan, sample_rate, handle_frames, +8 more. Returns: ok, data, tool, error, +2 more
export_review_markersExport Review MarkersA
Create a new bounded review-marker CSV or JSON from caller-reviewed marker readback. Includes exact ticks, rational rate, source/sequence identity and display timecodes with explicit start offset/drop-frame policy. CSV text escapes spreadsheet formula prefixes, quotes and newlines. Existing files are never overwritten.
Inputs: rate (required), format (required), target (required), markers (required), +5 more. Returns: ok, data, tool, error, +2 more
export_sequenceExport SequenceA
Export the active sequence directly (Premiere renders it; blocks until done) with an Adobe Media Encoder preset. The output extension must match what the preset writes (an H.264 preset in AME's QuickTime folder writes .mov); a missing extension is added. Refuses an output_path that already exists unless overwrite is true. Fails if Premiere rejects the render, verifies a non-empty file was written (for an overwrite, that the file changed), and checks its duration with ffprobe within one sequence frame. An unavailable or mismatched duration leaves a written artifact unverified. Optional audio_check reports decoded signal, silence, absent audio or an unavailable check; expect_signal makes a silent or absent stream fail verification. Signal does not establish audibility, sync or sound quality. range 'work_area' fails closed unless the work area is enabled and covers only part of the sequence — otherwise Premiere would encode the entire timeline.
Inputs: output_path (required), range, overwrite, audio_check, +6 more. Returns: ok, data, tool, error, +2 more
export_sequence_clip_review_framesExport Sequence Clip Review FramesA
Export one file-verified still frame at the midpoint of each clip on a chosen video track in one bridge request. If Media Encoder still capture cannot restore sequence In/Out, remaining frames are not attempted and the call fails. Read-only in Premiere; it does not mute tracks or claim visual quality.
Inputs: output_dir (required), limit, track_index, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
export_sequence_edlExport Sequence EdlA
Generate a CMX 3600 EDL for one video or audio track of a sequence from Premiere timeline readback (cuts, reels, source/record timecode, M2 lines for retimed clips), self-validate it, and return it inline or write it inside an approved workspace. Premiere is only read; this is not a Premiere-native export. Long sequences can use a longer timeout (default 30 minutes).
Inputs: title, reel_mode, drop_frame, frame_rate, +13 more. Returns: ok, data, tool, error, +2 more
export_sequence_job_startExport Sequence Job StartA
Start an asynchronous Adobe Media Encoder export of the active sequence and return a job id at once, so long renders (such as full episodes) do not hold the MCP call open. Poll get_export_job_status until it reports completed or failed. Requires a saved project, an .epr preset_path (Same as Project presets are refused), an existing output folder, and an output_path with no file yet (existing files are always refused; AME may otherwise rename or overwrite). The output extension must match the preset; a missing extension is added. range follows export_sequence: in_to_out and work_area fail closed instead of encoding the whole timeline. start_batch (default true) asks AME to start every ready queue job, including unrelated ones. Success means AME accepted the job (committed_unverified); render completion and the file are verified later by get_export_job_status. Jobs are tracked only by this server process.
Inputs: output_path (required), preset_path (required), range, start_batch, +3 more. Returns: ok, data, tool, error, +2 more
export_sequence_marker_review_framesExport Sequence Marker Review FramesA
Export up to 24 file-verified still frames at active-sequence marker positions in one bridge request for marker-driven review. If Media Encoder still capture cannot restore sequence In/Out, remaining frames are not attempted and the call fails. It reads markers and writes image files only; it does not add, update, or remove Premiere markers.
Inputs: output_dir (required), limit, end_seconds, marker_type, +4 more. Returns: ok, data, tool, error, +2 more
export_sequence_review_framesExport Sequence Review FramesA
Export 2-24 evenly spaced, file-verified frames from an active-sequence range in one bridge round trip for visual review. If Media Encoder still capture cannot restore sequence In/Out, remaining frames are not attempted and the call fails. Still capture does not verify temporal animation, playback, audio, or editorial quality; PNG frames keep the sequence's transparency (straight alpha), so composite them over black before comparing with a video export.
Inputs: output_dir (required), end_seconds, frame_count, start_seconds, +3 more. Returns: ok, data, tool, error, +2 more
extract_selectionExtract SelectionB
EXPERIMENTAL (undocumented QE DOM: extract()). Extract (remove and close the gap) the content between the sequence in/out points on every targeted, unlocked track, then verify each targeted track lost exactly the range and its later clips moved up by the range. Marks that Premiere stored just off a frame are first re-written on that exact frame through QE (marksRewritten). Requires sequence in/out marks that do not span the whole sequence. Premiere can also change untargeted tracks (for example the linked audio of targeted video, or sync-locked tracks); those are not verified but are listed in otherTracksChanged.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
find_items_by_media_pathFind Items By Media PathARead-onlyIdempotent
Find project items whose media path contains the given search string
Inputs: path_search (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
find_item_usagesFind Item UsagesARead-onlyIdempotent
Read-only: list where project items are used on timelines, as sequence name/ID, track type/index and clip count. A bin counts everything inside it, including sequences stored there (every clip on those timelines), because deleting a bin deletes those sequences even when their media lives in another bin. Run this before deleting or reorganizing bins, especially after import_fcp_xml, which can reuse existing project items for its sequences. Also reports offline (missing-media) items inside each target.
Inputs: item_ids (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
find_project_item_by_nameFind Project Item By NameBRead-onlyIdempotent
Find a project item by name (searches recursively through bins)
Inputs: name (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
freeze_frameFreeze FrameA
Create a freeze frame from a clip at a specific SEQUENCE time (for a source-media time, use create_source_freeze_frame). Existing outputs require overwrite true. Exports the frame, imports it back as a still image, and sets the still's Out mark to duration_seconds so add_to_timeline places it at that length (snapped to the still's frame grid, then to the sequence frame). It does not place the still on the timeline.
Inputs: output_path (required), overwrite, time_seconds, idempotency_key, +3 more. Returns: ok, data, tool, error, +2 more
generate_media_contact_sheetGenerate Media Contact SheetA
Generate a new, disk-verified PNG contact sheet from evenly sampled source frames. Refuses to overwrite an existing output and does not modify Premiere or the source.
Inputs: media_path (required), output_path (required), rows, columns, +4 more. Returns: ok, data, tool, error, +2 more
get_active_sequenceGet Active SequenceARead-onlyIdempotent
Get bounded, paged information about the currently active sequence (50 clips by default). Audio and video clips include source In/Out seconds. Follow pagination.nextOffset for more. Bounded source-alignment diagnostics include separate picture/sound offsets and media-pair group inconsistencies, with limited group context outside this page; they do not verify playback sync.
Inputs: clip_limit, track_type, clip_offset, end_seconds, +4 more. Returns: ok, data, tool, error, +2 more
get_advanced_feature_supportGet Advanced Feature SupportBRead-onlyIdempotent
Report public-API support, prerequisites, entitlements, and user-assisted boundaries for Premiere collaboration and AI features
Inputs: backend, frameio_entitled, premiere_version, network_available, +3 more. Returns: ok, data, tool, error, +2 more
get_all_project_pathsGet All Project PathsARead-onlyIdempotent
Get all unique media file paths used in the project. Useful for asset management and archiving.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_av_feature_supportGet Av Feature SupportCRead-onlyIdempotent
Report the documented automation boundary for advanced audio and modern color management, including actionable reasons for UI-only features.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_bin_contentsGet Bin ContentsARead-onlyIdempotent
Get detailed contents of a specific bin (folder) including all nested items, media paths, offline status, color labels, and metadata. Searches by bin name or node ID.
Inputs: bin_id (required), limit, offset, max_depth, +3 more. Returns: ok, data, tool, error, +2 more
get_bridge_telemetryGet Bridge TelemetryARead-onlyIdempotent
Read-only, sends no command: inspect privacy-preserving aggregate bridge health (pending command/response counts, busy operations, queue age, CEP heartbeat state) and diagnose whether the CEP bridge is blocked. Use it after a timeout or before retrying: a modal dialog such as Missing Media blocks Premiere's scripting engine, so a probe script cannot run. blocking.state is idle, busy, likely_blocked_by_dialog, stuck, connector_not_running, or unknown, with reason, ages in ms, queued counts, the running tool name when known, and nextSteps. It reads only heartbeat and busy-marker timing; no OS window probe is performed (macOS needs Accessibility permission and window titles can name media), and no dialog is dismissed. Returns no paths, file names, or script contents.
Inputs: expected_cep_target, expected_command_ms, expected_project_path. Returns: ok, data, tool, error, +2 more
get_capabilitiesGet CapabilitiesARead-onlyIdempotent
Discover Premiere operations and report backend coverage, authority, and verification requirements. Use tool_query with task keywords (for example transcript, captions, or review frames) for ranked, bounded matches available in this session. Use tool_names for exact lookups or tool_offset/tool_limit for paging. Discovery never grants authority or proves a live host is ready.
Inputs: tool_limit, tool_names, tool_query, tool_offset, +3 more. Returns: ok, data, tool, error, +2 more
get_caption_style_guidanceGet Caption Style GuidanceARead-onlyIdempotent
Read-only caption style guidance: a preset and/or custom_style turned into Premiere 2024+ Properties-panel Track Style steps, plus keyword_highlight per-word steps, manual Upgrade Caption to Graphic steps, and render-verification routes. NEVER modifies captions: Premiere has no caption style, per-word, or upgrade API.
Inputs: preset, custom_style, keyword_highlight, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
get_clip_adjustment_layerGet Clip Adjustment LayerBRead-onlyIdempotent
Check if a clip is an adjustment layer
Inputs: node_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_clip_at_playheadGet Clip At PlayheadBRead-onlyIdempotent
Get all clips at the current playhead position across all tracks.
Inputs: track_type, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_clip_at_positionGet Clip At PositionBRead-onlyIdempotent
Get the clip at a specific time position on a track
Inputs: track_type (required), track_index (required), time_seconds (required), expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
get_clip_linksGet Clip LinksCRead-onlyIdempotent
Get information about linked clips (audio/video linked together) for a given clip.
Inputs: node_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_clip_markersGet Clip MarkersARead-onlyIdempotent
Get all markers on a specific project item (source clip markers, not sequence markers).
Inputs: item_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_clip_propertiesGet Clip PropertiesCRead-onlyIdempotent
Get detailed properties of a specific clip by its node ID
Inputs: node_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_clip_speedGet Clip SpeedARead-onlyIdempotent
Get the playback speed and reverse state of a clip
Inputs: node_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_clip_volumeGet Clip VolumeARead-onlyIdempotent
Read an audio clip's Volume > Level in dB. Use this to verify a level actually applied - setValue() clamps silently. Does not report Essential Sound Amplify automation.
Inputs: node_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_color_labelGet Color LabelBRead-onlyIdempotent
Get the color label of a project item
Inputs: item_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_color_spaceGet Color SpaceBRead-onlyIdempotent
Get the color space information for a project item
Inputs: item_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_duplicate_mediaGet Duplicate MediaARead-onlyIdempotent
Find project items that reference the same source media file. Useful for consolidation. After Effects compositions imported from the same .aep/.aepx are only grouped when their comp names also match. Groups are paged (default 100) and can be filtered by a case-insensitive item-name substring; follow nextOffset while truncated is true.
Inputs: limit, offset, contains, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
get_effect_propertiesGet Effect PropertiesARead-onlyIdempotent
List all properties of a specific effect on a clip, including current values. Values are what Premiere's scripting API returns, not necessarily the units shown in Effect Controls. Effects on audio clips (anything other than the built-in Volume, Channel Volume, Panner and Balance) usually use normalized 0-1 values. Each numeric property reports valueScale (normalized_0_1 or host_raw_unknown), parameterScale summarises the values seen (normalized_0_1, host_raw_unknown, mixed or unknown), and the result carries a warning, because Adobe does not document the mapping to Hz, dB or ms. Calibrate audio effect changes by rendering. Volume > Level also reports displayValue in dB.
Inputs: node_id (required), effect_name (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_encoder_presetsGet Encoder PresetsARead-onlyIdempotent
List available Adobe Media Encoder export presets, with the .epr path of each so it can be passed to export_sequence or encode_project_item. Presets are discovered by scanning the .epr files Adobe ships on disk (Premiere's ExtendScript API exposes no preset enumeration).
Inputs: limit, format, offset, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
get_export_file_extensionGet Export File ExtensionARead-onlyIdempotent
Get the export file extension from Premiere. If Premiere returns none, infer it only for an existing .epr whose real filesystem parent is a recognized Adobe Media Encoder format folder; report that resolved preset path. This fallback is unconfirmed and should be checked before delivery.
Inputs: preset_path (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_export_job_statusGet Export Job StatusARead-onlyIdempotent
Read the status of an export job started by export_sequence_job_start: queued, encoding (with AME-reported progress when events arrive), finalizing, completed, failed, cancelled, or unknown. Evidence is reported separately: Adobe Media Encoder job events recorded inside Premiere's ExtendScript engine, and Node-side observation of the output file (exists, non-empty, size and modification time unchanged across stability_window_ms and since the previous poll). completed is verified only when AME reported completion, the file is stable and non-empty, and ffprobe confirms its duration within one frame; without an AME completion event a stable file is reported as completed but unverified. Jobs started by an earlier server process report unknown (server_restarted). Read-only: it never starts, cancels, or retries a render.
Inputs: job_id (required), idempotency_key, expected_cep_target, stability_window_ms, +1 more. Returns: ok, data, tool, error, +2 more
get_footage_interpretationGet Footage InterpretationCRead-onlyIdempotent
Get footage interpretation settings for a project item
Inputs: item_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_full_clip_infoGet Full Clip InfoARead-onlyIdempotent
Get exhaustive information about a specific clip: all effects with every property value, source media details, footage interpretation, metadata, markers, speed, enabled state, color label, linked clips, and proxy status.
Inputs: node_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_full_project_overviewGet Full Project OverviewARead-onlyIdempotent
Get a comprehensive overview of the project. Use include_bin_tree false or sequence_offset/sequence_limit for a bounded response on large projects.
Inputs: max_bin_depth, sequence_limit, sequence_offset, include_bin_tree, +2 more. Returns: ok, data, tool, error, +2 more
get_full_sequence_infoGet Full Sequence InfoARead-onlyIdempotent
Get bounded information about a sequence (50 clips by default; follow pagination.nextOffset; markers and transitions capped at 50 per collection): settings, all tracks with lock/mute/target state, paged clips with positions/effects/speed/enabled state, bounded markers, transitions, in/out points, and work area. Bounded source-alignment diagnostics include separate picture/sound offsets and media-pair group inconsistencies, with limited group context outside this page; they do not verify playback sync.
Inputs: clip_limit, track_type, clip_offset, end_seconds, +5 more. Returns: ok, data, tool, error, +2 more
get_graphics_white_luminanceGet Graphics White LuminanceCRead-onlyIdempotent
Get the graphics white luminance value (HDR setting) for the project
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_insertion_binGet Insertion BinARead-onlyIdempotent
Get the current target bin for new imports (the bin that is currently focused in the Project panel)
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_item_infoGet Item InfoBRead-onlyIdempotent
Get detailed type info about a project item (is it a sequence, multicam, merged clip, etc.)
Inputs: item_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_keyframesGet KeyframesARead-onlyIdempotent
Get all keyframes for a specific effect property on a clip. Each key's time is in seconds from the clip's start; mediaSeconds is Premiere's stored media time. mediaTicks returns each native key time as a tick string.
Inputs: node_id (required), effect_name (required), property_name (required), property_index, +2 more. Returns: ok, data, tool, error, +2 more
get_last_operationsGet Last OperationsARead-onlyIdempotent
Read-only: list the most recent state-changing tool calls this MCP server process handled, newest first, with status (running, succeeded, failed), receipt outcome and timing. Use it after a client-side timeout before retrying an edit: a call still running, or one that already succeeded, must not be sent again. The running count includes all active calls, even outside the history window; runningOperations lists up to limit active calls and runningOperationsTruncated flags omitted entries. Entries made with idempotency_key carry idempotencyKeyHash, a 12-character SHA-256 prefix (never the raw key). Records only tool names, timing and outcomes; it does not prove Premiere state, and it starts empty when the server restarts.
Inputs: limit, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_linked_itemsGet Linked ItemsBRead-onlyIdempotent
Get all clips in the sequence that are linked to the same source as a given clip
Inputs: node_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_metadataGet MetadataARead-onlyIdempotent
Get metadata for a project item. Returns bounded parsed fields by default; GPS, serials, and personal contact/author fields are omitted. Raw packets require explicit include_project_metadata/include_xmp_metadata and include_sensitive true. Media paths require include_media_path true. Project metadata XML and file/clip XMP are separate packets; disable either when identity/path is enough. Prefer inspect_project_panel_metadata_uxp item_columns or manage_metadata_uxp inspect_fields for visible columns. This is not the premiere://project/metadata resource. GPS and serials are omitted from parse_fields unless include_sensitive is true.
Inputs: item_id (required), parse_fields, include_sensitive, include_media_path, +4 more. Returns: ok, data, tool, error, +2 more
get_mogrt_componentGet Mogrt ComponentARead-onlyIdempotent
Get MOGRT (Motion Graphics Template) component parameters from a clip. Each parameter includes textValue (visible text extracted from textEditValue when present). Pass expected_values to audit text controls such as Headline; the result flags verified, mismatch, or missing_property per field. Reads the stored property, not the Essential Graphics panel display, which Premiere can show stale (host UI behavior this tool cannot refresh).
Inputs: node_id (required), expected_values, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_next_edit_pointGet Next Edit PointBRead-onlyIdempotent
Find the next or previous edit point (clip boundary) from the playhead position.
Inputs: direction, track_type, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_offline_mediaGet Offline MediaARead-onlyIdempotent
Find all offline/missing media in the project with their expected file paths. Essential for diagnosing broken links.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_operation_performanceGet Operation PerformanceCRead-onlyIdempotent
Read content-free local median/p95 stage timing, payload sizes, and bounded analysis cache occupancy. Missing measurements remain unknown.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_playhead_positionGet Playhead PositionARead-onlyIdempotent
Get the current playhead (CTI) position in the active sequence
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_premiere_stateGet Premiere StateARead-onlyIdempotent
Get a comprehensive snapshot of the current Premiere Pro state: project info, active sequence, playhead position, selected clips, and available sequences. The best first call to understand the current context.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_project_infoGet Project InfoCRead-onlyIdempotent
Get information about the currently open Premiere Pro project
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_project_item_infoGet Project Item InfoBRead-onlyIdempotent
Get detailed information about a project item (media file in the project panel): media path, resolution, duration, frame rate, codec info, metadata, color label, offline status, in/out points, and proxy status.
Inputs: item_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_project_panel_metadataGet Project Panel MetadataARead-onlyIdempotent
Get the current Project-panel column layout as XML. This is schema/layout configuration, not per-item Scene/Shot/Take values; use inspect_project_panel_metadata_uxp item_columns or get_metadata for those. Output is capped by max_chars (default 20000); when truncated is true the XML is incomplete and must not be passed to set_project_panel_metadata.
Inputs: max_chars, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_project_scratch_disksGet Project Scratch DisksARead-onlyIdempotent
Get the project's scratch disk locations (captured media, previews, auto-save, Motion Graphics template media, and more). Premiere's scripting API has no scratch-disk getter, so the settings are read from the saved .prproj file; unsaved changes are not reflected. 'SameAsProject' resolves to the project's folder.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_qe_clip_infoGet Qe Clip InfoARead-onlyIdempotent
Get QE DOM information about a clip, including properties not available through the standard API.
Inputs: clip_index (required), track_type (required), track_index (required), expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
get_render_queue_statusGet Render Queue StatusARead-onlyIdempotent
Report the Adobe Media Encoder queue running state, or fail closed with a named capability error when this Premiere build exposes no queue-status method on app.encoder.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_selected_clipsGet Selected ClipsBRead-onlyIdempotent
Get the currently selected clips in the active sequence
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_sequence_countGet Sequence CountBRead-onlyIdempotent
Get the total number of sequences in the project.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_sequence_in_out_pointsGet Sequence In Out PointsCRead-onlyIdempotent
Get the current sequence in and out points
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_sequence_markers_by_typeGet Sequence Markers By TypeBRead-onlyIdempotent
Get all markers of a specific type (comment, chapter, web link, etc.) from a sequence.
Inputs: marker_type (required), sequence_id, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_sequence_settingsGet Sequence SettingsBRead-onlyIdempotent
Get the settings (resolution, frame rate, etc.) of a sequence
Inputs: sequence_id, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_sequence_structureGet Sequence StructureARead-onlyIdempotent
Get a bounded structural page of the active sequence (50 clips by default; follow pagination.nextOffset): all track counts, paged clips with positions, gaps, and clip metadata. Essential for understanding timeline state before making edits. Bounded source-alignment diagnostics include separate picture/sound offsets and media-pair group inconsistencies, with limited group context outside this page; they do not verify playback sync.
Inputs: clip_limit, track_type, clip_offset, end_seconds, +5 more. Returns: ok, data, tool, error, +2 more
get_source_monitor_infoGet Source Monitor InfoARead-onlyIdempotent
Get information about the clip currently loaded in the Source Monitor.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_source_monitor_positionGet Source Monitor PositionARead-onlyIdempotent
Get the current time indicator position in the Source Monitor
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_target_tracksGet Target TracksARead-onlyIdempotent
Get which tracks are currently targeted for editing. Premiere allows several video or audio tracks to be targeted at the same time; every targeted track is listed. Tracks whose state cannot be read are listed under unreadable.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_timeline_gapsGet Timeline GapsARead-onlyIdempotent
Find a bounded page of gaps (50 by default; follow pagination.nextOffset) on the timeline between clips. Useful for identifying where content is missing or where clips can be tightened.
Inputs: clip_limit, track_type, clip_offset, end_seconds, +6 more. Returns: ok, data, tool, error, +2 more
get_timeline_summaryGet Timeline SummaryARead-onlyIdempotent
Get a human-readable summary of the timeline: total duration, clip count per track, total gaps, coverage percentage, used media files, effect usage, and marker overview. Great for a quick understanding of sequence state.
Inputs: sequence_id, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_total_clip_countGet Total Clip CountBRead-onlyIdempotent
Get the total number of clips across all tracks in the active sequence.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_track_infoGet Track InfoBRead-onlyIdempotent
Get detailed information about a specific track: name, clip count, muted, locked, targeted, and list of all clips.
Inputs: track_type (required), track_index (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_unused_mediaGet Unused MediaARead-onlyIdempotent
Find project items that are NOT used in any sequence. Useful for cleaning up projects. Results are paged (default 100 items) and can be filtered by a case-insensitive name substring; follow nextOffset while truncated is true.
Inputs: limit, offset, contains, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
get_used_media_reportGet Used Media ReportARead-onlyIdempotent
Get a report of all media files used in a sequence: which source files are used, how many times each appears, on which tracks, and whether any sources are offline.
Inputs: sequence_id, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_value_at_timeGet Value At TimeARead-onlyIdempotent
Get the interpolated value of an effect property at a time, in seconds from the clip's start
Inputs: node_id (required), effect_name (required), time_seconds (required), property_name (required), +3 more. Returns: ok, data, tool, error, +2 more
get_version_infoGet Version InfoBRead-onlyIdempotent
Get Premiere Pro version and build information.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_work_areaGet Work AreaBRead-onlyIdempotent
Get the current work area in and out points
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_workspacesGet WorkspacesARead-onlyIdempotent
List all available workspace layouts in Premiere Pro
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
get_xmp_metadataGet Xmp MetadataARead-onlyIdempotent
Inspect bounded file/clip XMP fields with GPS, serials, author and contact data omitted by default. Raw XMP requires include_raw and include_sensitive true; it can disclose personal data to the connected client. Distinct from Premiere-private project metadata.
Inputs: item_id (required), include_raw, include_sensitive, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
has_proxyHas ProxyC
Check if a project item has a proxy attached
Inputs: item_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
import_ae_compsImport Ae CompsA
Import After Effects compositions from an .aep file as Dynamic Link clips, failing closed when the file does not exist or when the target bin gains no items. Returns each new item's nodeId and name for placement (add_to_timeline, replace_clip). With comp_names the result is verified only when every requested composition is read back by name and source .aep. Importing all comps verifies the target-bin item-count increase only, because the expected set is unknown; its items list is informational and is omitted when the bin's items cannot be read.
Inputs: ae_project_path (required), comp_names, target_bin, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
import_edlImport EdlA
Unavailable by design: CMX 3600 EDL import opens Premiere UI that can block the CEP bridge. No import is attempted; convert the EDL to FCP7 XML and use import_fcp_xml for unattended interchange.
Inputs: file_path (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
import_fcp_xmlImport Fcp XmlA
Import a Final Cut Pro XML file. Default mode new_project opens it as a new Premiere project: app.openFCPXML(path, projPath) requires a destination project path, and verified is true only when that destination exists as a file and Premiere has that exact path open. Mode into_open_project instead imports the XML into the currently open project with project.importFiles and succeeds only when the sequence count grew; the XML also brings its own clips, which can duplicate existing items, or Premiere can link them to existing items that point at the same media. That mode reports reusedItems (pre-existing project items and their bins that the new sequences use), so a later bin cleanup does not silently empty the new timelines.
Inputs: path (required), mode, target_bin, project_path, +3 more. Returns: ok, data, tool, error, +2 more
import_folderImport FolderA
Import the media files directly inside a folder and read the destination tree back. Refuses an unreadable baseline before importing. Reports observed new media items; unreadable or unmatched imports are committed_unverified. Host errors retain partial-change diagnostics; inspect the destination before retrying.
Inputs: folder_path (required), target_bin, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
import_image_sequenceImport Image SequenceC
Import a numbered image sequence as a single video clip.
Inputs: first_file_path (required), target_bin, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
import_mediaImport MediaB
Import media files into the project and confirm a new project item for each file
Inputs: file_paths (required), target_bin, suppress_ui, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
import_mogrtImport MogrtA
Import a Motion Graphics Template (.mogrt) file and add it to the timeline. Pass text_values (for example { "Headline": "..." }) to write each text control explicitly after insertion and verify it by readback, so a template default or stale value is never left in place silently. Placement fields contain observed start/end/track values; requested values are separate, and unreadable geometry remains committed_unverified.
Inputs: mogrt_path (required), text_values, track_index, start_seconds, +4 more. Returns: ok, data, tool, error, +2 more
import_mogrt_from_libraryImport Mogrt From LibraryA
Request importing a MOGRT from a named Adobe Creative Cloud Library. Library contents cannot be enumerated through CEP; host acceptance is committed_unverified, and rendered appearance must be checked in Premiere.
Inputs: mogrt_name (required), library_name (required), track_index, start_seconds, +3 more. Returns: ok, data, tool, error, +2 more
import_sequencesImport SequencesC
Import sequences from another Premiere Pro project file
Inputs: project_path (required), sequence_ids (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
insert_from_sourceInsert From SourceA
Insert the clip from the Source Monitor at the playhead (insert edit). Experimental: a target clip spanning the playhead is QE-razored before insertion to attempt to preserve its split tail. By default the tool also razors and shifts every QE sync-locked track, then reads the placement and target tails back; a displaced tail is reported as committed_unverified. Pass scope 'target_tracks' to ripple only the named pair (this will desync other tracks).
Inputs: scope, idempotency_key, audio_track_index, video_track_index, +2 more. Returns: ok, data, tool, error, +2 more
inspect_after_effects_render_templatesInspect After Effects Render TemplatesAIdempotent
Read available render and output-module template names from the first existing After Effects render-queue item. After Effects only exposes templates through a queue item, so on an empty queue pass allow_temporary_queue_item: true to add one composition to the queue, read the names and remove it again (requires edit; the queue length is read back unchanged). It never renders.
Inputs: idempotency_key, composition_name, expected_cep_target, expected_project_path, +1 more. Returns: ok, data, tool, error, +2 more
inspect_after_effects_template_sourceInspect After Effects Template SourceARead-onlyIdempotent
Inspect a saved After Effects source composition for MOGRT-relevant dimensions, duration, text fonts, layer-source kinds, and Essential Graphics controller names when the host exposes the AE 16.1+ readback API. It never creates a composition or returns asset paths.
Inputs: composition_name, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
inspect_cmx3600_edlInspect Cmx3600 EdlARead-onlyIdempotent
Parse a local CMX 3600 EDL into bounded event, reel, track, transition, and timecode facts without importing it into Premiere.
Inputs: path (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
inspect_dom_objectInspect Dom ObjectARead-onlyIdempotent
Inspect a Premiere Pro DOM object and list its properties, methods, and values. Useful for exploring the API and debugging. object_path must be a property path starting with app or qe (identifiers and numeric indexes only). Function calls, operators, and statements are rejected; use evaluate_expression with unsafe-script for those.
Examples:
"app.project" → project properties
"app.project.activeSequence" → sequence properties
"app.project.activeSequence.videoTracks[0].clips[0]" → first clip on V1
"app.project.activeSequence.videoTracks[0].clips[0].components[0]" → first component of a clip
Inputs: object_path (required), max_depth, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
inspect_edit_readinessInspect Edit ReadinessARead-onlyIdempotent
Audit the active sequence in one read-only bridge request for empty timelines, primary-track gaps, disabled clips, muted tracks, and excessive Motion scale. Structural diagnostics only; it cannot judge story, framing, sound, or final delivery.
Inputs: expected_cep_target, primary_video_track, expected_project_path, gap_tolerance_seconds, +1 more. Returns: ok, data, tool, error, +2 more
inspect_fcpxml_interchangeInspect Fcpxml InterchangeARead-onlyIdempotent
Inspect a local FCPXML or FCP7 XML (xmeml, what Premiere's export_as_fcp_xml writes) document: format, version, sequence/clip counts, bounded media declarations, and text-only parser warnings, before deliberate Premiere import.
Inputs: path (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
inspect_film_editorial_workflowInspect Film Editorial WorkflowARead-onlyIdempotent
Validate a revision-bound film editorial manifest against captured source and timeline identities. Build complete declared coverage review groups, independent picture/audio preferences, screening-note exceptions, story dependencies, VFX state, change impact and a department turnover manifest. Local inspection only: no host edits, exports, automatic creative decisions or verified host claims.
Inputs: vfx (required), notes (required), scenes (required), profile (required), +15 more. Returns: ok, data, tool, error, +2 more
inspect_interchange_artifactInspect Interchange ArtifactARead-onlyIdempotent
Read caller-selected artifact bytes, hash them and identify actual OTIO/FCP7 xmeml/FCPXML/EDL structure. AAF/OMF are bounded opaque-byte evidence only. File existence, parsed structure, round-trip and licensed-host/destination evidence remain distinct.
Inputs: path (required), format, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
inspect_interchange_loss_reportInspect Interchange Loss ReportARead-onlyIdempotent
Build per-feature inspected/approximated/dropped/unknown loss evidence for OTIO, FCP7 XML, FCPXML, CMX EDL, AAF or OMF. Optional artifact inspection identifies its actual root. Source inventory is caller evidence; this never infers destination acceptance from exporter success.
Inputs: format (required), path, idempotency_key, source_features, +2 more. Returns: ok, data, tool, error, +2 more
inspect_media_streamsInspect Media StreamsARead-onlyIdempotent
Inspect a local media file with ffprobe and return container, stream, codec, time-base, channel, and chapter metadata. Read-only and independent of Premiere.
Inputs: media_path (required), use_cache, idempotency_key, analysis_revision, +2 more. Returns: ok, data, tool, error, +2 more
inspect_mogrt_libraryInspect Mogrt LibraryARead-onlyIdempotent
List bounded top-level template names and version directories in an existing workspace-contained local MOGRT library. It never reads MOGRT contents or changes the library.
Inputs: library_directory (required), approved_workspace_path (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
inspect_operation_recoveryInspect Operation RecoveryARead-onlyIdempotent
Inspect unknown execution outcomes and a bounded current host-state revision. Inspection remains available while dependent mutations are blocked. No edit is replayed.
Inputs: backend (required), include_snapshot, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
inspect_otio_interchangeInspect Otio InterchangeARead-onlyIdempotent
Parse a bounded local OTIO Timeline.1 into exact-tick offline tracks/clips/gaps/transitions. Reports missing media, opaque nests/effects/metadata and unsupported timing. Synthetic IDs never authorize Premiere writes; this tool never imports a project.
Inputs: path (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
inspect_project_item_av_metadataInspect Project Item Av MetadataBRead-onlyIdempotent
Inspect a project item's documented effective/original color space, LUT IDs, available color-space overrides, and audio channel shape.
Inputs: item_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
inspect_project_recoveryInspect Project RecoveryARead-onlyIdempotent
Read-only recovery inspection: diagnose the active project path and list adjacent Premiere Auto-Save project candidates without opening, copying, or restoring anything.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
inspect_rendered_video_scopesInspect Rendered Video ScopesARead-onlyIdempotent
Sample a caller-owned exported video using existing decoded RGB scopes and declare range/transfer/primaries evidence. Refuses HDR legal-range claims from an 8-bit RGB proxy; does not prove Premiere render lineage.
Inputs: output_path (required), color_range, time_seconds, color_transfer, +4 more. Returns: ok, data, tool, error, +2 more
inspect_sequence_av_settingsInspect Sequence Av SettingsARead-onlyIdempotent
Inspect documented audio, tone-mapping, linear-compositing, bit-depth, render-quality, and display settings for the active sequence.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
inspect_sequence_review_reportInspect Sequence Review ReportARead-onlyIdempotent
Build one read-only sequence handoff report with timeline structure, primary-track gaps, disabled clips, muted tracks, marker timing, and offline-source evidence. Media paths are never returned; marker comments require an explicit opt-in. It does not prove rendered pixels, audio quality, caption correctness, rights, or editorial approval.
Inputs: max_markers, sequence_id, expected_cep_target, primary_video_track, +2 more. Returns: ok, data, tool, error, +2 more
inspect_stabilizer_statusInspect Stabilizer StatusARead-onlyIdempotent
Read Warp Stabilizer presence, exposed status properties, and conservative analysis state for one clip or every video clip in the active sequence. Read-only: unknown or localized host values remain unknown rather than being reported as solved.
Inputs: node_id, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
inspect_timeline_snapshotInspect Timeline SnapshotA
Inspect one exact CEP sequence into version1 canonical snapshot preserving raw tick strings, source/link identities, bounded clips and explicit unknown fields. Track targeted/muted come from the documented track DOM; sync_locked comes from the experimental QE DOM only when this is the active sequence and stays null otherwise. Host missing lock/effect/transition/marker state remains incomplete; this inspection never implies atomic host state. Re-query from zero after change or truncation. With output_path inside an approved private workspace the snapshot is written to a .json file (sha256 reported); its parent must satisfy bridge ownership/ancestor protections (0700 on POSIX), and failures can leave an empty reservation and return_content:false keeps the clips out of the reply.
Inputs: sequence_id (required), max_clips, output_path, return_content, +5 more. Returns: ok, data, tool, error, +2 more
inspect_workflow_checkpointInspect Workflow CheckpointARead-onlyIdempotent
Read one private saved workflow checkpoint after restart. Unsupported versions reject; pending and unknown operations require reconciliation. Loading never dispatches mutations or restores projects.
Inputs: checkpoint_id (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
inspect_workflow_jobInspect Workflow JobARead-onlyIdempotent
Inspect exact local or UXP job identity. Host terminal events do not verify an output artifact; an absent job is unknown, never completed.
Inputs: job_id (required), origin (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
invert_selectionInvert SelectionB
Invert the current clip selection in the active sequence (selected become deselected and vice versa).
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
is_work_area_enabledIs Work Area EnabledB
Check whether the work area bar is enabled on the active sequence
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
lift_selectionLift SelectionA
EXPERIMENTAL (undocumented QE DOM: the sequence lift command, exposed as left() on 25.2). Lift (remove without closing the gap) the content between the sequence in/out points on every targeted, unlocked track, then verify the range is empty on those tracks and nothing else on them moved. Marks that Premiere stored just off a frame are first re-written on that exact frame through QE (marksRewritten). Requires sequence in/out marks that do not span the whole sequence. Untargeted tracks are not verified; any that changed are listed in otherTracksChanged.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
link_selectionLink SelectionA
Link the currently selected video and audio clips in the active sequence, then read the links back. Needs at least two selected clips; verified only when every selected clip is linked to every other.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
list_available_audio_effectsList Available Audio EffectsBRead-onlyIdempotent
List all available audio effects in Premiere Pro. Uses QE DOM.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
list_available_audio_transitionsList Available Audio TransitionsARead-onlyIdempotent
EXPERIMENTAL (undocumented QE DOM): List audio transitions. Reports an unavailable or empty legacy catalog as an error rather than an assumed usable list.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
list_available_effectsList Available EffectsARead-onlyIdempotent
List available video effects in Premiere Pro. Uses the full QE catalog when exposed; otherwise returns a verified, explicitly partial set of common effects resolved by exact name.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
list_available_transitionsList Available TransitionsARead-onlyIdempotent
EXPERIMENTAL (undocumented QE DOM): List video transitions. Returns a built-in hint set on PPro 2026 where the registry list is empty even though by-name lookup works; the hint set is not exhaustive.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
list_clip_effectsList Clip EffectsARead-onlyIdempotent
List effects/components exposed by the clip's standard DOM collection, with properties and current values. Some hosts omit QE-applied effects from this collection; absence here does not prove an effect is absent. get_effect_properties uses the same collection. Inspect Premiere's Effect Controls UI when complete QE effect presence must be confirmed.
Inputs: node_id (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
list_extensionsList ExtensionsARead-onlyIdempotent
List the CEP extension panels installed in Premiere Pro (id, name, window type, and the isActive flag CEP reports). isActive does not show whether a panel is open: in Premiere 26.3 it stayed false for open panels. Use an id with open_extension. CEP connector only.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
list_markersList MarkersARead-onlyIdempotent
List markers on the active sequence, or on a source project item that exposes a marker collection, including marker GUID and color when readable. A timeline-clip node_id returns a clean error instead of a raw TypeError.
Inputs: node_id, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
list_project_itemsList Project ItemsBRead-onlyIdempotent
List all items in the project panel (clips, bins, sequences)
Inputs: bin_path, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
list_sequence_checkpointsList Sequence CheckpointsARead-onlyIdempotent
List '[checkpoint]' sequences created by create_sequence_checkpoint, optionally only those cloned from one sequence, with their labels, timestamps, track and clip counts. Read-only.
Inputs: sequence_id, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
list_sequencesList SequencesCRead-onlyIdempotent
List all sequences in the project
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
list_sequence_tracksList Sequence TracksBRead-onlyIdempotent
List all tracks (video and audio) in a sequence
Inputs: sequence_id, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
list_stock_titlesList Stock TitlesARead-onlyIdempotent
List the Essential Graphics title templates that ship with the installed Premiere Pro (Basic Title, Lower Thirds, Credits, Social Media, and more), with each template's text fields in order and their default text. Reads the local .mogrt files only; does not contact Premiere. Use the names with add_title.
Inputs: category, idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
lock_trackLock TrackB
Set a video track's lock state and read it back to verify the change.
Inputs: locked (required), track_index (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
manage_media_watchManage Media WatchADestructive
Start, inspect, rescan, or stop one session-scoped local media-folder monitor. It records bounded file-change signals and never imports media automatically.
Inputs: action (required), recursive, watch_path, target_bin_id, +5 more. Returns: ok, data, tool, error, +2 more
manage_project_contextManage Project ContextADestructive
Capture, enrich, import revision-bound editorial evidence, inspect, or clear a durable local Premiere project-context index. Capture stores bounded active-sequence/source metadata; local enrichment and evidence import add caller-approved transcripts, speaker labels, shots, audio observations, notes, or opaque frame references without re-analyzing media. Never include secrets or unrelated customer data.
Inputs: action (required), records, replace, evidence, +4 more. Returns: ok, data, tool, error, +2 more
manage_proxiesManage ProxiesADestructive
Create or attach proxies for a project item, or set Premiere's proxy display. 'toggle' is application-wide, not per item: it changes app.getEnableProxies()/setEnableProxies() for every sequence and monitor, and item_id is only checked to exist. Pass enabled: true or false to set a known state; omitting enabled flips the current state, so two calls undo each other. The result reports previousEnabled and proxiesEnabled read back from Premiere. Note: 'create' only requests a proxy encode from Adobe Media Encoder and returns an unverified handoff. Independently verify the AME queue or output file before calling this tool again with action 'attach' and proxy_path set to the output_path you passed here. Optional start_batch requests processing of every ready AME queue job, including unrelated jobs. There is no single-call create-and-attach in Premiere's ExtendScript API.
Inputs: action (required), item_id (required), enabled, proxy_path, +6 more. Returns: ok, data, tool, error, +2 more
map_keyframe_time_domainMap Keyframe Time DomainARead-onlyIdempotent
Translate source, clip-relative and sequence ticks from an inspected snapshot. Warns outside visible range; refuses nested, reverse or retimed clips until a measured mapping exists. No keyframe write or rendering claim.
Inputs: domain (required), clip_id (required), snapshot (required), time_ticks (required), +2 more. Returns: ok, data, tool, error, +2 more
map_source_ranges_to_timelineMap Source Ranges To TimelineB
Read-only mapping from source-media time ranges to placements on one sequence track. Reads the selected track once, maps only normal-speed forward clips, reports source portions not present on the track as unplaced, and returns bounded pages. This inspects timeline placement; it does not prove rendered or audible content.
Inputs: ranges (required), track_type (required), track_index (required), media_path, +6 more. Returns: ok, data, tool, error, +2 more
map_word_timeline_occurrencesMap Word Timeline OccurrencesARead-onlyIdempotent
Map revision-bound transcript words to every forward1x source placement, with occurrence IDs and exact snapshot placement ticks. Refuses missing pages, nonlinear retiming, reverse and ambiguous nests.
Inputs: snapshot (required), word_timeline (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
match_frameMatch FrameC
Get source media info for the frame at the current playhead on a specific track. Useful for match frame operations.
Inputs: track_type, track_index, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
move_clipMove ClipA
Refuses attached transitions or unreadable transition collections before structural edits; inspect transitionsAffected and use remove_transition first. EXPERIMENTAL (undocumented QE DOM for track changes): Move a clip to a new position on the timeline; optional track moves use Premiere's QE API and may not work on every version.
Inputs: node_id (required), new_start_seconds (required), idempotency_key, new_track_index, +2 more. Returns: ok, data, tool, error, +2 more
move_clip_to_trackMove Clip To TrackA
Move a clip to a different track of the same type, keeping its start, duration, and source in/out. EXPERIMENTAL: uses the undocumented QE DOM moveToTrack. Refuses without changing anything when the origin or destination track is locked or the destination range is occupied. Reads the timeline back: verified only when the clip is on the destination track with the same span and source range and is gone from the origin track; committed_unverified when the source range cannot be read; otherwise failure with Undo guidance.
Inputs: node_id (required), target_track_index (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
move_items_to_binMove Items To BinB
Move multiple project items to a target bin at once.
Inputs: item_ids (required), target_bin (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
move_item_to_binMove Item To BinC
Move a project item to a different bin and confirm where it landed
Inputs: item_id (required), target_bin (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
move_playhead_to_editMove Playhead To EditC
Move the playhead to the next or previous edit point.
Inputs: direction, idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
multiple_undoMultiple UndoA
EXPERIMENTAL (undocumented QE DOM: qe.project.undo / undoStackIndex). Undo several Premiere project actions through QE, checking each step against Premiere's undo-stack position (stackVerified; the timeline itself is not read back) and reporting how many were undone. Only actions Premiere records are undoable: QE edits such as razor, insert, lift and extract report undoSteps (and undoStackIndex) in their results; pass that undoSteps as count to reverse exactly that call. A marker receipt with undoTracked:false recorded no undo step: calling Undo for it would reverse an earlier action. Only CEP tool results carry undoSteps; UXP tools and workflows that send several commands are not counted. Always pass expected_undo_stack_index to check the stack position, but matching position alone does not prove which action is on top. Observed marker boundaries refuse the entire request before any step unless acknowledge_untracked_markers:true explicitly permits prior non-marker actions. The barrier persists through server/helper reloads while the CEP engine remains alive; it cannot account for marker writes before observation, after an engine reset, or through UXP, the manual UI, or other clients. Matching the QE index verifies stack position only.
Inputs: expected_undo_stack_index (required), count, batch_size, idempotency_key, +3 more. Returns: ok, data, tool, error, +2 more
mute_trackMute TrackC
Mute or unmute an audio track
Inputs: muted (required), track_index (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
nest_clipsNest ClipsC
Unavailable on the legacy CEP backend: Premiere's documented createSubsequence API only creates a separate sequence and cannot safely replace the selected timeline clips with a nested-sequence reference.
Inputs: name (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
normalize_loudness_fileNormalize Loudness FileA
Create a new loudness-normalized media derivative with FFmpeg, then remeasure that exact output using EBU R128. When the remeasured file misses the target or true-peak ceiling (AAC encoding can raise the true peak), it renders again with a lowered ceiling or offset target, up to max_attempts, keeps the best attempt and reports every attempt's measured I and TP. Never overwrites the input or an existing output file.
Inputs: input_path (required), output_path (required), target_lufs, max_attempts, +5 more. Returns: ok, data, tool, error, +2 more
open_extensionOpen ExtensionA
Open an installed CEP extension panel in Premiere Pro by its extension id (see list_extensions). CEP has no panel-visibility getter, so success is committed_unverified: check the panel in Premiere. Another extension cannot be closed from here. CEP connector only.
Inputs: extension_id (required), params, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
open_in_sourceOpen In SourceA
Open a project item in the Source Monitor for preview and trimming, and confirm it is the clip now showing.
Inputs: item_id (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
open_projectOpen ProjectA
Open a Premiere Pro project file and make it the active project, verifying it is open. Other open projects stay open.
Inputs: path (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
overwrite_clipOverwrite ClipA
Overwrite a project item onto validated timeline tracks and verify a new source placement at the requested time. Every video/audio stream the item actually has must land on the requested tracks; a picture-only or sound-only placement (for example 5.1 audio that does not fit a stereo track) is committed_unverified, not verified. Video-only and audio-only items overwrite only the receiving track, so Sequence.overwriteClip cannot smash V0 or A0 for the unused kind. When Premiere moves the source In to a sequence frame (an audio subclip cut between frames), the receipt reports sourceInShift and a note. slip_edit snaps to whole sequence frames, so it cannot correct a shift smaller than one frame.
Inputs: item_id (required), track_index, start_seconds, idempotency_key, +3 more. Returns: ok, data, tool, error, +2 more
overwrite_from_sourceOverwrite From SourceA
Overwrite the clip from the Source Monitor at the playhead position (overwrite edit — replaces existing clips) and verify a new placement on the requested tracks. Every video/audio stream the Source Monitor item actually has must land on those tracks; a picture-only or sound-only placement is committed_unverified, not verified. Video-only and audio-only items overwrite only the receiving track, so Sequence.overwriteClip cannot smash V0 or A0 for the unused kind.
Inputs: idempotency_key, audio_track_index, video_track_index, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
paste_clip_attributesPaste Clip AttributesA
Paste Attributes for one timeline clip: copy the source clip's effect stack (Motion, Opacity, other intrinsic components, and every applied effect) onto a target clip of the same track type, including keyframes. Components are matched by match name and occurrence; a missing non-intrinsic effect is applied through the experimental legacy QE DOM (disable with apply_missing_effects=false). Every written parameter and keyframe value is read back and reported per property as verified, committed_unverified, or failed, with an overall status. Not copied, and listed in notCopied with a reason: parameters whose values ExtendScript cannot read as numbers, booleans, strings, or numeric arrays; Opacity > Blend Mode when it differs (legacy cross-clip enum writes can corrupt it; use set_blend_mode and verify); and keyframe interpolation (no getter exists, so pasted keys use Premiere's default interpolation). MASKS ARE NOT COPIED: neither ExtendScript, QE, nor documented Premiere UXP exposes mask shapes, paths, feather, expansion, or mask keyframes, and masks are invisible to this bridge, so recreate or paste masks manually in Effect Controls. Time Remapping is excluded unless named in components.
Inputs: source_node_id (required), target_node_id (required), components, copy_keyframes, +4 more. Returns: ok, data, tool, error, +2 more
pingPingA
Health check — verify the CEP plugin is running and connected to Premiere Pro. Call this before other tools to confirm connectivity.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
plan_active_speaker_reframePlan Active Speaker ReframeARead-onlyIdempotent
Plan an active-speaker vertical reframe (Motion Scale/Position keyframes that follow whoever is talking) or a static stacked/split layout from a word timeline and static speaker regions. Returns framings, switches, keyframes, and apply routes. Local-only; never changes Premiere.
Inputs: source_frame (required), word_timeline (required), speaker_regions (required), layout, +9 more. Returns: ok, data, tool, error, +2 more
plan_audio_post_turnoverPlan Audio Post TurnoverARead-onlyIdempotent
Preview a bounded AAF/OMF audio-post turnover contract: exact exclusive range, handles, rational rate, channels, requested gain automation, media hashes and reference picture. Routes to existing native exporters. Caller manifests and exporter settings are not DAW acceptance or audible-alignment proof.
Inputs: rate (required), media (required), range (required), format (required), +8 more. Returns: ok, data, tool, error, +2 more
plan_beat_montagePlan Beat MontageARead-onlyIdempotent
Plan a beat-synced montage: carve a detect_beats grid into shots every N beats (merging short and splitting long spans), assign clips in order, and emit add_to_timeline_batch chunks, trim ranges, and cut markers. Local-only and deterministic; never changes Premiere.
Inputs: clips (required), beat_seconds (required), order, frame_rate, +10 more. Returns: ok, data, tool, error, +2 more
plan_chapter_markersPlan Chapter MarkersARead-onlyIdempotent
Plan YouTube-style chapters from a word-timed transcript using local TextTiling-lite topic-shift detection, titling each chapter from its distinctive tokens. Returns chapters, a youtube_timestamps block and add_marker-ready Chapter markers. Local-only plan; never changes Premiere.
Inputs: word_timeline (required), frame_rate, stop_words, block_words, +5 more. Returns: ok, data, tool, error, +2 more
plan_client_notes_checklistPlan Client Notes ChecklistARead-onlyIdempotent
Turn pasted client or reviewer feedback into a prioritized checklist: finds timecodes and ranges, classifies each note (audio, color, graphics, text, timing, cut, legal, delivery), infers must/should/nice priority, separates approvals and questions, and emits an add_markers_batch payload. Local-only and deterministic; never changes Premiere.
Inputs: notes (required), max_items, frame_rate, timecode_style, +7 more. Returns: ok, data, tool, error, +2 more
plan_cross_app_workflowPlan Cross App WorkflowARead-onlyIdempotent
Plan an After Effects MOGRT or rendered-file handoff to Premiere using existing tools. Returns ordered dependencies, separate approvals, required evidence, and manual render stops. Local-only planning; never executes steps, issues approval tokens, or claims host readiness.
Inputs: workflow (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
plan_emphasis_zoom_keyframesPlan Emphasis Zoom KeyframesARead-onlyIdempotent
Plan CapCut-style punch-in zoom keyframes (Motion Scale + subject-anchored Position) from a word timeline or supplied trigger times, with cooldown, easing, and hold controls. Local-only and deterministic; returns a keyframe plan for automate_effect_parameters_uxp or add_keyframe and never changes Premiere.
Inputs: frame, trigger, alternate, max_zooms, +15 more. Returns: ok, data, tool, error, +2 more
plan_filler_word_removalPlan Filler Word RemovalARead-onlyIdempotent
Plan word-level filler removal (um, uh, you know...) from a revision-bound word timeline. Hesitation-sound removal requires a transcript that preserves disfluencies, such as Premiere transcription or verbatim ASR; Whisper's default output omits them. Returns frame-snapped removal and keep ranges plus apply routes. Local-only; never changes Premiere.
Inputs: word_timeline (required), frame_rate, filler_words, max_removals, +5 more. Returns: ok, data, tool, error, +2 more
plan_media_synchronizationPlan Media SynchronizationARead-onlyIdempotent
Plan synchronization locally from bounded normalized mono PCM correlation or caller-matched marker/timecode tick anchors. Returns confidence, ambiguous alternatives or silent/noise refusal. Placement offset application is separately reviewed.
Inputs: method (required), sample_rate, candidate_ticks, max_lag_samples, +5 more. Returns: ok, data, tool, error, +2 more
plan_multicam_angle_switchesPlan Multicam Angle SwitchesARead-onlyIdempotent
Plan active-speaker camera switching for stacked, synced camera tracks: from speaker segments and a camera-to-speaker map it produces an angle cut list with minimum holds, crosstalk cover shots, optional lead-in cuts and periodic cutaways, plus razor times, per-camera enable/disable ranges, and markers. Local-only and deterministic; never changes Premiere.
Inputs: cameras (required), speaker_segments (required), frame_rate, marker_color, +10 more. Returns: ok, data, tool, error, +2 more
plan_music_remixPlan Music RemixARead-onlyIdempotent
Plan deterministic music shortening from an approved measured beat grid, protected intro/outro and crossfade handles. Returns exact segments and nearest-beat error for audible review. No DSP render or native Premiere Remix control.
Inputs: plan (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
plan_pause_tighteningPlan Pause TighteningARead-onlyIdempotent
Plan shortening (not deleting) of inter-word pauses longer than max_pause_seconds down to a target, respecting sentence boundaries. Returns centered removal ranges, keep ranges, savings and apply routes. Local-only; never changes Premiere.
Inputs: word_timeline (required), max_edits, frame_rate, max_pause_seconds, +4 more. Returns: ok, data, tool, error, +2 more
plan_platform_delivery_matrixPlan Platform Delivery MatrixARead-onlyIdempotent
Plan multi-ratio delivery of one source sequence to TikTok, Reels, Shorts, YouTube, LinkedIn, X, and Facebook from a local spec table: sequence settings, reframe scale math, duration and file-size fit, caption safe zones, and ordered apply routes. Local-only; never changes Premiere.
Inputs: source (required), targets (required), strategy, export_preset_hint, +2 more. Returns: ok, data, tool, error, +2 more
plan_reaction_captionsPlan Reaction CaptionsARead-onlyIdempotent
Plan stacked, speaker-colored reaction captions from a word timeline and an explicit speaker palette. Flash-length words merge, overlaps stack, and unknown speakers stay uncolored. Local-only; never changes Premiere.
Inputs: word_timeline (required), speaker_palette (required), frame_rate, shot_changes, +8 more. Returns: ok, data, tool, error, +2 more
plan_scene_segmentsPlan Scene SegmentsARead-onlyIdempotent
Turn reviewed source scene candidates into exact nonoverlapping segments with bounded source handles, rejected-candidate report and existing marker/subclip/bin routes. Detection never edits source; linked audio is preserved in the plan.
Inputs: plan (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
plan_short_export_folderPlan Short Export FolderARead-onlyIdempotent
Plan a series-named export folder inside an approved Shorts root and remind the caller to create it when missing. Local-only; never writes files or changes Premiere.
Inputs: title (required), export_root (required), series_name (required), brand, +3 more. Returns: ok, data, tool, error, +2 more
plan_short_subscribe_ctaPlan Short Subscribe CtaARead-onlyIdempotent
Plan a brief subscribe overlay about two-thirds through a Short, after an optional hook, in a platform-safe lower-third. Local-only; never changes Premiere.
Inputs: duration_seconds (required), copy, brand, at_ratio, +6 more. Returns: ok, data, tool, error, +2 more
plan_shot_matchPlan Shot MatchB
Compare two bounded local-media frame samples and return measured waveform/parade/saturation deltas plus coarse correction directions. Read-only planning only; it does not grade Premiere or claim that primaries alone can match the shots.
Inputs: target_media_path (required), reference_media_path (required), idempotency_key, expected_cep_target, +3 more. Returns: ok, data, tool, error, +2 more
plan_silence_review_markersPlan Silence Review MarkersARead-onlyIdempotent
Create a bounded, non-mutating review plan that maps FFmpeg-detected source-media silences onto one known 1x timeline placement. It clips candidates to the supplied source in/out span, redacts the source path, and never adds markers, cuts clips, or changes Premiere.
Inputs: media_path (required), timeline_start_seconds (required), max_candidates, idempotency_key, +6 more. Returns: ok, data, tool, error, +2 more
plan_speaker_checkerboardPlan Speaker CheckerboardARead-onlyIdempotent
Plan a speaker checkerboard (each speaker's turns on their own video/audio track) from a caller-supplied word timeline. Returns frame-snapped segments, split points, track assignments, and the add_track/razor_all_tracks/move_clip_to_track routes. Local-only; never changes Premiere.
Inputs: word_timeline (required), frame_rate, handle_frames, speaker_order, +7 more. Returns: ok, data, tool, error, +2 more
plan_word_mute_rangesPlan Word Mute RangesARead-onlyIdempotent
Plan mute or bleep ranges for listed words/phrases in a word timeline. Returns redacted, frame-snapped mute ranges, ready-to-apply audio keyframes and (for bleep) tone placements. Local-only; never changes Premiere.
Inputs: words (required), word_timeline (required), mode, frame_rate, +4 more. Returns: ok, data, tool, error, +2 more
play_source_monitorPlay Source MonitorA
Request playback of the clip in the Source Monitor. Fails when no clip is loaded. The legacy API does not provide a same-call position readback, so movement is not reported as verified.
Inputs: speed, idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
play_timelinePlay TimelineA
Request playback of the active sequence timeline through QE. The legacy API does not provide a same-call playhead readback, so movement is not reported as verified.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
predict_timeline_editPredict Timeline EditARead-onlyIdempotent
Predict exact affected clips for a conservative supported insert/overwrite/trim/split/move/remove/ripple/enable subset using complete canonical state. Refuses unknown locks, links, source handles and retiming. Local prediction does not execute Premiere or promise native edit semantics.
Inputs: snapshot (required), operations (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
prepare_transcript_workflowPrepare Transcript WorkflowADestructive
Inspect native UXP transcript readiness before optionally starting Speech-to-Text once per operation. Returns accepted/pending/ready/failed/unknown with revision, never transcript completion from start acceptance. No CEP fallback; Adobe privacy/service preferences apply to explicitly confirmed start.
Inputs: operation_id (required), project_item_id (required), language, wait_seconds, +6 more. Returns: ok, data, tool, error, +2 more
preview_after_effects_renderPreview After Effects RenderARead-onlyIdempotent
Preview a bounded queue-only After Effects render request for one named composition and existing workspace output directory. It does not contact Adobe, enqueue, or render.
Inputs: output_path (required), composition_name (required), output_module_template (required), approved_workspace_path (required… Returns: ok, data, tool, error, +2 more
preview_after_effects_render_handoffPreview After Effects Render HandoffARead-onlyIdempotent
Preview import of one completed After Effects single-file render into an existing Premiere bin. Reads both connected hosts and binds approval to file metadata and project/bin identity. Does not render, import, or edit a timeline.
Inputs: output_path (required), target_bin_id (required), ae_project_path (required), queue_item_index (required), +5 more. Returns: ok, data, tool, error, +2 more
preview_brand_spotPreview Brand SpotARead-onlyIdempotent
Preview a brand-spot assembly from existing project items with an optional workspace-contained MOGRT overlay. Preview is local-only; it does not read or import the MOGRT file.
Inputs: sequence_id (required), asset_item_ids (required), mogrt_path, motion_style, +10 more. Returns: ok, data, tool, error, +2 more
preview_editorial_planPreview Editorial PlanARead-onlyIdempotent
Revalidate an exact server-issued editorial plan against the saved project-context revisions and return an opaque confirmation token. This tool is read-only and cannot apply the plan.
Inputs: plan (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
preview_edit_planPreview Edit PlanA
Inspect sequence, project item, clip and requested track targets before previewing a compound timeline edit without changing Premiere. Returns a single-use confirmation token bound to stable project, sequence and target identities; it expires after 30 minutes and is required by apply_edit_plan.
Inputs: plan (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
preview_extended_edit_planPreview Extended Edit PlanARead-onlyIdempotent
Refuses attached transitions or unreadable transition collections before structural edits; inspect transitionsAffected and use remove_transition first. Preview up to100 distinct bound CEP targets for supported trim, experimental QE split, same-track move, enable, scalar effect and keyframe steps. All targets and descriptor identities validate before token issuance; unsupported links/retiming/unknown source handles refuse. Requires exact saved project path and active sequence. No mutation or atomicity claim.
Inputs: plan (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
preview_facility_metadata_intakePreview Facility Metadata IntakeARead-onlyIdempotent
Read a bounded ALE table and preview explicit column-to-named-field mappings against reviewed source IDs/filenames. Reports duplicate table keys, ambiguous filenames, missing sources and unsupported fields. Never writes Premiere metadata or requires an XMP packet dump.
Inputs: path (required), sources (required), match_column (required), column_mapping (required), +3 more. Returns: ok, data, tool, error, +2 more
preview_mogrt_batchPreview Mogrt BatchARead-onlyIdempotent
Preview up to 20 bounded MOGRT recipe exports from a workspace-contained JSON or CSV data file. It does not contact Adobe or create any compositions or files.
Inputs: data_file_path (required), output_directory (required), approved_workspace_path (required), brand_kit, +3 more. Returns: ok, data, tool, error, +2 more
preview_mogrt_library_publishPreview Mogrt Library PublishARead-onlyIdempotent
Preview a no-overwrite publish of a validated MOGRT into a workspace-contained, versioned local library. The library root must already exist; no file or directory is created during preview.
Inputs: mogrt_path (required), template_name (required), library_directory (required), approved_workspace_path (required), +3 mor… Returns: ok, data, tool, error, +2 more
preview_mogrt_premiere_handoffPreview Mogrt Premiere HandoffARead-onlyIdempotent
Preview a contained MOGRT import into one explicitly named disposable Premiere verification sequence and empty video track. It does not contact Premiere or alter a sequence.
Inputs: mogrt_path (required), sequence_id (required), approved_workspace_path (required), disposable_sequence_name (required), +… Returns: ok, data, tool, error, +2 more
preview_mogrt_recipePreview Mogrt RecipeARead-onlyIdempotent
Preview a bounded After Effects MOGRT recipe from the supported title, callout, quote, social, and media-placeholder template library. It validates one existing workspace output directory but does not contact Adobe or write any files.
Inputs: headline (required), template_name (required), output_directory (required), approved_workspace_path (required), +14 more. Returns: ok, data, tool, error, +2 more
preview_motion_graphics_demoPreview Motion Graphics DemoARead-onlyIdempotent
Preview a contained motion-graphics demo assembly from existing project items. It never creates demo assets, imports files, creates a sequence, or changes Premiere; apply requires an exact confirmation token.
Inputs: sequence_id (required), asset_item_ids (required), transition_name, audio_track_index, +5 more. Returns: ok, data, tool, error, +2 more
preview_otio_snapshot_exportPreview Otio Snapshot ExportARead-onlyIdempotent
Serialize the declared bounded linear offline snapshot subset to OTIO, then parse it back and compare exact supported structure. Refuses unsupported nests/effect parameters/non-frame timing. Returns text for review; does not write files or establish Premiere/destination compatibility.
Inputs: snapshot (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
preview_product_spotPreview Product SpotARead-onlyIdempotent
Preview a product-spot assembly from existing project items. The eventual apply is limited to explicit empty tracks, revalidates item IDs, and reports host readback without claiming visual delivery verification.
Inputs: sequence_id (required), asset_item_ids (required), motion_style, transition_name, +6 more. Returns: ok, data, tool, error, +2 more
preview_project_intakePreview Project IntakeARead-onlyIdempotent
Inspect a bounded Premiere project against an explicit facility intake template and return a path-redacted report plus a non-mutating organization proposal. It never changes Premiere or persists the template.
Inputs: template (required), max_items, include_paths, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
preview_scene_review_workflowPreview Scene Review WorkflowARead-onlyIdempotent
Preview reviewed scene candidates against one exact CEP source and measured physical media duration. Binds project document/source path, explicit marker/subclip mode and destination bin name. No mutation; flashes/pans/fades remain in review evidence rather than automatic cuts.
Inputs: mode (required), bin_name (required), project_path (required), segmentation (required), +4 more. Returns: ok, data, tool, error, +2 more
preview_send_clip_to_after_effectsPreview Send Clip To After EffectsARead-onlyIdempotent
Preview sending one video timeline clip to After Effects, like Premiere's Replace with After Effects Composition. Reads the clip, its source media and the sequence, and the open saved AE project. Refuses speed-changed, reversed, offline or non-file clips. Lists effects and Motion/Opacity changes on the clip that the swap would not carry over. Changes nothing; returns a ten-minute token for apply_send_clip_to_after_effects.
Inputs: node_id (required), ae_project_path (required), approved_workspace_path (required), comp_name, +4 more. Returns: ok, data, tool, error, +2 more
preview_stacked_camera_editPreview Stacked Camera EditARead-onlyIdempotent
Preview exact enable states for pre-razored ordinary stacked camera clips and preserve master audio. Refuses unreviewed cuts, retiming/nests, missing lock/link state. Apply creates a duplicate sequence first; no native multicam switch API is claimed.
Inputs: cuts (required), snapshot (required), camera_track_ids (required), master_audio_track_ids (required), +2 more. Returns: ok, data, tool, error, +2 more
preview_watched_media_importPreview Watched Media ImportARead-onlyIdempotent
Compare the active watch baseline with a fresh contained scan and return a path-redacted import proposal. It never imports or changes Premiere.
Inputs: watch_id (required), include_paths, idempotency_key, expected_cep_target, +2 more. Returns: ok, data, tool, error, +2 more
preview_workflow_recipePreview Workflow RecipeARead-onlyIdempotent
Validate and expand one declarative workflow recipe into guarded MCP routes. It does not invoke any route or change Premiere.
Inputs: recipe_id (required), recipe_file, idempotency_key, provided_inputs, +3 more. Returns: ok, data, tool, error, +2 more
publish_mogrt_to_libraryPublish Mogrt To LibraryA
Publish the exact previewed MOGRT as an immutable local-library version. Requires explicit confirmation and will fail instead of replacing an existing version.
Inputs: preview_token (required), confirm_publish (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
rank_short_form_candidatesRank Short Form CandidatesARead-onlyIdempotent
Rank long-video transcript windows as short-form clip candidates using explainable local heuristics (hook, completeness, density, supplied evidence peaks, keywords, duration fit, speaker consistency) with overlap suppression. Local-only plan; not a virality prediction and never changes Premiere.
Inputs: word_timeline (required), keywords, frame_rate, hook_words, +9 more. Returns: ok, data, tool, error, +2 more
razor_all_tracksRazor All TracksA
Razor (split) all clips at the playhead position across all tracks, or at a specific time. A read-only preflight counts eligible track cuts; the host wait scales by that count (400 ms per cut plus 30 seconds headroom, capped at 15 minutes).
Inputs: track_type, time_seconds, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
read_sequence_captionsRead Sequence CaptionsARead-onlyIdempotent
Diagnose whether the active Premiere scripting host can enumerate caption tracks. It never treats an empty result as proof that the sequence has no captions, because most CEP builds expose caption creation but not caption reads.
Inputs: sequence_id, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
read_video_scopesRead Video ScopesA
Read waveform percentiles, RGB parade percentiles, saturation, and near-black/near-white RGB occupancy from one bounded decoded local-media frame. Read-only; this is a sampled analytical proxy, not Premiere's rendered scopes.
Inputs: media_path (required), use_cache, time_seconds, idempotency_key, +3 more. Returns: ok, data, tool, error, +2 more
redoRedoA
EXPERIMENTAL (undocumented QE DOM: qe.project.redo / undoStackIndex). Redo the most recently undone Premiere project action(s) through QE, checked step by step against Premiere's undo-stack position (stackVerified; the timeline itself is not read back). To restore a tool call undone with undo, pass the same count. Observed marker boundaries refuse before any step; acknowledge_untracked_markers:true permits prior non-marker actions, without proving marker reversal.
Inputs: expected_undo_stack_index (required), count, idempotency_key, expected_cep_target, +2 more. Returns: ok, data, tool, error, +2 more
refresh_mediaRefresh MediaA
Refresh a project item to pick up changes to the source file. The interpreted frame rate is read before and after; if the refresh leaves an implausible rate (seen on stills, e.g. 29.97 becoming 2.75e-8), the previous rate is restored and read back. Reports frameRateBefore, frameRateAfter and repaired.
Inputs: item_id (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
relink_mediaRelink MediaA
Legacy CEP relink can block Premiere indefinitely, even for an existing file on Premiere 26.5.2. Prefer relink_offline_media_uxp, which checks capability and reads the result back. This CEP route refuses by default; allow_unsafe_cep_relink must be explicitly true to attempt it, and its result is never reported as verified.
Inputs: item_id (required), new_path (required), idempotency_key, expected_cep_target, +2 more. Returns: ok, data, tool, error, +2 more
remove_all_effectsRemove All EffectsADestructive
Remove every effect from a clip, keeping its built-in components (Opacity, Motion, Volume, Channel Volume, Panner), and verify the result. EXPERIMENTAL: when Premiere has no Component.remove() (25.2), it removes through the undocumented QE DOM's targeted qeClip.getComponentAt(i).remove(). Every matching component's removal path is checked before any is removed; it returns a capability error, with nothing changed, when neither path is available.
Inputs: node_id (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
remove_effectRemove EffectADestructive
Remove one effect from a clip by its index or name (the last instance when names repeat) and verify the clip's components afterwards. Built-in components (Opacity, Motion, Volume, Channel Volume, Panner) cannot be removed. EXPERIMENTAL: when Premiere has no Component.remove() (25.2), it removes through the undocumented QE DOM's targeted qeClip.getComponentAt(i).remove(). Every matching component's removal path is checked before any is removed; it returns a capability error, with nothing changed, when neither path is available.
Inputs: node_id (required), effect_name, effect_index, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
remove_effect_by_nameRemove Effect By NameADestructive
Remove all instances of a specific effect from a clip by display name and verify the clip's components afterwards. EXPERIMENTAL: when Premiere has no Component.remove() (25.2), it removes through the undocumented QE DOM's targeted qeClip.getComponentAt(i).remove(). Every matching component's removal path is checked before any is removed; it returns a capability error, with nothing changed, when neither path is available.
Inputs: node_id (required), effect_name (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
remove_from_timelineRemove From TimelineADestructive
Remove a clip from the timeline. By default its linked audio/video partners go with it, as with Premiere's Clear on a linked clip. With ripple: true the gap is closed through the same explicit, verified ripple delete as ripple_delete (Premiere's own ripple flag does nothing on current builds), shifting sync-locked tracks so audio stays in sync.
Inputs: node_id (required), ripple, include_linked, idempotency_key, +4 more. Returns: ok, data, tool, error, +2 more
remove_keyframeRemove KeyframeADestructive
Remove the keyframe at a time from an effect property and read the remaining keys back. Refuses, changing nothing, when no key is within 0.01s of that time.
Inputs: node_id (required), effect_name (required), time_seconds (required), property_name (required), +4 more. Returns: ok, data, tool, error, +2 more
remove_keyframe_rangeRemove Keyframe RangeADestructive
Remove every keyframe in a time range (inclusive) from an effect property and read the remaining keys back. Refuses, changing nothing, when the range holds no key.
Inputs: node_id (required), effect_name (required), end_seconds (required), property_name (required), +5 more. Returns: ok, data, tool, error, +2 more
remove_selected_clipsRemove Selected ClipsADestructive
Remove all currently selected clips and verify their absence. Ripple requests are refused because the CEP removal call cannot reliably close gaps; use a guarded ripple-range tool instead.
Inputs: ripple, idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
remove_transitionRemove TransitionADestructive
Remove one CEP track transition by exact index or a cut contained in its stored span. Uses TrackTransition.remove(false, false), verifies the complete remaining span list, and refuses ambiguous cuts. No QE fallback. Stored geometry only; rendered appearance remains a separate check.
Inputs: track_index (required), track_type, idempotency_key, transition_index, +3 more. Returns: ok, data, tool, error, +2 more
rename_binRename BinC
Rename a bin (folder) in the project panel
Inputs: bin_id (required), new_name (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
rename_clipRename ClipB
Rename a clip on the timeline and verify the new name.
Inputs: node_id (required), new_name (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
rename_project_itemRename Project ItemB
Rename a project item in the project panel.
Inputs: item_id (required), new_name (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
rename_trackRename TrackC
Rename a video or audio track.
Inputs: name (required), track_type (required), track_index (required), idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
replace_clipReplace ClipA
Replace one timeline clip with a different project item on the same track, keeping the exact timeline start and end. The replacement plays from its own In mark for the original clip's duration; neighbouring clips do not ripple, and a linked partner clip on another track is left in place. The replacement must carry only the track's media type (for example a still or video-only item on a video track): Premiere's overwrite would also place an item's other media on another track. Checks the replacement accepts the source range before removing anything. Refuses without changing anything when the track is locked. Reads the track back: verified when the new clip covers the same span, committed_unverified when the span holds but the source In point cannot be confirmed, otherwise failure with Undo guidance.
Inputs: node_id (required), new_item_id (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
replace_clip_mediaReplace Clip MediaC
Unavailable by design: the legacy ExtendScript overwrite route cannot prove that replacing media preserves the original clip's trim, position, linked audio, or adjacent clips, so this tool performs no mutation.
Inputs: new_item_id (required), clip_node_id (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
retime_caption_fileRetime Caption FileA
Retime a local SRT/VTT file after ripple edits; Premiere captions do not follow ripple_remove_timeline_ranges or insert_from_source. Operations: shift, ripple_remove_ranges, ripple_insert, edit_cue. Keeps VTT header/NOTE/STYLE, cue settings, karaoke stamps; renumbers SRT. Local-only, never changes Premiere: re-import via create_caption_track, then reapply styling (get_caption_style_guidance).
Inputs: operation (required), fps, text, ranges, +20 more. Returns: ok, data, tool, error, +2 more
reverse_clipReverse ClipA
Unavailable: Premiere does not expose a supported scripting API for reversing a timeline clip's playback direction.
Inputs: node_id (required), reverse, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
review_broll_placementsReview Broll PlacementsARead-onlyIdempotent
Review caller-proposed owned-footage B-roll picks with matched quote, reason, alternatives, source/sequence revisions and explicit decisions. Reject overlapping approved placements. Does not infer visual content, search stock, inspect track occupancy or insert clips.
Inputs: placements (required), rejected_ids, selected_ids, expected_cep_target, +2 more. Returns: ok, data, tool, error, +2 more
review_dialogue_candidatesReview Dialogue CandidatesARead-onlyIdempotent
Review revision-bound dialogue candidates with surrounding words, silence padding, explicit keep/reject decisions and unioned source-time removal duration. Recomputed review revisions reject stale selections. Local-only; no timeline mapping, transcription or mutation.
Inputs: segments (required), filler_words, rejected_ids, selected_ids, +6 more. Returns: ok, data, tool, error, +2 more
review_quote_paper_editReview Quote Paper EditARead-onlyIdempotent
Review a transcript quote library, explicitly order approved quotes, and return running timings and a formula-neutralized CSV paper edit inline. Local-only; no files, provider calls or multi-source timeline assembly.
Inputs: segments (required), quote_order, expected_cep_target, expected_project_path, +1 more. Returns: ok, data, tool, error, +2 more
review_sync_evidenceReview Sync EvidenceARead-onlyIdempotent
Review caller-supplied camera/recorder offset estimates for independent-method agreement, confidence and conflicting alternatives. All matches require selection; conflicting matches cannot be approved. Does not analyze audio, calibrate confidence or synchronize Premiere.
Inputs: matches (required), rejected_ids, selected_ids, minimum_confidence, +4 more. Returns: ok, data, tool, error, +2 more
review_text_changesReview Text ChangesARead-onlyIdempotent
Preview literal replacements or supplied copy changes for inspected MOGRT text and supplied caption artifacts. Preserve original text and evidence revisions with explicit approve/reject decisions. Does not translate, access native graphics/caption text or apply changes.
Inputs: entries (required), find_text, rejected_ids, replace_text, +4 more. Returns: ok, data, tool, error, +2 more
ripple_deleteRipple DeleteADestructive
Refuses attached transitions or unreadable transition collections before structural edits; inspect transitionsAffected and use remove_transition first. Remove a clip and close the gap it leaves, shifting later clips earlier on the clip's own track and on every sync-locked track so audio stays in sync. With the default scope the clip's linked audio/video partners are removed with it and their tracks close up too, even when not sync-locked; with scope 'own_track' the partners stay in place (reported as linkedPartnersKept). Premiere's QE rippleDelete() and the DOM's rippleEdit flag are both non-functional on 26.x, so this is done explicitly and verified. Refuses without changing anything if a clip on a participating track straddles the ripple point or sits inside the range being closed.
Inputs: node_id (required), scope, dry_run, range_content, +5 more. Returns: ok, data, tool, error, +2 more
ripple_remove_timeline_rangesRipple Remove Timeline RangesA
Refuses attached transitions or unreadable transition collections before structural edits; inspect transitionsAffected and use remove_transition first. Preview or apply a single-pass ripple removal for up to 50 sorted, non-overlapping timeline ranges on all unlocked, sync-locked tracks. Requires a preview confirmation token to apply. Integer frame rates only. The preview returns per-track counts and at most 50 planned-clip samples; clips fully inside ranges are removed. Kept pieces cut from one linked audio/video clip are relinked and read back after the move. Large edits need allow_large_ripple: true.
Inputs: scope (required), ranges (required), range_content (required), dry_run, +7 more. Returns: ok, data, tool, error, +2 more
roll_editRoll EditA
Perform a verified roll edit at the outgoing cut of a clip using the public timeline DOM, moving both visible edges and their source in/out points and verifying all four. Linked audio/video partners get the same edit by default (include_linked); every clip is checked before any is changed. Requires readable finite media and ffprobe duration evidence for every edited source; refuses unknown duration, stills, and nonunit/reversed speed before mutation. Existing host Out padding below one sequence frame may be preserved or reduced, but never used to create additional padding.
Inputs: node_id (required), offset_seconds (required), include_linked, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
save_projectSave ProjectA
Save the current Premiere Pro project to its existing path. Fails when the project has never been saved (use save_project_as) or when Premiere writes no non-empty file. Fresh disk metadata verifies a save; unchanged or unreadable metadata reports committed_unverified.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
save_project_asSave Project AsA
Save the current project to a new .prproj path. Existing outputs require overwrite true. Premiere then has the NEW copy open and closes the original, so later edits go to the copy; the result reports both paths. Fails when Premiere writes no file or leaves a pre-existing path unchanged. Use open_project to return to the original.
Inputs: path (required), overwrite, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
save_workflow_checkpointSave Workflow CheckpointA
Persist version1 project/sequence checkpoint references and bounded operation receipt digests in the private bridge directory. Completed/pending/unknown/failed states survive server restart. No arguments or transcripts stored; no automatic replay or project restoration.
Inputs: checkpoint (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
scene_edit_detectionScene Edit DetectionA
Perform Premiere's scene edit detection on the selected clips in the active sequence (it analyses the footage and can take minutes on long clips). CreateMarkers (default) puts Segmentation markers on the selected clips' source project items (shared by every sequence that uses them), removes duplicates this run created (markers that were already there are never deleted), and reports each detected cut in source and timeline seconds; it is verified only when at least one new marker was added. ApplyCuts razors the selected clips and verifies the clip count grew. EXPERIMENTAL QE: CreateMarkers records an observed marker boundary for guarded Undo/Redo; crossing it is refused by default, and unreadable history records unknown protection. This boundary does not verify native marker reversal.
Inputs: action, sensitivity, idempotency_key, expected_cep_target, +2 more. Returns: ok, data, tool, error, +2 more
search_project_contextSearch Project ContextARead-onlyIdempotent
Search a durable Premiere project-context index for relevant sources, timeline placements, transcript passages, shots, audio observations, and notes. Returns bounded evidence with stable IDs and revisions; it never changes Premiere.
Inputs: query (required), project_id (required), kinds, max_results, +4 more. Returns: ok, data, tool, error, +2 more
search_project_itemsSearch Project ItemsARead-onlyIdempotent
Search for project items by name, media file extension, offline status, or color label. Returns matching items with full details.
Inputs: query, extension, item_type, color_label, +4 more. Returns: ok, data, tool, error, +2 more
search_workflow_recipesSearch Workflow RecipesARead-onlyIdempotent
Search audited built-in and explicitly supplied workspace-local workflow recipes. Recipes are declarative previews and cannot execute arbitrary tools or scripts.
Inputs: query, recipe_file, idempotency_key, expected_cep_target, +2 more. Returns: ok, data, tool, error, +2 more
select_all_clipsSelect All ClipsB
Select all clips in the active sequence, or all clips on a specific track.
Inputs: track_type, track_index, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
select_clips_by_colorSelect Clips By ColorA
Select clips by their source project item color label. CEP exposes no timeline track-item label getter, so timeline-specific labels cannot be matched.
Inputs: color_index (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
select_clips_by_nameSelect Clips By NameA
Select all clips in the active sequence that match a name (substring match). Optionally filter by track type and index.
Inputs: name (required), track_type, track_index, idempotency_key, +3 more. Returns: ok, data, tool, error, +2 more
select_clips_by_patternSelect Clips By PatternA
Select every Nth clip (with an offset) among clips that match optional name, duration, time-range, track, and enabled filters, then read back the selection count. Covers 'select every other clip on V1' and similar repetitive selections without changing the timeline.
Inputs: offset, every_nth, name_regex, track_type, +12 more. Returns: ok, data, tool, error, +2 more
select_clips_in_rangeSelect Clips In RangeB
Select all clips that overlap a time range in the active sequence.
Inputs: end_seconds (required), start_seconds (required), track_type, track_index, +3 more. Returns: ok, data, tool, error, +2 more
select_disabled_clipsSelect Disabled ClipsA
Select all disabled clips in the active sequence.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
select_itemSelect ItemB
Select a project item and verify its node ID in the current Project-panel selection. Missing or unreadable selection readback remains committed_unverified.
Inputs: item_id (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
set_active_sequenceSet Active SequenceC
Set the active sequence by name or ID
Inputs: sequence_id (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
set_all_tracks_targetedSet All Tracks TargetedA
Set all tracks targeted or untargeted. Useful before insert/overwrite edits. Reads back every affected track and reports verified only when all match the requested state.
Inputs: targeted (required), track_type, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_anti_alias_qualitySet Anti Alias QualityC
Set the anti-alias quality on a clip's Motion effect (useful for scaled/rotated clips).
Inputs: enabled (required), node_id (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_blend_modeSet Blend ModeA
Set a video clip's blend mode through its Opacity effect and read the stored mode back. Premiere stores the mode as an index into its modes in alphabetical order, with Subtract and Divide last (mapped on Premiere 25.2.3 by rendering every index over a known background).
Inputs: node_id (required), blend_mode (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_clip_anchor_pointSet Clip Anchor PointB
Set and read back Motion Anchor Point in source-frame pixels by default, or explicit normalized 0–1 source-frame fractions. Omitted units with a 0–1 pair keeps pixels and adds a warning.
Inputs: x (required), y (required), node_id (required), units, +3 more. Returns: ok, data, tool, error, +2 more
set_clip_durationSet Clip DurationA
Refuses attached transitions or unreadable transition collections before structural edits; inspect transitionsAffected and use remove_transition first. Set one timeline clip's visible duration by moving only its timeline end (TrackItem.end) while keeping its start fixed. Pass exactly one of duration_seconds or end_seconds. Works for extending still images past their import length. Refuses to overlap the next clip on the same track, rejects shortening that would strand effect keyframes unless keyframe_policy is preserve, reads start/end back, and restores the original end if Premiere clamps or ignores the write (for example when video media has no handle left). Linked audio/video partners get the same change by default (include_linked), applied as the same end offset so partners with a J/L cut keep their offset; every clip is checked before any is changed. Use this instead of speed changes, which Premiere does not expose to scripting. Existing host Out padding below one sequence frame may be preserved or reduced, but never used to create additional padding. Non-still sources require readable ffprobe duration evidence and a readable sequence frame grid.
Inputs: node_id (required), end_seconds, include_linked, idempotency_key, +4 more. Returns: ok, data, tool, error, +2 more
set_clip_opacitySet Clip OpacityC
Set the opacity of a video clip (0-100) using English or measured Spanish built-in names, then read it back.
Inputs: node_id (required), opacity (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_clip_panSet Clip PanB
Set and read back the pan (left/right balance) on an audio clip, including Channel Volume layouts.
Inputs: pan (required), node_id (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_clip_positionSet Clip PositionA
Set the Position property on a video clip's Motion effect using English or measured Spanish built-in names, then read it back. Values default to pixels; explicit normalized values are fractions from 0 to 1. Omitted units with a 0–1 pair keeps pixels and adds a warning.
Inputs: x (required), y (required), node_id (required), units, +3 more. Returns: ok, data, tool, error, +2 more
set_clip_propertiesSet Clip PropertiesA
Set supported clip properties (opacity, scale, position, rotation) and read each requested value back. Position uses pixels by default or explicit normalized 0–1 fractions; an omitted-unit 0–1 pair retains pixels with a warning. Clip speed is unsupported and fails before mutation; use set_clip_duration to change a clip's timeline length.
Inputs: node_id (required), scale, speed, units, +7 more. Returns: ok, data, tool, error, +2 more
set_clip_properties_batchSet Clip Properties BatchA
Apply Motion/Opacity values to up to 16 clips after preflighting every target property. Position defaults to pixels or accepts explicit normalized 0–1 fractions; omitted-unit 0–1 pairs retain pixels and add per-item warnings. The handler reads each requested value back and never reports a partial batch as verified.
Inputs: items (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
set_clip_rotationSet Clip RotationB
Set the Rotation property on a video clip's Motion effect using English or measured Spanish built-in names, then read it back.
Inputs: degrees (required), node_id (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_clip_scaleSet Clip ScaleA
Scale a video clip evenly through its Motion effect using English or measured Spanish built-in names, and read the result back. With Uniform Scale off, both Scale (height) and Scale Width are set, so the picture is not stretched; use set_scale_width_height for different values.
Inputs: scale (required), node_id (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_clip_selectionSet Clip SelectionB
Select or deselect a clip in the active sequence and read its selection state back.
Inputs: node_id (required), selected (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_clip_speed_qeSet Clip Speed QeA
Unavailable: Premiere's documented ExtendScript and UXP APIs have no setter for a timeline clip's speed (only getters), and the undocumented QE setSpeed is deliberately not used. Always fails before mutation. To change how long a clip runs on the timeline, use set_clip_duration.
Inputs: node_id (required), speed_percent (required), reverse, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
set_clip_start_timeSet Clip Start TimeB
Alias of set_start_time: set and verify the source project item start timecode offset.
Inputs: item_id (required), start_seconds (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_clips_volumeSet Clips VolumeA
Set the volume (in dB) on every audio clip of a track, or on a list of clip indices. One round trip instead of one call per clip - essential for sequences with dozens of clips.
Inputs: volume_db (required), track_index (required), clip_indices, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
set_clip_volumeSet Clip VolumeA
Set an audio clip's Volume > Level in dB. Does not read or change Essential Sound Amplify automation.
Inputs: node_id (required), volume_db (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_color_labelSet Color LabelB
Set the color label on a project item or clip and read it back
Inputs: item_id (required), color_index (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_color_valueSet Color ValueC
Set a color value on an effect property (e.g., tint color, fill color)
Inputs: red (required), blue (required), alpha (required), green (required), +7 more. Returns: ok, data, tool, error, +2 more
set_effect_propertySet Effect PropertyA
Set one effect property. Duplicate names require property_index from get_effect_properties. Colour values use [alpha, red, green, blue] and the lossless colour API; keyframed writes are refused. Readback reports verified, failed or committed_unverified; unreadable values are never reported as applied. Audio effect parameters (effects on audio clips other than built-in Volume, Channel Volume, Panner and Balance) take Premiere's normalized 0-1 value, not Hz, dB or ms; a number outside 0-1 is refused before the write when the current value is inside 0-1, unless allow_out_of_range_audio_value is true. valueScale describes the returned value; requestedValueScale is added when the request was on a different scale. Calibrate audio changes by rendering.
Inputs: value (required), node_id (required), effect_name (required), property_name (required), +5 more. Returns: ok, data, tool, error, +2 more
set_footage_interpretationSet Footage InterpretationC
Set footage interpretation settings for a project item and read them back, including fields that were not meant to change
Inputs: item_id (required), field_type, frame_rate, idempotency_key, +3 more. Returns: ok, data, tool, error, +2 more
set_frame_blendSet Frame BlendA
Request frame blending on a clip through QE DOM. Premiere exposes no frame-blend readback, so the result is committed_unverified and must be checked in Effect Controls.
Inputs: enabled (required), node_id (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_graphics_white_luminanceSet Graphics White LuminanceC
Set the graphics white luminance value (HDR setting) for the project
Inputs: luminance (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
set_item_in_outSet Item In OutA
Set in and/or out points on a project item in the project panel (marks source range for editing). Premiere floors video marks to the media's own frame grid, so a mark is verified when it lands on the frame the request floors to (an exact frame boundary keeps its own frame); the result reports requested and applied seconds.
Inputs: item_id (required), in_seconds, media_type, out_seconds, +3 more. Returns: ok, data, tool, error, +2 more
set_keyframe_interpolationSet Keyframe InterpolationA
Set the interpolation type of an existing keyframe (Linear, Hold, or Bezier). Premiere exposes no interpolation readback, so a write is reported as committed_unverified. Stored curves do not establish rendering; verify with a short video export, or with PNG stills composited over black (they carry straight alpha).
Inputs: node_id (required), effect_name (required), time_seconds (required), interpolation (required), +5 more. Returns: ok, data, tool, error, +2 more
set_metadataSet MetadataA
Update project metadata on a project item. Supply complete metadata_xml plus updated_fields, or field_name and value to read-modify-write one XMP/project property through AdobeXMPScript with field readback. The project packet (default) stays in the project; packet 'xmp' is written by Premiere into the source media file on disk and requires the filesystem capability.
Inputs: item_id (required), value, packet, field_name, +7 more. Returns: ok, data, tool, error, +2 more
set_offlineSet OfflineB
Set a project item offline, or ask Premiere to refresh it back online when offline is false.
Inputs: item_id (required), offline, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_override_frame_rateSet Override Frame RateB
Override the frame rate of a project item (useful for image sequences or misinterpreted media) and read it back
Inputs: item_id (required), frame_rate (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_override_pixel_aspect_ratioSet Override Pixel Aspect RatioB
Override the pixel aspect ratio of a project item and read it back
Inputs: item_id (required), numerator (required), denominator (required), idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
set_playhead_positionSet Playhead PositionA
Set the playhead (CTI) position, clamp it to the active sequence's end, and read the stored position back.
Inputs: time_seconds (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
set_poster_frameSet Poster FrameA
Unavailable: Premiere's scripting API cannot set a project item's poster frame. Fails without changing the item; set it in the Project panel (Shift+P).
Inputs: item_id (required), time_seconds (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_project_item_audio_channel_mappingSet Project Item Audio Channel MappingB
Request one output-to-source audio channel mapping using the documented API. Per-channel mapping has no documented getter, so accepted writes remain committed_unverified.
Inputs: item_id (required), channel_index (required), source_channel_index (required), idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
set_project_panel_metadataSet Project Panel MetadataA
Set the project panel metadata/column configuration from XML and verify that Premiere reads back the exact XML
Inputs: metadata_xml (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
set_project_scratch_diskSet Project Scratch DiskA
Set the project's scratch disks for captured video, captured audio, video previews and audio previews in one call. Each path must be an existing folder or "SameAsProject"; any rejected path fails the call.
Inputs: audio_previews, captured_audio, captured_video, video_previews, +4 more. Returns: ok, data, tool, error, +2 more
set_scale_to_frame_sizeSet Scale To Frame SizeA
Enable 'Scale to Frame Size' so media fills the sequence frame. Accepts a timeline clip node ID (active sequence, same IDs as get_clip_properties) or a project item node ID or name. A timeline clip is resolved first and its source project item is updated through ProjectItem.setScaleToFrameSize(). ExtendScript exposes no getter for this flag, so the result is committed_unverified unless the timeline clip's Motion > Scale reads back changed (verified). Check with get_clip_properties.
Inputs: item_id (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
set_scale_width_heightSet Scale Width HeightA
Set independent width and height scale on a clip. Turns Uniform Scale off, writes Motion > Scale Width (width) and Motion > Scale (which Premiere uses as the height once Uniform Scale is off), then reads all three back. Fails when a value does not read back.
Inputs: node_id (required), scale_width (required), scale_height (required), idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
set_scratch_disk_pathSet Scratch Disk PathB
Set one project scratch disk (captured media, previews, auto-save, CC Libraries or Motion Graphics template media) to an existing folder or "SameAsProject", using Premiere's ScratchDiskType constants.
Inputs: path (required), scratch_disk_type (required), idempotency_key, save_and_verify, +2 more. Returns: ok, data, tool, error, +2 more
set_sequence_audio_settingsSet Sequence Audio SettingsB
Change audio settings of the active sequence (sample rate, channel type).
Inputs: sample_rate, channel_type, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_sequence_display_formatSet Sequence Display FormatA
Set the timecode display format for the active sequence and read it back. Uses Premiere's display codes (video 100-113, audio 200-201); the older 0-11 and 0-1 values are mapped onto them.
Inputs: idempotency_key, expected_cep_target, audio_display_format, video_display_format, +1 more. Returns: ok, data, tool, error, +2 more
set_sequence_field_typeSet Sequence Field TypeB
Set the field order of the active sequence.
Inputs: field_type (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
set_sequence_frame_rateSet Sequence Frame RateA
Change the frame rate of the active sequence and verify it. Premiere re-snaps every clip to the new frame grid, so clips off that grid move by up to a frame; the result lists them (clipsMoved, movedClips) and changing back does not restore them.
Inputs: frame_rate (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
set_sequence_in_out_pointsSet Sequence In Out PointsA
Set the sequence in and out points (for an export range, etc.) and read them back. out_seconds must be after in_seconds and not past the sequence end.
Inputs: in_seconds (required), out_seconds (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_sequence_pixel_aspect_ratioSet Sequence Pixel Aspect RatioB
Change the pixel aspect ratio of the active sequence, or return a capability error when the legacy host does not expose a writable setting.
Inputs: ratio (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
set_sequence_resolutionSet Sequence ResolutionC
Change the resolution (frame size) of the active sequence.
Inputs: width (required), height (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_sequence_settingsSet Sequence SettingsC
Modify and read back sequence frame-size settings.
Inputs: width, height, sequence_id, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
set_source_in_outSet Source In OutB
Set in and/or out points on the clip currently open in the Source Monitor.
Inputs: in_seconds, out_seconds, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_start_timeSet Start TimeC
Set the start time (timecode offset) for a project item
Inputs: item_id (required), start_seconds (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_target_trackSet Target TrackA
Target or untarget one video or audio track for source-patched insert/overwrite edits. Premiere allows several tracks of a type to be targeted at once, so by default (exclusive=true) targeting a track also untargets every other track of the same type. Reads back every track of that type and reports verified only when the readback matches the requested state; otherwise committed_unverified or an error.
Inputs: targeted (required), track_type (required), track_index (required), exclusive, +3 more. Returns: ok, data, tool, error, +2 more
set_time_interpolationSet Time InterpolationB
Request time interpolation for a clip (Frame Sampling, Frame Blending, Optical Flow) through QE DOM. Premiere exposes no interpolation readback, so the result is committed_unverified and must be checked in Effect Controls.
Inputs: node_id (required), interpolation_type (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_track_statesSet Track StatesA
Set mute, solo and lock on several video or audio tracks of the active sequence in one host command, with per-track readback. Every requested track is read first; if any target is out of range, unreadable or asks for a state this host cannot read and write (solo has no public ExtendScript API and is probed on the QE track), nothing is changed. snapshot: true returns the pre-write state of the same tracks as a restore payload this tool accepts unchanged; with no state fields at all it is a read-only capture.
Inputs: tracks (required), snapshot, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_transcode_on_ingestSet Transcode On IngestB
Request enabling or disabling project transcoding on ingest. Premiere exposes no getter for independent verification, so dispatch is reported as requested_unverified.
Inputs: enabled (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
set_uniform_scaleSet Uniform ScaleA
Toggle uniform scale on a clip's Motion effect. When enabled, Scale Width and Scale Height are linked.
Inputs: node_id (required), uniform (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
setup_duckingSetup DuckingA
Build a verified Volume > Level keyframe curve for one audio clip. Ducking-window times are relative to that clip's start; overlapping or out-of-range windows are rejected before any keyframe write.
Inputs: node_id (required), ducking_windows (required), base_db, fade_seconds, +3 more. Returns: ok, data, tool, error, +2 more
set_work_areaSet Work AreaA
Set and verify the work-area points, turning the bar on first through the public Sequence API when it is off. Fails when Premiere leaves the points unchanged (26.5.2 ignores these CEP writes; use the UXP set_work_area there) and turns the bar back off if this call turned it on. Unreadable or partial writes report committed_unverified.
Inputs: in_seconds (required), out_seconds (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_workspaceSet WorkspaceA
Request a workspace layout. The documented API has no current-workspace getter; acceptance is committed_unverified and the visible layout must be checked in Premiere.
Inputs: name (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
set_xmp_metadataSet Xmp MetadataA
Merge a raw XMP XML patch into a project item's existing XMP metadata without removing unrelated fields. WARNING: Premiere writes XMP into the source media file on disk (the file's metadata block and modification time change; picture and sound are untouched). Each supplied leaf field is compared with host readback (maximum 256); unreadable readback remains committed_unverified. Requires the filesystem capability.
Inputs: item_id (required), xmp_xml (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
set_zero_pointSet Zero PointA
Set the starting timecode (zero point) of a sequence and read it back. The value is snapped to the sequence frame grid; for drop-frame 29.97, 01;00;00;00 is 3599.9964 s, and for non-drop 29.97 it is 3603.6 s.
Inputs: start_seconds (required), sequence_id, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
slide_editSlide EditA
Perform a verified slide edit on a clip using adjacent clips from the public timeline DOM. Linked audio/video partners get the same edit by default (include_linked); every clip is checked before any is changed. Requires readable finite media and ffprobe duration evidence for every edited source; refuses unknown duration, stills, and nonunit/reversed speed before mutation. Existing host Out padding below one sequence frame may be preserved or reduced, but never used to create additional padding.
Inputs: node_id (required), offset_seconds (required), include_linked, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
slip_editSlip EditA
Perform a verified slip edit on a clip using public source in/out properties. Requires accessible physical media duration from ffprobe; unknown duration or linked partners using different source files refuse before mutation. Linked audio/video partners get the same edit by default (include_linked); every clip is checked before any is changed. Existing host Out padding below one sequence frame may be preserved or reduced, but never used to create additional padding.
Inputs: node_id (required), offset_seconds (required), include_linked, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
speed_changeSpeed ChangeA
Unavailable: Premiere's documented ExtendScript and UXP APIs have no setter for a timeline clip's speed (only getters), and the undocumented QE setSpeed is deliberately not used. Always fails before mutation. To change how long a clip runs on the timeline, use set_clip_duration.
Inputs: node_id (required), speed_percent (required), reverse, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
split_clipSplit ClipA
EXPERIMENTAL (undocumented QE DOM): Split every clip on one track that spans a timeline time, then verify both resulting boundaries. Effect-keyframe redistribution remains unverified.
Inputs: time_seconds (required), track_type, track_index, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
stabilize_clipStabilize ClipA
Apply Warp Stabilizer using the experimental QE DOM. Verifies component addition and readable parameter values, never analysis completion. Numeric or unreadable Method popup values remain unverified because no documented label mapping is available.
Inputs: node_id (required), method, smoothness, idempotency_key, +2 more. Returns: ok, data, tool, error, +2 more
start_batch_encodeStart Batch EncodeA
Request Adobe Media Encoder to start the render queue; reports only accepted handoff, not queue progress or output-file creation.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
start_local_analysis_jobStart Local Analysis JobA
Start one allowlisted read-only local media analysis as a bounded cancellable process job. Native Premiere jobs are never cancelled by this tool.
Inputs: arguments (required), tool_name (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
stop_playbackStop PlaybackA
Request that active-sequence timeline playback stop through QE. The legacy API does not provide a same-call playhead readback, so stopped state is not reported as verified. Only the timeline can be stopped: Premiere's scripting APIs have no documented call that stops the Source Monitor alone, so target "source" returns an error instead of stopping the timeline.
Inputs: target, idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
toggle_track_visibilityToggle Track VisibilityB
Set video track visibility using Premiere's track mute state (eye icon) and read the mute state back. Premiere's scripting API exposes mute, not a separate video visibility setter.
Inputs: visible (required), track_index (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
trim_clipTrim ClipA
Refuses attached transitions or unreadable transition collections before structural edits; inspect transitionsAffected and use remove_transition first. Trim exactly one source in/out point and verify the corresponding visible timeline edge. Requires accessible physical media duration from ffprobe; unknown duration or linked partners using different source files refuse before mutation. Refuses retimed clips, extensions that would overlap the neighbouring clip on the same track, and, by default, trims that would leave effect keyframes outside the visible clip. Linked audio/video partners get the same trim by default (include_linked), applied as the same offset from each partner's own source point so a J/L cut or slipped audio stays in sync; every clip is checked before any is changed. To set a clip's timeline length or extend a still image, use set_clip_duration. Existing host Out padding below one sequence frame may be preserved or reduced, but never used to create additional padding.
Inputs: node_id (required), include_linked, new_in_seconds, idempotency_key, +4 more. Returns: ok, data, tool, error, +2 more
undoUndoA
EXPERIMENTAL (undocumented QE DOM: qe.project.undo / undoStackIndex). Undo the most recent Premiere project action(s) through QE, checked step by step against Premiere's undo-stack position (stackVerified; the timeline itself is not read back). Undo history is project-wide. Only actions Premiere records are undoable: QE edits such as razor, insert, lift and extract report undoSteps (and undoStackIndex) in their results; pass that undoSteps as count to reverse exactly that call. A marker receipt with undoTracked:false recorded no undo step: calling Undo for it would reverse an earlier action. Only CEP tool results carry undoSteps; UXP tools and workflows that send several commands are not counted. Always pass expected_undo_stack_index to check the stack position, but matching position alone does not prove which action is on top. Observed marker boundaries refuse the entire request before any step unless acknowledge_untracked_markers:true explicitly permits prior non-marker actions. The barrier persists through server/helper reloads while the CEP engine remains alive; it cannot account for marker writes before observation, after an engine reset, or through UXP, the manual UI, or other clients. Matching the QE index verifies stack position only.
Inputs: expected_undo_stack_index (required), count, idempotency_key, expected_cep_target, +2 more. Returns: ok, data, tool, error, +2 more
unlink_selectionUnlink SelectionA
Unlink the currently selected video and audio clips in the active sequence, then read the links back. Premiere only unlinks when every clip of a linked group is selected, so a selection missing a linked partner is refused before anything changes.
Inputs: idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
unnest_sequenceUnnest SequenceA
Unnest a nested sequence clip, replacing it with the nested sequence's clips at their exact source in/out and timeline positions. Refuses without changing anything when the nest is trimmed, retimed, linked to a partner clip, contains items that also carry the other media type (Premiere's Track.overwriteClip would place that media on the matching track and overwrite the clips there), or when the destination range is occupied or locked. Re-reads every placed clip and reports failure with Undo guidance if any start or source range differs. Nested clips are re-placed from their project items, so effects, keyframes, and transitions inside the nest are not carried over.
Inputs: node_id (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
update_markerUpdate MarkerA
Update the name, comments or color of the sequence marker at a time and read them back. EXPERIMENTAL (QE DOM): the receipt reports undoStackIndex movement, which does not prove QE can reverse the marker. Every marker attempt protects an engine undo boundary; undoTracked:false means the marker did not observably advance the QE index.
Inputs: time_seconds (required), name, color, comments, +3 more. Returns: ok, data, tool, error, +2 more
validate_cmx3600_edlValidate Cmx3600 EdlA
Validate a local CMX 3600 EDL's supported event grammar, timecodes, durations, duplicate event IDs, record overlaps, and record gaps before user-assisted Premiere interchange.
Inputs: path (required), frame_rate, idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
validate_export_presetValidate Export PresetB
Validate that an Adobe Media Encoder .epr preset exists and ask the active Premiere sequence which output extension it produces
Inputs: preset_path (required), idempotency_key, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
validate_mogrt_brand_kitValidate Mogrt Brand KitARead-onlyIdempotent
Validate an operator-approved local MOGRT brand kit before using it in a template or batch preview. It never reads font inventories, image pixels, or writes files.
Inputs: brand_kit (required), approved_workspace_path (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
validate_platform_publish_packageValidate Platform Publish PackageARead-onlyIdempotent
Validate a rendered file plus title, description, hashtags, and content flags against one platform's approximate 2026 publish limits. Returns hard violations, soft warnings, normalized hashtags, and character counts. Local-only; never uploads or changes Premiere.
Inputs: width (required), height (required), platform (required), frame_rate (required), +12 more. Returns: ok, data, tool, error, +2 more
validate_project_for_exportValidate Project For ExportARead-onlyIdempotent
Run a non-mutating export preflight for an active or named sequence. It reports blocking offline media, empty timelines, inaccessible preset/output paths, duration, and optional timeline gaps without queuing an export. readyForExport means these preflight checks passed; it does not test exporter initialization, encoder availability, or whether the host can render. Require an actual output file from export_sequence and verify_delivery_file before claiming delivery.
Inputs: gap_limit, check_gaps, gap_offset, output_path, +7 more. Returns: ok, data, tool, error, +2 more
verify_after_effects_connectionVerify After Effects ConnectionC
Read-only check that the dedicated After Effects CEP connector is running. It never reads project names, media, or paths.
Inputs: expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
verify_caption_render_evidenceVerify Caption Render EvidenceARead-onlyIdempotent
Check caller-measured caption/title bounds, missing glyphs, line-break and bidirectional-text review against a rendered-artifact SHA256 and target safe zone. Pixel measurement and manual review remain explicit; this tool does not perform OCR or certify unsampled frames.
Inputs: evidence (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
verify_delivery_conformanceVerify Delivery ConformanceARead-onlyIdempotent
Verify a local exported file against an explicit delivery contract using ffprobe and optional EBU R128 analysis. Returns pass, fail, or not_evaluated per check; it does not prove Premiere render lineage or visual approval.
Inputs: output_path (required), width, height, frame_rate, +16 more. Returns: ok, data, tool, error, +2 more
verify_delivery_fileVerify Delivery FileB
Verify that an exported delivery is a non-empty regular file and calculate a SHA-256 or SHA-512 checksum; optionally compare expected size and checksum
Inputs: output_path (required), idempotency_key, expected_checksum, checksum_algorithm, +4 more. Returns: ok, data, tool, error, +2 more
verify_fcpxml_media_referencesVerify Fcpxml Media ReferencesA
Verify the file:// media references of an FCPXML or FCP7 XML (xmeml) document, only inside caller-approved existing roots. References outside those roots are never statted or exposed as local paths.
Inputs: path (required), allowed_roots (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
verify_mogrt_artifactVerify Mogrt ArtifactARead-onlyIdempotent
Verify that a workspace-contained .mogrt artifact exists locally and has a ZIP header. This does not prove controls, import compatibility, playback, or visual correctness.
Inputs: mogrt_path (required), approved_workspace_path (required), idempotency_key, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
verify_premiere_connectionVerify Premiere ConnectionARead-onlyIdempotent
Run a safe, read-only first-run check. It proves that this MCP server, the selected Premiere bridge, an active project, and an active sequence are connected without returning project names, paths, or media details.
Inputs: backend, expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
verify_temporal_render_artifactVerify Temporal Render ArtifactARead-onlyIdempotent
Validate actual short exported video at 2–32 times with decoded RGB tolerances and optional decoded-audio RMS windows. Rejects stills and mismatched samples; records fixture/artifact hashes and explicit declared host provenance. This sampled harness does not prove all frames, Undo/reopen, playback, glyphs or destination compatibility.
Inputs: path (required), samples (required), fixture_id (required), fixture_sha256 (required), +7 more. Returns: ok, data, tool, error, +2 more
verify_timeline_postconditionsVerify Timeline PostconditionsARead-onlyIdempotent
Compare exact canonical snapshots for source continuity, linked identities, preserved neighbors and unexpected pieces. Reports bounded structural discrepancies. Does not certify audible A/V synchronization or rendering.
Inputs: actual (required), expected (required), expected_cep_target, expected_project_path. Returns: ok, data, tool, error, +2 more
wait_workflow_jobWait Workflow JobARead-onlyIdempotent
Wait up to 60 seconds for an exact native or local job. An uncorrelated native terminal event stops observation with requiresReconciliation, never verified completion. Optional MCP progress reports observed receipt progress. Stopping the wait never cancels accepted native work.
Inputs: job_id (required), origin (required), timeout_ms, expected_cep_target, +1 more. Returns: ok, data, tool, error, +2 more
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 445 tools
The set contains many near-duplicate or overlapping tools: get_project_info, get_full_project_overview, get_premiere_state; get_active_sequence, get_full_sequence_info, get_sequence_structure; list_sequences, get_sequence_count; numerous preview/apply pairs; and many inspect/get tools for project items, clips, metadata, and timelines. An agent would struggle to choose the right tool without extensive trial and error.
Most names are snake_case, but conventions are mixed: verb_noun (get_clip_properties), noun_verb (speed_change, color_correct), bare verbs (undo, redo, ping), suffixes like _qe/_uxp/_cep, and many batch/preview/apply variants. The naming is still readable but not predictable enough for 445 tools.
445 tools is an extreme mismatch for a coherent MCP surface, far beyond practical selection and comprehension. Even for a complex application like Premiere Pro, this count creates an unmanageable tool namespace with many redundant, experimental, or unavailable entries.
The surface is exceptionally broad, covering project, sequence, clip, effect, keyframe, marker, export, QC, interchange, and workflow operations. However, some tools are explicitly unavailable or fail by design, and the sheer number of options makes completeness hard to assess without dead ends.
Maintenance
Related MCP Connectors
Compose, edit and render video with your AI agent. Turn footage into finished edits with content-aware reframing, word-timed captions and motion graphics. Hosted MCP with OAuth sign-in; cloud processing uses credits.
The agentic video editor for ChatGPT and Claude. Ask in your chat and it cuts, captions, adds music, titles and motion graphics on a real timeline you can open and adjust.
AI video editor for agents and humans: timeline, captions, color, audio and generation as MCP tools.
Use AI models for chat, image, and video generation from Claude Code and other MCP hosts.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables Claude to drive Adobe Premiere Pro directly through natural-language requests, supporting import, timeline editing, markers, effects, transitions, and export.238,356 npmMIT
- FlicenseNot gradedqualityDmaintenanceEnables prompt-driven video editing in Adobe Premiere Pro, allowing Claude to transcribe footage, decide cuts, build motion graphics, and assemble timelines via natural language.-
- AlicenseNot gradedqualityCmaintenanceEnables MCP-compatible AI assistants to control Adobe Premiere Pro through natural language, automating project and media management, timeline editing, color and audio adjustments, titles and markers, and batch exports via a local bridge.8,356 npm1MIT
- AlicenseCqualityAmaintenanceConnects Claude to a running Adobe Premiere Pro via a CEP bridge, exposing hundreds of low-level project, sequence, clip, effect and export tools plus studio-grade workflows such as proxy generation, rough cuts from slate calls, text-based shot search, beat-driven cuts, per-scene colour, captions, aspect versions and delivery exports. All processing stays on the local Mac, with speech, vision and beat analysis handled by a companion media engine.317MIT