premiere-pro-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PREMIERE_MCP_EXE | No | Premiere executable | the 2025 path |
| PREMIERE_MCP_LOG_DIR | No | Server audit log location | %APPDATA%\premiere-mcp\logs |
| PREMIERE_MCP_OUTPUT_DIR | No | Default output folder for rendered files | ~/Videos/premiere-mcp |
| PREMIERE_MCP_BRIDGE_HOST | No | Bridge host (keep localhost) | 127.0.0.1 |
| PREMIERE_MCP_BRIDGE_PORT | No | Port of the in-Premiere bridge panel | 3030 |
| PREMIERE_MCP_REMOTION_DIR | No | Remotion intro renderer project (must be in a path without !) | ./remotion-intro |
| PREMIERE_MCP_ALLOWED_ROOTS | No | Write/delete allowlist (;-separated) | Documents;Videos;Desktop;Downloads |
| PREMIERE_MCP_VERSION_FAMILY | No | Prefs/registry version folder | 25.0 |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| premiere_bridge_panel_statusA | Check whether the in-Premiere bridge panel is installed and whether unsigned CEP extensions are enabled. Read-only. |
| premiere_install_bridge_panelA | Install the CEP bridge panel into Premiere for the current user (no admin): enables unsigned CEP extensions (PlayerDebugMode) and copies the bundled panel to the Adobe CEP extensions folder. After this, RESTART Premiere and open Window > Extensions > Premiere MCP Bridge. |
| premiere_statusA | Report whether Adobe Premiere Pro is running, whether the in-app MCP bridge panel is reachable, and the app/host version. Always safe to call first. |
| premiere_launchA | Start Adobe Premiere Pro. Optionally open a project by absolute .prproj path. Optionally wait until the bridge panel becomes reachable (the panel must be set to auto-open, or opened once manually). |
| premiere_quitA | Gracefully close Premiere by sending its window the close signal. Premiere will show its OWN save prompt if there are unsaved changes (this is intentional and safe). Requires confirm:true. Use force:true only to hard-kill (data loss). |
| premiere_restartA | Gracefully close Premiere, wait, then start it again (optionally reopening a project). Requires confirm:true. Premiere may show a save prompt during close. |
| premiere_get_app_infoA | Return Premiere's version/build, how many projects are open, whether a project and an active sequence exist, and the preference paths. Read-only. |
| premiere_get_project_infoA | Return metadata about the currently open project: name, file path, document ID, sequence count, root bin item count and the active sequence. Read-only. |
| premiere_get_preferencesA | Return Premiere's live preference/scratch paths from the running app via the bridge. For raw on-disk preference files use premiere_get_preference_files. |
| premiere_open_projectA | Open an existing .prproj project in Premiere. Dialogs are suppressed. The file must exist. |
| premiere_new_projectA | Create a new empty .prproj project at the given absolute path. If the file already exists it is gated behind confirm:true and backed up first. The path must be inside an allowed working root. |
| premiere_save_projectA | Save the currently open project to its existing file (in place). |
| premiere_save_project_asA | Save the open project to a new path. If the target exists it is gated behind confirm:true and backed up first. Path must be inside an allowed working root. |
| premiere_close_projectA | Close the current project. By default it saves first (save:true). Set save:false to discard - that DISCARDS unsaved changes and therefore requires confirm:true. |
| premiere_import_filesA | Import one or more media files (video/audio/image) into the open project, optionally into a named bin. All paths must exist. Warning dialogs are suppressed by default. |
| premiere_create_binA | Create a new bin (folder) in the project, optionally inside an existing parent bin. |
| premiere_list_project_itemsA | List the project's bins and clips (the Project panel tree), flattened with paths. Supports limit/offset paging and optional media paths. Read-only. |
| premiere_find_project_itemA | Find project items whose name contains the query (case-insensitive). Returns matches with their nodeId, type and tree path. Read-only. |
| premiere_remove_project_itemA | Delete a BIN from the project by nodeId. Irreversible -> requires confirm:true. (Individual clips cannot be deleted via the stable DOM; do that in the Premiere UI.) Get nodeIds from premiere_list_project_items. |
| premiere_list_sequence_presetsA | List available .sqpreset sequence presets on disk (HD 1080p, UHD, Broadcast, etc.), optionally filtered. Pass a 'path' to premiere_create_sequence for an exact, non-interactive setup. Read-only. |
| premiere_list_sequencesA | List all sequences in the open project with their IDs, track counts and frame size, and which one is active. Read-only. |
| premiere_get_active_sequenceA | Return details of the currently active sequence, or null if none is active. Read-only. |
| premiere_create_sequenceA | Create a new sequence. NOTE: In Premiere Pro 2025, scripting a sequence creation opens Premiere's modal 'New Sequence' dialog (a Premiere limitation) - if a presetPath is given it is offered there; a human confirms it on screen. If nobody confirms, this returns a 'modal dialog' message. Defaults to an HD 1080p 25fps preset. Use premiere_list_sequence_presets to pick another. |
| premiere_set_active_sequenceA | Open/activate a sequence by its sequenceID (from premiere_list_sequences). |
| premiere_get_sequence_tracksA | Return the video and audio tracks of a sequence (active one if no id given), with per-clip names and in/out/start/end times. Read-only. Set includeClips:false for a lighter summary. |
| premiere_add_markerB | Add a timeline marker to a sequence at a given time (seconds). Optional name, comment and type (comment|chapter|weblink|segmentation). |
| premiere_list_markersA | List all markers of a sequence (active one if no id given). Read-only. |
| premiere_new_sequenceA | Create a new sequence WITHOUT any dialog, using a .sqpreset (app.project.newSequence). This is the reliable, fully-automatic way to make a sequence. Defaults to HD 1080p 25fps; pass presetPath (from premiere_list_sequence_presets) for other formats (e.g. 9:16 vertical, 4K). |
| premiere_place_clipA | Place a media clip on a video track at a given time (seconds). Imports the file if needed. Optionally trim with inSeconds/outSeconds. mode 'overwrite' (default) stamps over; 'insert' ripples later clips right. The clip's own audio is routed automatically. |
| premiere_add_titleA | Add an animated title to the timeline by importing a Motion Graphics Template (.mogrt) and setting its text. Defaults to Premiere's built-in 'Basic Title'. Place on a video track above your footage. Optional durationSeconds. |
| premiere_add_audioA | Place an audio file (music, SFX, voiceover) on an audio track at a given time. Imports if needed. Optionally trim with inSeconds/outSeconds. |
| premiere_add_transitionA | Add a video transition (e.g. 'Cross Dissolve', 'Dip to Black', 'Film Dissolve') to a clip's cut, via the QE DOM. Experimental/unsupported but works on PPro 25. clipIndex is 0-based on the track. |
| premiere_add_effectB | Apply a video effect by name (e.g. 'Directional Blur', 'Warp Stabilizer', 'Gaussian Blur') to a clip, via the QE DOM. Experimental. clipIndex is 0-based on the track. |
| premiere_keyframeA | Animate a clip with keyframes for organic, cinematic motion: property scale|opacity|rotation|position. Each key has at (seconds from the clip start), value (number; for position an [x,y] array), and interp (linear|hold|bezier|ease - bezier/ease give smooth ease-in/out). e.g. a push-in: scale 100->112 over 0..duration with ease. VERIFIED scriptable. (Speed ramps / time-remap are NOT reliably scriptable - bake those into the Remotion render.) |
| premiere_add_overlayA | Place a media clip as an OVERLAY on a higher video track (default V2) with a blend mode (screen|add|overlay|multiply|soft light|...) and opacity - the cinematic way to add light leaks, dust, grain or letterbox elements. Combine with premiere_keyframe to fade the overlay in/out. |
| premiere_apply_lumetriA | Add a Lumetri Color effect to a clip (via QE) and report its parameters. NOTE: setting LUT/.cube and color params via script is version-fragile in Premiere; for a reliable cinematic grade (teal & orange etc.) bake it into the Remotion render instead. Use this to attach Lumetri so you can grade by hand, or pair with premiere_run_extendscript to set specific params. |
| premiere_list_export_presetsA | List available .epr export presets found on disk (H.264/HEVC/ProRes/AAC etc.), optionally filtered by a name query. Pass one of these 'path' values to premiere_export_sequence. Read-only. |
| premiere_export_sequenceA | Render/export a sequence to a media file using Premiere's built-in direct exporter (no Adobe Media Encoder needed). This BLOCKS until the render finishes. Provide an output path (in an allowed root) and a preset path from premiere_list_export_presets. Overwriting an existing output requires confirm:true. |
| premiere_build_videoA | Assemble a whole timeline in one shot from a JSON edit-spec: create a sequence, place video clips, add titles (MOGRT), add audio, apply transitions/effects - then optionally render it out. This is the main fully-automatic assembly tool. All asset paths must exist. Returns a per-step report with warnings for any step that failed (the rest still apply). |
| premiere_create_introA | Fully automatic cinematic logo/title intro. Creates a sequence, places an animated logo (defaults to the user's M.P logo), overlays a title (and optional subtitle) via MOGRT, adds music, and optionally renders it to a file. Best results come from a PRE-RENDERED animated logo with alpha/own background (Remotion/After Effects output) - Premiere composites + exports. Returns the build report. |
| premiere_create_brand_introA | THE flagship: produce a cinematic, broadcast-style brand intro fully automatically. Renders a neon Remotion visual (your M.P brand language) with your title/subtitle, synthesizes a timed sound-design bed (whoosh/impact/riser/sub/ambience), composites it in Premiere, and exports 16:9 and/or 9:16. Requires the Remotion project (a path WITHOUT '!') and the bridge panel. Overwriting outputs needs confirm:true. |
| premiere_detect_beatsA | Analyze an audio file (any format, via ffmpeg) and return the beat/onset times in seconds, their strength, and an estimated BPM. Use the returned times to cut clips, place keyframes or markers on the beat / bass drops. Read-only (no Premiere needed). |
| premiere_add_beat_markersA | Detect beats in an audio file and drop a timeline marker on each beat of the active (or given) sequence - so you can cut/edit precisely on the music. Returns how many markers were placed. |
| premiere_beat_cut_videoA | Automatically cut a set of footage clips to the beat of a music track. Detects beats, builds shots that switch exactly on the beat (every |
| premiere_list_recent_projectsA | List recently used / nearby Premiere projects from the registry (RecoveryOpenProjectInfos) and by scanning the default project folders. Works without Premiere running. Read-only. |
| premiere_get_logsA | Read Premiere's log/diagnostic files (Plugin Loading.log, Debug/Trace databases, logs folder). Returns the tail of each, or the full content of one file if 'file' is given. Read-only. |
| premiere_get_preference_filesA | List Premiere's on-disk preference/profile folders (APPDATA + Documents) and their files. Read-only. |
| premiere_inspect_project_fileA | Inspect a .prproj WITHOUT opening Premiere: decompress the gzipped XML and report file size, decompressed size, project metadata and approximate counts of sequences/media/clips. Read-only. |
| premiere_backup_projectA | Make a timestamped backup copy of a .prproj file (copied next to the original as .bak-). Safe, non-destructive. |
| premiere_list_autosavesA | List Premiere's automatic backup projects (the 'Adobe Premiere Pro Auto-Save' folders). Useful for recovery. Read-only. |
| premiere_screenshotA | Capture a PNG screenshot of Premiere's main window (or the full screen) so you can SEE the current UI state - useful when a tool reports an unexpected result or a dialog may be open. Returns the image inline plus the saved file path. |
| premiere_focus_windowA | Bring Premiere's main window to the foreground. |
| premiere_ui_describeA | List Premiere's top-level window titles and whether Premiere is the foreground app. A lightweight way to detect dialogs. Read-only. |
| premiere_send_shortcutA | ADVANCED FALLBACK: focus Premiere and send keystrokes (Windows SendKeys syntax, e.g. '^s' for Ctrl+S, '%{F4}' for Alt+F4). Use only when no dedicated tool exists. Premiere must be running. |
| premiere_get_capabilitiesA | Ask the in-app host which functions it exposes and report app version, project/sequence state. Good for verifying the bridge end-to-end. Read-only. |
| premiere_run_extendscriptA | ESCAPE HATCH: run an arbitrary ExtendScript (ES3) snippet inside Premiere and return its value as JSON. EXTREMELY powerful and can do destructive things, so it requires confirm:true to execute. Use dryRun:true (default) to preview the code first. Prefer the dedicated tools when one exists. |
| premiere_run_menu_commandA | EXPERIMENTAL: execute a Premiere menu command by numeric ID via the unsupported QE DOM. Can be unstable/crash-prone -> requires confirm:true. Many actions have dedicated tools; prefer those. |
| premiere_generate_reportA | Produce a single consolidated, read-only report of the current state: app info, project metadata, all sequences, the active sequence's tracks, and a sample of project items. Great as a first overview. |
| premiere_bridge_selftestA | Run a sequence of safe, read-only checks against the live bridge and report pass/fail per step. Use to verify the whole chain (MCP -> panel -> ExtendScript) is healthy. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/MauricePutinas/premiere-pro-mcp-claude-code'
If you have feedback or need assistance with the MCP directory API, please join our Discord server