Skip to main content
Glama
leancoderkavy

Premiere Pro MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORTNoHTTP port (HTTP/SSE transport only)3000
MCP_AUTH_TOKENNoBearer token for HTTP transport auth (optional)
PREMIERE_TEMP_DIRNoShared temp directory for MCP ↔ CEP communicationOS temp dir + /premiere-mcp-bridge
PREMIERE_TIMEOUT_MSNoCommand timeout in milliseconds30000

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}
extensions
{
  "io.github.leancoderkavy/premiere-pro": {
    "dualEra": true,
    "transports": [
      "stdio",
      "streamable-http"
    ],
    "bridgeBackends": [
      "cep",
      "uxp"
    ],
    "protocolRevision": "2026-07-28"
  }
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_project_infoA

Get information about the currently open Premiere Pro project

list_project_itemsB

List all items in the project panel (clips, bins, sequences)

list_sequencesA

List all sequences in the project

get_active_sequenceB

Get detailed information about the currently active sequence

list_sequence_tracksB

List all tracks (video and audio) in a sequence

get_clip_propertiesC

Get detailed properties of a specific clip by its node ID

find_project_item_by_nameB

Find a project item by name (searches recursively through bins)

get_sequence_settingsB

Get the settings (resolution, frame rate, etc.) of a sequence

get_selected_clipsA

Get the currently selected clips in the active sequence

get_clip_at_positionB

Get the clip at a specific time position on a track

save_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.

save_project_asA

Save the current project to a new .prproj path. 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.

open_projectA

Open a Premiere Pro project file and make it the active project, verifying it is open. Other open projects stay open.

set_active_sequenceC

Set the active sequence by name or ID

undoA

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.

consolidate_duplicatesB

Consolidate duplicate project items and report success only when duplicate media groups decrease.

create_projectC

Create a new Premiere Pro project at the specified path

close_projectA

Close an open Premiere Pro project: the active one, or the open project at project_path. Verifies it is no longer open and reports which project is active afterwards.

import_ae_compsA

Import After Effects compositions from an .aep file, failing closed when the file does not exist or when the target bin gains no items.

delete_binB

Delete a bin (folder) from the project panel

rename_binB

Rename a bin (folder) in the project panel

create_smart_binA

Create a smart bin (search bin) in the project panel

find_items_by_media_pathB

Find project items whose media path contains the given search string

start_batch_encodeA

Request Adobe Media Encoder to start the render queue; reports only accepted handoff, not queue progress or output-file creation.

add_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.

import_sequencesC

Import sequences from another Premiere Pro project file

create_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.

import_fcp_xmlA

Open a Final Cut Pro XML file as a new Premiere project. app.openFCPXML(path, projPath) requires a destination project path; it does not merge the XML into the currently open project. verified is true only when that destination exists as a file and Premiere has that exact path open.

set_transcode_on_ingestA

Request enabling or disabling project transcoding on ingest. Premiere exposes no getter for independent verification, so dispatch is reported as requested_unverified.

get_insertion_binA

Get the current target bin for new imports (the bin that is currently focused in the Project panel)

get_project_panel_metadataA

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.

set_project_panel_metadataA

Set the project panel metadata/column configuration from XML and verify that Premiere reads back the exact XML

get_graphics_white_luminanceA

Get the graphics white luminance value (HDR setting) for the project

set_graphics_white_luminanceA

Set the graphics white luminance value (HDR setting) for the project

set_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.

import_mediaB

Import media files into the project and confirm a new project item for each file

import_folderC

Import an entire folder of media into the project

create_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.

move_item_to_binB

Move a project item to a different bin and confirm where it landed

relink_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.

refresh_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.

check_offline_mediaB

Check for offline (missing) media in the project

set_offlineA

Set a project item offline, or ask Premiere to refresh it back online when offline is false.

has_proxyC

Check if a project item has a proxy attached

detach_proxyB

Detach/remove the proxy from a project item

set_override_frame_rateA

Override the frame rate of a project item (useful for image sequences or misinterpreted media) and read it back

set_override_pixel_aspect_ratioB

Override the pixel aspect ratio of a project item and read it back

set_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.

get_item_infoB

Get detailed type info about a project item (is it a sequence, multicam, merged clip, etc.)

select_itemB

Select a project item in the Project panel

set_start_timeB

Set the start time (timecode offset) for a project item

create_sequenceC

Create a new sequence in the project

duplicate_sequenceC

Duplicate an existing sequence

delete_sequenceB

Delete a sequence from the project

set_sequence_settingsC

Modify and read back sequence frame-size settings.

create_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.

auto_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.

unnest_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, 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.

create_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.

attach_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.

is_work_area_enabledA

Check whether the work area bar is enabled on the active sequence

get_export_file_extensionA

Get the export file extension from Premiere. If Premiere returns none, infer it only for an existing .epr in a recognized Adobe Media Encoder format folder; that fallback is marked unconfirmed and should be checked before delivery.

add_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).

remove_from_timelineA

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.

move_clipA

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.

trim_clipA

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.

set_clip_durationA

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.

split_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.

duplicate_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. Fails without changes when no free track is available; add one with add_tracks.

enable_disable_clipB

Enable or disable a clip on the timeline

set_clip_propertiesA

Set supported clip properties (opacity, scale, position, rotation) and read each requested value back. Clip speed is unsupported and fails before mutation; use set_clip_duration to change a clip's timeline length.

replace_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. 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.

speed_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.

apply_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.

apply_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.

remove_effectA

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.

list_available_effectsA

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.

list_available_audio_effectsA

List all available audio effects in Premiere Pro. Uses QE DOM.

color_correctA

Apply basic color correction through experimental QE Lumetri insertion. Requires Lumetri component and requested property readback; rendered output is not verified.

apply_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.

inspect_stabilizer_statusA

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.

stabilize_clipC

Apply the Warp Stabilizer effect to a clip for video stabilization. Uses QE DOM.

add_transitionA

EXPERIMENTAL (undocumented QE DOM): Add a video transition between two clips at a cut point. Reads the transition back from the sequence track.

add_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.

batch_add_transitionsA

EXPERIMENTAL (undocumented QE DOM): Add the same video transition at each eligible cut point on a track and report per-cut readback.

list_available_transitionsA

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.

list_available_audio_transitionsA

EXPERIMENTAL (undocumented QE DOM): List audio transitions. Reports an unavailable or empty legacy catalog as an error rather than an assumed usable list.

adjust_audio_levelsB

Adjust a clip's Volume > Level in dB. Does not read or change Essential Sound Amplify automation.

add_audio_keyframesA

Add audio level keyframes to create fades or level changes

mute_trackB

Mute or unmute an audio track

detect_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.

plan_silence_review_markersA

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.

detect_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.

analyze_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.

normalize_loudness_fileA

Create a new loudness-normalized media derivative with FFmpeg, then remeasure that exact output using EBU R128. Never overwrites the input or an existing output file.

add_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.

import_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.

import_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.

list_stock_titlesA

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.

add_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 of the template before import, because Premiere exposes no writable text for them (textVerification 'template_verified'; confirm the render with export_frame). 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. Use list_stock_titles to see templates, their kind, and how many lines each takes.

verify_after_effects_connectionC

Read-only check that the dedicated After Effects CEP connector is running. It never reads project names, media, or paths.

preview_mogrt_recipeA

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.

create_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.

verify_mogrt_artifactA

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.

validate_mogrt_brand_kitA

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.

preview_mogrt_batchA

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.

create_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.

inspect_after_effects_template_sourceA

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.

preview_mogrt_library_publishA

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.

publish_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.

inspect_mogrt_libraryA

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.

inspect_after_effects_render_templatesA

Read available render and output-module template names from the first existing After Effects render-queue item. It never queues or renders a composition.

preview_after_effects_renderA

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.

enqueue_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.

preview_mogrt_premiere_handoffA

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.

apply_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.

preview_after_effects_render_handoffA

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.

apply_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.

add_markerA

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.

delete_markerB

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.

update_markerB

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.

list_markersA

List markers on the active sequence, or on a source project item that exposes a marker collection. A timeline-clip node_id returns a clean error instead of a raw TypeError.

add_trackB

Add verified video or audio tracks to the active sequence. Returns an error if Premiere cannot add the exact requested count.

delete_trackA

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.

lock_trackB

Set a video track's lock state and read it back to verify the change.

toggle_track_visibilityA

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.

get_playhead_positionA

Get the current playhead (CTI) position in the active sequence

set_playhead_positionB

Set the playhead (CTI) position, clamp it to the active sequence's end, and read the stored position back.

set_work_areaB

Set the work area (bar) in and out points

get_work_areaA

Get the current work area in and out points

set_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.

get_sequence_in_out_pointsB

Get the current sequence in and out points

get_metadataA

Get metadata for a project item. Use parse_fields to return named XMP/project fields instead of raw XML. 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.

set_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.

set_color_labelB

Set the color label on a project item or clip and read it back

get_color_labelC

Get the color label of a project item

get_footage_interpretationB

Get footage interpretation settings for a project item

set_footage_interpretationB

Set footage interpretation settings for a project item and read them back, including fields that were not meant to change

get_xmp_metadataA

Get the raw file/clip XMP packet for a project item (Dublin Core, EXIF, IPTC, xmpDM, and other namespaces). Distinct from Premiere-private project metadata. Omit GPS and camera serials from user-facing reports unless requested.

set_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). Requires the filesystem capability.

get_color_spaceB

Get the color space information for a project item

validate_export_presetB

Validate that an Adobe Media Encoder .epr preset exists and ask the active Premiere sequence which output extension it produces

verify_delivery_fileA

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

verify_delivery_conformanceA

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.

analyze_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.

detect_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.

export_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, and verifies a non-empty file was written (for an overwrite, that the file changed). 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.

export_frameC

Export the current frame as an image file

export_sequence_review_framesA

Export 2-24 evenly spaced, file-verified frames from an active-sequence range in one bridge round trip for visual review. This samples rendered output; it does not prove playback, audio, or editorial quality.

export_sequence_marker_review_framesA

Export up to 24 file-verified composite frames at active-sequence marker positions in one bridge request for marker-driven review. It reads markers and writes image files only; it does not add, update, or remove Premiere markers.

export_sequence_clip_review_framesB

Export one file-verified composite frame at the midpoint of each clip on a chosen video track in one bridge request. Read-only in Premiere; it does not mute tracks or claim visual quality.

export_as_fcp_xmlA

Export the active sequence as a Final Cut Pro XML file. Fails when Premiere writes no file or leaves a pre-existing output unchanged.

export_aafA

Unavailable on the CEP backend. Use export_aaf_uxp with an authenticated Premiere 26.3+ UXP bridge.

add_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.

get_render_queue_statusA

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.

create_subclipB

Create a subclip from a project item with in/out points

capture_frameA

Capture the current frame and return it as inline image data for the LLM to see. This lets the AI visually inspect the current state of the timeline.

export_omfA

Export the active sequence as an OMF file (Open Media Framework, for audio post-production)

encode_project_itemA

Request an Adobe Media Encoder encode for a project item. The returned job ID is an unverified handoff; verify queue presence or the output file independently.

encode_fileA

Request an Adobe Media Encoder encode for an external file. The returned job ID is an unverified handoff; verify queue presence or the output file independently.

manage_proxiesA

Create, attach, or toggle proxies for a project item. 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. There is no single-call create-and-attach in Premiere's ExtendScript API.

inspect_media_streamsA

Inspect a local media file with ffprobe and return container, stream, codec, time-base, channel, and chapter metadata. Read-only and independent of Premiere.

generate_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.

detect_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.

detect_motion_peaksC

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.

read_video_scopesB

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.

plan_shot_matchA

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.

analyze_video_interlacingA

Classify decoded video frames as progressive, top-field-first, bottom-field-first, mixed, or undetermined using FFmpeg idet. Read-only delivery preflight.

detect_active_picture_boundsA

Detect the most frequent active-picture crop rectangle in decoded video, exposing probable letterbox or pillarbox bars without modifying the source.

inspect_cmx3600_edlA

Parse a local CMX 3600 EDL into bounded event, reel, track, transition, and timecode facts without importing it into Premiere.

validate_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.

compare_cmx3600_edlsB

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.

inspect_fcpxml_interchangeA

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.

verify_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.

ripple_deleteA

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.

roll_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.

slide_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.

slip_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.

move_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.

remove_all_effectsA

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.

set_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.

reverse_clipA

Unavailable: Premiere does not expose a supported scripting API for reversing a timeline clip's playback direction.

set_frame_blendB

Enable or disable frame blending on a clip. Uses QE DOM.

set_time_interpolationB

Set time interpolation type for a clip (Frame Sampling, Frame Blending, Optical Flow). Uses QE DOM.

rename_clipA

Rename a clip on the timeline and verify the new name.

get_clip_speedA

Get the playback speed and reverse state of a clip

set_clip_selectionB

Select or deselect a clip in the active sequence

link_selectionA

Link the currently selected video and audio clips in the active sequence

unlink_selectionA

Unlink the currently selected video and audio clips in the active sequence

overwrite_clipB

Overwrite a project item onto validated timeline tracks and verify a new source placement at the requested time

create_sequence_from_clipsB

Create a new sequence by automatically placing project items in order

close_sequenceA

Request closing a sequence timeline tab. Premiere exposes no open-tab enumeration, so dispatch is requested_unverified; the sequence stays in the project.

export_as_projectA

Export a sequence as a standalone Premiere Pro project file. Fails when Premiere writes no file or leaves a pre-existing output unchanged.

set_zero_pointB

Set the starting timecode (zero point) of a sequence

scene_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.

delete_preview_filesB

Delete all preview/render cache files for the project. Uses QE DOM.

add_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.

set_color_valueB

Set a color value on an effect property (e.g., tint color, fill color)

get_clip_adjustment_layerB

Check if a clip is an adjustment layer

get_linked_itemsB

Get all clips in the sequence that are linked to the same source as a given clip

get_mogrt_componentA

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).

get_effect_propertiesB

List all properties of a specific effect on a clip, including current values

set_effect_propertyA

Set the value of a specific effect property on a clip. Accepts scalar, boolean, string, array-shaped vector values (for example Motion > Position as [x, y]), and MOGRT JSON objects or strings, and verifies the readback component by component.

get_keyframesA

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.

add_keyframeA

Add and read back a keyframe on an effect property. The receipt warns when its time is outside the clip's visible range. This verifies stored parameter data only; render/playback verification remains host-dependent.

remove_keyframeA

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.

remove_keyframe_rangeA

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.

set_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.

get_value_at_timeB

Get the interpolated value of an effect property at a time, in seconds from the clip's start

inspect_dom_objectA

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

list_clip_effectsA

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.

get_sequence_structureA

Get a complete structural overview of the active sequence: all tracks, all clips with positions, gaps, and clip metadata. Essential for understanding timeline state before making edits.

get_premiere_stateA

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.

get_full_project_overviewA

Get a comprehensive overview of the project. Use include_bin_tree false or sequence_offset/sequence_limit for a bounded response on large projects.

get_bin_contentsA

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.

get_full_sequence_infoB

Get exhaustive information about a sequence: settings, all tracks with lock/mute/target state, all clips with positions/effects/speed/enabled state, all markers, transitions, in/out points, and work area.

get_full_clip_infoA

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.

get_project_item_infoB

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.

search_project_itemsB

Search for project items by name, media file extension, offline status, or color label. Returns matching items with full details.

get_timeline_gapsA

Find all gaps (empty spaces) on the timeline between clips. Useful for identifying where content is missing or where clips can be tightened.

get_timeline_summaryA

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.

get_offline_mediaA

Find all offline/missing media in the project with their expected file paths. Essential for diagnosing broken links.

get_used_media_reportA

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.

inspect_edit_readinessA

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.

inspect_sequence_review_reportA

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.

select_clips_by_nameA

Select all clips in the active sequence that match a name (substring match). Optionally filter by track type and index.

select_all_clipsB

Select all clips in the active sequence, or all clips on a specific track.

deselect_all_clipsA

Deselect all clips in the active sequence.

select_clips_in_rangeB

Select all clips that overlap a time range in the active sequence.

select_clips_by_colorB

Select all clips whose source project item has a specific color label.

invert_selectionA

Invert the current clip selection in the active sequence (selected become deselected and vice versa).

select_disabled_clipsB

Select all disabled clips in the active sequence.

copy_effects_between_clipsA

Copy all effects (or a specific effect) from one clip to another. Does not copy intrinsic properties like Motion/Opacity unless specified.

paste_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.

copy_effect_valuesA

Copy verified scalar effect-property values from one effect to the matching effect on another clip. Both clips must already have the same effect applied. Legacy CEP deliberately refuses Blend Mode because Premiere can corrupt its enum value on cross-clip writes.

replace_clip_mediaB

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.

batch_apply_effectA

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.

remove_effect_by_nameA

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.

set_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).

open_in_sourceA

Open a project item in the Source Monitor for preview and trimming, and confirm it is the clip now showing.

close_source_monitorA

Close the clip currently showing in the Source Monitor. Premiere then shows the previously opened clip, if any; the result names it.

close_all_source_clipsA

Close all clips in the Source Monitor.

set_source_in_outA

Set in and/or out points on the clip currently open in the Source Monitor.

insert_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).

overwrite_from_sourceB

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.

get_source_monitor_infoB

Get information about the clip currently loaded in the Source Monitor.

set_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.

get_target_tracksA

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.

set_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.

rename_trackB

Rename a video or audio track.

get_track_infoB

Get detailed information about a specific track: name, clip count, muted, locked, targeted, and list of all clips.

razor_all_tracksA

Razor (split) all clips at the playhead position across all tracks, or at a specific time.

set_clip_start_timeB

Set the start time (timecode offset) of a project item. This shifts where timecode begins for the source media.

clear_item_in_outA

Clear in and/or out points on a project item (reset to full duration).

set_item_in_outA

Set in and/or out points on a project item in the project panel (marks source range for editing).

import_image_sequenceB

Import a numbered image sequence as a single video clip.

set_clip_positionB

Set the Position property on a video clip's Motion effect using English or measured Spanish built-in names, then read it back. Values are in pixels.

set_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.

set_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.

set_clip_anchor_pointB

Set the Anchor Point property on a video clip's Motion effect.

set_clip_opacityA

Set the opacity of a video clip (0-100) using English or measured Spanish built-in names, then read it back.

set_clip_volumeA

Set an audio clip's Volume > Level in dB. Does not read or change Essential Sound Amplify automation.

get_clip_volumeA

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.

set_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.

set_clip_panB

Set and read back the pan (left/right balance) on an audio clip, including Channel Volume layouts.

batch_rename_clipsB

Rename multiple clips on the timeline using a pattern. Supports sequential numbering.

batch_enable_disableB

Enable or disable multiple clips at once (selected, track, or all).

remove_selected_clipsB

Remove all currently selected clips from the timeline.

clear_sequence_in_outC

Clear the in and/or out points on the active sequence.

get_encoder_presetsA

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).

get_qe_clip_infoA

Get QE DOM information about a clip, including properties not available through the standard API.

redoA

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.

multiple_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.

set_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).

get_version_infoA

Get Premiere Pro version and build information.

move_items_to_binC

Move multiple project items to a target bin at once.

set_anti_alias_qualityA

Set the anti-alias quality on a clip's Motion effect (useful for scaled/rotated clips).

set_uniform_scaleA

Toggle uniform scale on a clip's Motion effect. When enabled, Scale Width and Scale Height are linked.

set_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.

delete_project_itemA

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.

delete_multiple_project_itemsA

Delete several project items (bins, sequences, clips or files) and read back that each is gone. Every item is checked before any is deleted. 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.

rename_project_itemC

Rename a project item in the project panel.

add_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.

freeze_frameB

Create a freeze frame from a clip at a specific time. Exports the frame and imports it back as a still image.

set_sequence_frame_rateC

Change the frame rate of the active sequence.

set_sequence_resolutionC

Change the resolution (frame size) of the active sequence.

set_sequence_audio_settingsB

Change audio settings of the active sequence (sample rate, channel type).

set_sequence_pixel_aspect_ratioA

Change the pixel aspect ratio of the active sequence, or return a capability error when the legacy host does not expose a writable setting.

set_sequence_field_typeC

Set the field order of the active sequence.

get_all_project_pathsA

Get all unique media file paths used in the project. Useful for asset management and archiving.

get_unused_mediaA

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.

get_duplicate_mediaA

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.

lift_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. Requires sequence in/out marks that do not span the whole sequence. Untargeted tracks are not verified; any that changed are listed in otherTracksChanged.

extract_selectionA

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. 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.

get_clip_linksB

Get information about linked clips (audio/video linked together) for a given clip.

get_sequence_markers_by_typeB

Get all markers of a specific type (comment, chapter, web link, etc.) from a sequence.

get_clip_markersA

Get all markers on a specific project item (source clip markers, not sequence markers).

add_marker_to_project_itemA

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.

set_sequence_display_formatB

Set the timecode display format for the active sequence.

get_clip_at_playheadB

Get all clips at the current playhead position across all tracks.

get_next_edit_pointA

Find the next or previous edit point (clip boundary) from the playhead position.

move_playhead_to_editC

Move the playhead to the next or previous edit point.

set_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.

get_project_scratch_disksA

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.

nest_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.

get_sequence_countA

Get the total number of sequences in the project.

get_total_clip_countA

Get the total number of clips across all tracks in the active sequence.

match_frameC

Get source media info for the frame at the current playhead on a specific track. Useful for match frame operations.

get_workspacesA

List all available workspace layouts in Premiere Pro

set_workspaceA

Switch to a specific workspace layout (e.g., 'Editing', 'Color', 'Audio', 'Effects', 'Graphics')

create_caption_trackA

Import an already reviewed caption artifact into the active sequence, or create a local lecture-caption timing and review workflow plan. Import reports structural success only when the host exposes a caption-track readback; the planning action never contacts Premiere or changes an artifact.

play_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.

stop_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.

play_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.

get_source_monitor_positionA

Get the current time indicator position in the Source Monitor

consolidate_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.

preview_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.

apply_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.

preview_motion_graphics_demoA

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.

preview_product_spotA

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.

preview_brand_spotA

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.

apply_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.

get_av_feature_supportB

Report the documented automation boundary for advanced audio and modern color management, including actionable reasons for UI-only features.

inspect_sequence_av_settingsA

Inspect documented audio, tone-mapping, linear-compositing, bit-depth, render-quality, and display settings for the active sequence.

inspect_project_item_av_metadataB

Inspect a project item's documented effective/original color space, LUT IDs, available color-space overrides, and audio channel shape.

set_project_item_audio_channel_mappingB

Map one output audio channel of a project item to a source channel using Premiere's documented AudioChannelMapping API.

create_project_backupA

Create a collision-safe, byte-verified backup beside an existing .prproj file without opening or modifying the source project.

inspect_project_recoveryA

Read-only recovery inspection: diagnose the active project path and list adjacent Premiere Auto-Save project candidates without opening, copying, or restoring anything.

get_bridge_telemetryA

Inspect privacy-preserving aggregate bridge health: pending command/response counts, busy operations, queue age, and CEP heartbeat state without returning project or personal data.

preview_project_intakeA

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.

analyze_dialogue_edit_candidatesA

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.

search_workflow_recipesA

Search audited built-in and explicitly supplied workspace-local workflow recipes. Recipes are declarative previews and cannot execute arbitrary tools or scripts.

preview_workflow_recipeA

Validate and expand one declarative workflow recipe into guarded MCP routes. It does not invoke any route or change Premiere.

diff_sequence_snapshotsA

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.

audit_timeline_healthA

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.

plan_cross_app_workflowA

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.

plan_speaker_checkerboardA

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.

plan_active_speaker_reframeA

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.

compute_mask_fit_motionA

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').

plan_emphasis_zoom_keyframesA

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.

plan_beat_montageA

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.

rank_short_form_candidatesA

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.

plan_chapter_markersA

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.

build_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.

check_caption_safe_zoneA

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.

get_caption_style_guidanceA

Returns caption style presets (clean, bold_pop, karaoke, podcast, lecture) with font, position, and styling recommendations, plus Premiere UI steps for applying styles. Read-only guidance; NEVER modifies caption tracks. Use build_caption_artifact for SRT/VTT timing, then import via create_caption_track and apply styles manually in Premiere's UI.

plan_reaction_captionsA

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.

plan_short_subscribe_ctaA

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.

plan_short_export_folderA

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.

plan_filler_word_removalA

Plan word-level filler removal (um, uh, you know...) from a revision-bound word timeline. Returns frame-snapped removal and keep ranges plus apply routes. Local-only; never changes Premiere.

plan_pause_tighteningA

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.

plan_word_mute_rangesA

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.

detect_repeated_takesA

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.

plan_platform_delivery_matrixA

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.

validate_platform_publish_packageA

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.

add_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.

select_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.

navigate_playheadA

Move the active-sequence playhead to the start, end, in/out point, work-area bound, next/previous edit or marker, or step a number of frames, then read back the resulting position. Navigation only; it never changes clips.

create_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.

list_sequence_checkpointsA

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.

export_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.

plan_client_notes_checklistA

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.

plan_multicam_angle_switchesA

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.

manage_project_contextA

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.

search_project_contextA

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.

create_context_edit_planA

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.

create_editorial_context_packA

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.

inspect_film_editorial_workflowA

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.

create_editorial_planA

Create a local, evidence-backed editorial workflow plan from captured project context. It never calls an LLM, uploads media, or changes Premiere.

preview_editorial_planA

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.

import_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.

add_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.

crop_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.

setup_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.

validate_project_for_exportA

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.

read_sequence_captionsA

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.

set_clip_properties_batchA

Apply Motion/Opacity values to up to 16 clips after preflighting every target property. The handler reads each requested value back and never reports a partial batch as verified.

detect_scene_editsB

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.

manage_media_watchA

Start, inspect, rescan, or stop one session-scoped local media-folder monitor. It records bounded file-change signals and never imports media automatically.

preview_watched_media_importA

Compare the active watch baseline with a fresh contained scan and return a path-redacted import proposal. It never imports or changes Premiere.

get_advanced_feature_supportB

Report public-API support, prerequisites, entitlements, and user-assisted boundaries for Premiere collaboration and AI features

get_capabilitiesA

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.

pingA

Health check — verify the CEP plugin is running and connected to Premiere Pro. Call this before other tools to confirm connectivity.

verify_premiere_connectionA

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.

Prompts

Interactive templates invoked by user choice

NameDescription
premiere-film-editorialCapture source and timeline context, supply an explicit film manifest, inspect coverage and review layouts, resolve revision-bound notes and turnover exceptions, then use separately guarded host tools for approved edits and exports.
premiere-rough-cutInspect the project, import media, create or select a sequence, assemble clips, then verify and save.
premiere-project-intakeInspect a bounded project against an explicit facility template and return a path-redacted intake report and non-mutating organization proposal.
premiere-dialogue-cleanupInspect audio tracks, normalize dialogue, apply conservative cleanup, and verify levels before saving.
premiere-caption-and-styleInspect the active sequence, create captions, apply styling, verify timing, and save.
premiere-deliveryValidate the sequence and destination, export with an explicit preset, then report the produced artifact.
premiere-contextual-rough-cutCapture reusable project context, retrieve only evidence relevant to the edit intent, create a revision-guarded plan, then preview before applying.
premiere-transcript-first-contextCapture explicit local transcript and media evidence, compact only the passages relevant to the intent, then review stable evidence IDs and revisions before proposing an edit.
premiere-transcript-rough-cutExport Premiere's native transcript, select revision-locked source ranges, map them to verified 1x placements in a duplicate sequence, then execute the descending cut plan with re-query verification.
premiere-metadata-reviewInspect visible Project-panel columns first, then named project/XMP fields. Request full XML only when needed. Writes use field_name/value or complete XML, or a locked UXP field/packet transaction with readback; schema creation does not set per-item values.
premiere-project-organizationCapture project context, supply explicit editorial categories, create and preview a review-only organization plan, then use its guarded apply route with stable-ID bin operations. Direct organize_project_items_uxp use is advanced/manual only.
premiere-ai-assisted-stringoutRetrieve relevant local evidence, produce a review-only stringout plan, resolve selected project items, then create and verify a new sequence.
premiere-caption-artifact-reviewUse existing transcript evidence to review a supplied caption artifact, import it deliberately, create a caption track, and verify playback before delivery.
premiere-reaction-shortsPlan stacked speaker-colored captions without guessing unknown speakers, place a mid-video subscribe overlay, export into a series-named folder, then verify review frames before delivery.
premiere-platform-cutdownCapture source-sequence context, propose bounded platform dimensions, review derivative sequence routes, then create and verify each cutdown deliberately.
premiere-dialogue-first-cutAnalyze supplied transcript evidence locally, review deterministic candidates, lock source revisions, then create and structurally verify a new ordinary sequence.
premiere-podcast-first-cutReview speaker and synchronization assignments, bind every camera segment to a transcript revision and master-audio range, then create a new ordinary sequence without changing sources.
premiere-watched-media-intakeStart a session-scoped local watcher, inspect its path-redacted candidate set, then deliberately import only approved files.
premiere-recipe-driven-editSelect a built-in or workspace-local declarative recipe, review its allowlisted tool manifest, then execute each step through the normal guarded tools.

Resources

Contextual data attached and managed by the client

NameDescription
premiere-instructionsInstructions and best practices for using Premiere Pro via MCP tools
premiere-live-project-infoBounded, read-only current-project summary with no native paths.
premiere-live-project-sequencesBounded, read-only sequence inventory with stable Premiere IDs.
premiere-live-project-mediaBounded, path-redacted media inventory for planning and inspection.
premiere-live-project-binsBounded, path-redacted bin inventory for project organization planning.
premiere-live-active-timelineBounded, read-only active-timeline tracks, clips, and markers snapshot.
premiere-available-effectsBounded, read-only effect catalog for planning; no file paths or mutations.
premiere-applied-effectsBounded, read-only component inventory for the active timeline; no file paths.
premiere-available-transitionsBounded, read-only transition catalog for planning; no file paths or mutations.
premiere-export-presetsBounded, read-only export-preset names and formats with native paths withheld.
premiere-project-metadataRead-only path-redacted project and active-timeline summary. Not Premiere project-metadata XML or XMP; use get_metadata parse_fields, manage_metadata_uxp inspect_fields, or inspect_project_panel_metadata_uxp for named clip fields.
premiere-workflowsHigh-level, safety-oriented Premiere Pro workflow catalog
premiere-project-contextRevisioned local project-context indexing and retrieval workflow
extendscript-referenceComplete Premiere Pro ExtendScript API reference for writing custom scripts via execute_extendscript

TDQS

C2.8/5.0

Scored across 384 tools

Disambiguation2/5

The set has hundreds of tools with heavily overlapping purposes: many list/get/inspect/read variants for the same project, sequence, clip, track, and marker data, plus multiple edit, effect, export, and analysis tools whose boundaries are difficult to distinguish. Descriptions often clarify differences, but the sheer number of near-duplicates and plan/preview/apply variants makes misselection likely.

Naming Consistency3/5

Most names use snake_case and a verb_noun pattern, which is readable and broadly consistent. However, the set mixes many suffixes and prefixes such as _uxp, _qe, _cep, _batch, preview_, plan_, inspect_, and apply_, and uses inconsistent singular/plural forms like add_track vs add_tracks.

Tool Count1/5

384 tools is an extreme mismatch for any coherent MCP surface, far beyond the typical 3-15 range. The list includes many experimental, unavailable, preview-only, plan-only, and diagnostic tools that inflate the count without earning a distinct place.

Completeness2/5

The surface attempts broad Premiere Pro coverage, but many core or expected operations are explicitly unavailable, experimental, or plan-only, including speed changes, LUT application, AAF export, nesting, EDL import, and reliable caption creation. These dead ends and workaround-only routes create significant gaps that can cause agent failures.

Maintenance

ActivityActive
ResponsivenessResponsive