Premiere-MCP-IMT
An MCP server for inspecting and editing a running Adobe Premiere Pro project through a compact nine-tool interface over ~440 Premiere operations.
Verify the MCP-to-Premiere connector, open project, and active sequence; check or install the CEP connector with user consent.
Read the active sequence structure: video/audio tracks, clips, node IDs, start/end/in/out times, enabled state, and speed.
Discover available operations by category and run single or batched Premiere operations through
pr_catalog,pr_do, andpr_batch.Perform timeline and project edits such as cutting, trimming, moving, ripple edits, effects, transitions, keyframes, markers, captions, tracks, audio, metadata, sequences, exports, and more.
Save the project, export sequence frames as PNG for visual verification, and use readback verification for writes where Premiere supports it.
Undo supported edits, use checkpoints and sequence snapshot diffs for non-undoable writes, and avoid double-applying uncertain edits.
Load bundled skill references for Premiere AI tools and workflows: generative features, masking, transcripts/captions, audio cleanup, auto reframe, scene detection, Morph Cut, search, AI Assistant, recipes, and gotchas.
Operate in read-only mode when configured, optionally enable raw ExtendScript, and run without telemetry.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Premiere-MCP-IMTfind every clip shorter than 12 frames and every gap in the active sequence"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.

Premiere-MCP-IMT + SKILLS — Premiere Pro for AI agents
Let an AI assistant (Claude Desktop, Cursor, ChatGPT, Google Antigravity or any MCP client) work inside your running Adobe Premiere Pro: read the project and its sequences, cut, trim, move and ripple clips, apply effects, transitions and keyframes, add markers and captions, reframe, check frames and export — from plain language.
Every Adobe UI language · a large skills library · built for generative features. Premiere-MCP-IMT works with every UI language Adobe ships, comes with a large skills library and is built for Adobe's generative features — Generative Extend, Generative Media, Object Mask, Enhance Speech, transcripts and captions, Auto Reframe, Search, the AI Assistant.
Two parts, made to work together:
The MCP server — about 440 Premiere operations behind nine tools; writes are verified by reading Premiere back; works on every Premiere UI language (verified live); no telemetry.
The skill (
skills/pr, also served by thepr_skilltool, so it works in any client) — how to drive Premiere safely, where scripting ends, and how to use Premiere's own AI tools: Generative Extend, the Generative Media Tool (video, sound effects, music), Object Mask, Speech to Text and Paper Edit, captions, Enhance Speech and stem separation, Search, the AI Assistant, Auto Reframe, Scene Edit Detection, Morph Cut — plus recipes that combine them and the gotchas.
Built for localized Premiere, not just English. Most Premiere MCP servers and agent skills assume the English UI — on a German, Chinese or Russian install their effect, transition and parameter names stop matching. Premiere-MCP-IMT finds components by matchName and translates English effect, transition and parameter names through Premiere's own UI dictionaries, so the same agent and the same skill work on all ten UI languages Premiere ships — verified live.
By Immersive Media Technologies.
macOS and Windows · Premiere Pro 2024–2026 — verified live on macOS (26.5) and on Windows 11 ARM (26.5.2, Claude Desktop from the Microsoft Store) · Node.js 20.19+ (none needed with the Claude Desktop extension).
This edits real Premiere projects, and scripted undo covers only some edits — work on a copy. Project content (names, transcripts, markers, frames) goes to the AI service you use. Premiere's generative tools spend your Adobe credits; the agent asks before starting one. Raw ExtendScript is off unless you turn it on.
What you can ask for
"List every clip shorter than 12 frames and every gap in the active sequence."
"Tighten the pauses in this interview to a third of a second and put a Morph Cut on the jump cuts where the camera is locked off." (skill)
"Make 9:16 and 1:1 versions of this edit and check the titles stay out of the TikTok UI zones."
"Blur the face of the man on the left for the whole shot." (skill: you click the subject with Object Mask, the agent does the rest)
"The music in this interview was recorded on location — get rid of it and score it again under the dialogue." (skill)
"Mark every beat of this track and lay the selects to it, two beats per shot."
The agent combines the operations itself and checks the sequence between steps; the skill tells it which Premiere AI tool fits the job, what it costs and where it breaks.
Related MCP server: cut.skill
Install
You need Premiere Pro running on this computer and the connector — a small CEP extension
inside Premiere that the server talks to. The agent installs it for you on first use
(pr_install_connector, it asks first; then quit and reopen Premiere), or the installer below does.
Client | How |
| download |
| Add to Cursor — one click: Cursor opens and writes the config (or put the snippet below into |
| Settings → Customizations → Installed MCP Servers → View raw config → add the snippet below. |
| on the Premiere machine: |
Any MCP client | the snippet below in its |
{
"mcpServers": {
"premiere": {
"command": "npx",
"args": ["-y", "@immersive-media-technologies/premiere-mcp-imt"]
}
}
}From source, with a live self-test (the route we use):
git clone https://github.com/Immersive-Media-Technologies/premiere-mcp-imt.git
cd premiere-mcp-imt && ./install.sh # Windows: .\install.ps1The installer checks Premiere, Node and FFmpeg, builds, installs the connector (asks first), asks the running Premiere whether the connector answers, and — after asking — writes the entry into Claude Desktop's, Cursor's and Antigravity's configs, backing them up.
If something does not connect
pr_verifysays the connector does not answer: quit Premiere completely after the connector was installed and open it again; close any open Premiere dialog (a modal dialog blocks scripting).premiere-mcp-imt --diagnose-cepchecks the files, the debug flags and Premiere's signature log.The connector is unsigned: CEP must allow unsigned extensions (
PlayerDebugMode=1for CSXS 9–14; on Windows a String (REG_SZ) value underHKCU\Software\Adobe\CSXS.<n>). The installers set it.spawn npx ENOENTon macOS: GUI apps do not see your shellPATH— put the absolute path of a Node from Homebrew or nodejs.org in place ofnpx(nvm's Node is invisible to them).Loudness, silence (
detect_silence), beat and scene-change analysis need FFmpeg (brew install ffmpeg,winget install Gyan.FFmpeg).Windows, Claude Desktop from the Microsoft Store: the Store app's registry writes are sandboxed. If Premiere does not load the connector after
pr_install_connector, runpowershell -ExecutionPolicy Bypass -File scripts\install-cep.ps1once from a normal PowerShell in a source checkout (or useinstall.ps1).premiere-mcp-imt --doctorchecks the local install without reading a project.
How it stays safe
Verified writes | edits read Premiere back and report |
Undo where Premiere records it, checkpoints elsewhere | Edits that Premiere records in its history (effects added or removed, cuts, inserts) report |
Plan → preview → apply |
|
Read-only mode |
|
No raw scripting by default |
|
No telemetry | the server sends nothing anywhere. |
Tools
Tool | Purpose |
| connector, open project and active sequence — the first call |
| tracks and clips with their |
| discover the ~440 operations (44 categories) and run one or several |
| a frame of the sequence as PNG — the agent's eye |
| save |
| check / install the connector inside Premiere |
| the agent skill: the router and its references |
| raw ExtendScript — only when enabled |
PR_MCP_FACADE=0 lists every operation as its own tool instead (more than 600K tokens of
definitions — beyond most context windows; the nine tools cost about 1.5K).
Variable | Default | Meaning |
| off |
|
| off |
|
| on |
|
| — | explicit profile, e.g. |
| OS temp | the connector's file mailbox |
| — | enables the optional UXP bridge (with the UXP plugin in Premiere) and its |
The skill
skills/pr/SKILL.md is a short router the agent reads first (pr_skill with no arguments); it
points to the one reference the task needs (pr_skill {doc}):
| the tools, the order of work (state → checkpoint → operate → verify by values, then by frame), addressing (node ids, source vs sequence time, selection-driven operations, localized Premiere) and a table of what scripts cannot do in Premiere with the reference for each. |
| Generative Extend, the Generative Media Tool (video with first/last/reference frames, sound effects with a voice guide, soundscape, music), Firefly Boards → sequence, partner models, credits per second. |
| Object Mask, why a new mask "does nothing", Clip vs Frame keyframes, Sharpness / Expansion, where mask data lives and how it goes missing. |
| Speech to Text, text-based editing of pauses and fillers, Paper Edit, single-word captions, and the server's word-timeline planners (fillers, pauses, retakes, bleeps, captions). |
| Enhance Speech, stem separation (beta), ducking by UI and by keyframes, Remix, FFmpeg analysis. |
| Auto Reframe, Scene Edit Detection, Morph Cut (and why it exports as a dissolve), Color Match, Warp Stabilizer. |
| the Search panel (Media Intelligence, similar frames, sound search) and the AI Assistant beta next to an agent. |
| eleven recipes that combine tools: a generated shot between two clips, interview cleanup, a tracked face blur, storyboard to sequence, removing location music, social versions, silence and beat cutting. |
| availability by region and licence, credits, beta vs release, handoff to colour and sound, export, scripting limits that look like bugs. |
Clients with their own skill support can load the folder directly (e.g. copy skills/pr into
~/.claude/skills/).
Why this one
Several Premiere MCP servers exist; they differ in what the model sees, what it knows and what it sends home. As of 2026-10-26:
Premiere-MCP-IMT | premiere-pro-mcp (upstream) | ||||
Tools the model sees by default | 9, over ~440 operations | the whole catalog (~440 tools) | 74 (profile | 5, over 283 operations | none — the agent pipes ExtendScript |
Knowledge of Premiere's AI tools | skill with 8 references + recipes | 2 skills (editing, development) | 7 workflow skills | 1 skill | 1 skill (scripting) |
Non-English Premiere | every UI language (all ten), verified live | English and es-ES measured | not stated | not stated | not stated |
Telemetry | none | PostHog, off unless a key is set | none found | on by default (opt-out) | none mentioned |
Connector install | by the agent, with consent; installers with a live self-test | CLI flag | build from source (Go, Rust, Python) | CLI flag |
|
Clients | Claude Desktop (.mcpb), Cursor, Antigravity, ChatGPT gateway, any MCP client | npm, .mcpb, Codex / Claude Code plugins | build from source | npm, plugins, .mcpb | CLI + skill |
License | Apache-2.0 | MIT | MIT | MIT | MIT |
What we changed in the upstream code, besides the skill and the packaging: component and property
lookup by matchName and English names translated through Premiere's own UI dictionaries (on a
localized Premiere every opacity, motion, keyframe and volume operation of upstream failed), split_clip that cuts the clip you name (upstream cut track 0), no telemetry, stdio
only, and a compact tool surface.
Releases
Each version is described on the
Releases page; every
change is in CHANGELOG.md.
v1.1.1 · 2026-10-28 — Premiere's home screen:
pr_verifysays when no project is open, and an edit tried without a project no longer pauses the edits after it.v1.1.0 · 2026-10-28 — built on premiere-pro-mcp 1.26.0: every edit read back from Premiere, about 60 more operations, the UI-language layer carried into the new code; reinstall the connector with
pr_install_connector.v1.0.2 · 2026-10-28 — descriptions everywhere: every Adobe UI language, a large skills library, built for Adobe's generative features.
v1.0.1 · 2026-10-28 — product name Premiere-MCP-IMT (was PR-MCP-IMT); the MCP Registry entry also lists the npm package; the package is on npm from 1.0.0.
v1.0.0 · 2026-10-28 — every Premiere UI language (English names translated through Premiere's own dictionaries; verified live), honest results for unknown effects, colour correction and LUTs, Apache-2.0.
v0.1.0 · 2026-10-26 — first public release: the Premiere agent skill, nine-tool surface,
pr_skill, connector install by the agent, Claude Desktop extension, installers with a live self-test, ChatGPT gateway.
npm test runs offline — no Premiere needed.
License
Apache License 2.0 — © Immersive Media Technologies.
Free to use, modify and distribute, commercial use included.
Attribution is required. Every redistribution of this software or of a work derived from it must carry the notice from
NOTICE:Premiere-MCP-IMT by Immersive Media Technologies — https://github.com/Immersive-Media-Technologies.No warranty.
Third-party notices (upstream MIT code): THIRD-PARTY-NOTICES.md. Adobe, Premiere Pro and Firefly are trademarks of Adobe Inc.; this project is not affiliated with or endorsed by Adobe.
Available Tools
9 toolspr_batchB
Run several operations in order. Each op: {operation, args}. Stops at the first error when stopOnError (default true). Returns one result per op.
| Name | Required | Description | Default |
|---|---|---|---|
| ops | Yes | ||
| stopOnError | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description does carry real behavioral information: sequential ordering, fail-fast with stopOnError, and one result per op. It omits whether earlier successful ops are rolled back on failure, and whether partial results are returned when it stops, which are the key unknowns for a batch mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the core action, then the item shape, then the failure semantics. The '{operation, args}' sentence partially restates the schema but is justified given 0% schema description coverage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with no annotations and no output schema, the description covers ordering, failure behavior, and return cardinality ('one result per op'). It falls short only on atomicity and on identifying valid operation values, which are material gaps for a batch executor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, and it does explain the shape of each op ({operation, args}) and what stopOnError controls. However, the critical ambiguity is left open: 'operation' is a bare string with no enum, and the description never says where valid operation names come from (presumably pr_catalog/pr_do).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: runs several operations in order, i.e. a batch executor. It is clear what the tool does, but it never names or contrasts with the obvious sibling pr_do (single-operation execution), so the agent must infer the relationship.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to batch versus calling pr_do repeatedly, no prerequisites, and no exclusions. The error-stopping behavior hints at a use case but does not tell the agent when this tool is the right choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pr_catalogA
List Premiere Pro operations available through pr_do. Without category: categories with counts and operation names. With category: every operation of that category with its parameters. Call it before using an operation you have not used in this session. Clips are addressed by node_id from pr_get_sequence.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | advanced | after_effects | audio | av_settings | captions | clipboard | context | delivery | dialogue | discovery | edit_plans | effects | export | health | inspection | intake | interchange | keyframes | markers | media | media_analysis | metadata | mogrt | playback | playhead | project | project_manager | recovery | review | scripting | selection | sequence | shorts | source_monitor | text | timeline | timeline_qa | track_targeting | tracks | transcript | transitions | utility | uxp | workflows | workspace |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden and does well: it discloses the two distinct response shapes (categories with counts vs. full operation parameters) and the node_id addressing convention. It doesn't state read-only/safety explicitly, but 'List' plus the response description makes it unambiguous.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four short sentences, each carrying distinct information, with the core purpose and the mode-dependent output front-loaded. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-optional-parameter discovery tool with no output schema or annotations, the description covers purpose, usage timing, both return shapes, and the node_id convention for follow-up calls. Only minor gaps (e.g., output format) remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the enum of categories is fully documented in the schema itself, so the baseline is 3. The description adds real value by explaining what happens with and without the category argument, which is semantics the schema cannot express.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource ('List Premiere Pro operations available through pr_do') and clarifies the relationship to the sibling pr_do. It further distinguishes the two listing modes, so an agent can tell exactly what the call returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly instructs the agent to call it before using an operation not yet used in the session, and names pr_do as the executor, giving clear when-to-use context. It stops short of stating when not to call it, but the guidance is actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pr_doA
Run one Premiere Pro operation by name (see pr_catalog), e.g. {"operation":"add_marker","args":{"time_seconds":1.5,"name":"Intro"}}. Returns the operation result JSON. Writes are verified by readback where Premiere allows it. A result with undoSteps / undoStackIndex can be reverted with the undo operation {expected_undo_stack_index}; property and marker writes record no undo step — checkpoint the sequence before them. Prefer this over writing ExtendScript.
| Name | Required | Description | Default |
|---|---|---|---|
| args | No | operation parameters | |
| operation | Yes | operation name from pr_catalog |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full load and does most of it: it discloses that returns are operation-result JSON, that writes are verified by readback where Premiere allows, and that property/marker writes leave no undo step — a non-obvious mutation hazard. It does not cover error/failure shapes or any permission requirements per operation, so it falls just short of complete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core verb and a usage example, then layers exception handling (undo versus no-undo writes) in two tight sentences with no filler. The embedding of JSON literals inline makes it slightly dense to parse but every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter dispatcher with no output schema, the description supplies what matters: the return is operation result JSON, results may carry undoSteps/undoStackIndex, and reverting has a documented mechanism. The only missing piece is per-operation failure behavior, which is arguably delegated to pr_catalog.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline would be 3, but the description adds value beyond the schema by showing a worked payload ({'operation':'add_marker','args':{'time_seconds':1.5,'name':'Intro'}}) and making clear that args is an open, operation-specific bag governed by pr_catalog. The {expected_undo_stack_index} reference also explains a parameter-like argument the schema never enumerates.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — 'Run one Premiere Pro operation by name (see pr_catalog)' — and includes a concrete inline example of the operation/args payload. The word 'one' implicitly separates it from the batch sibling pr_batch, and the closing line 'Prefer this over writing ExtendScript' names the alternative path an agent might otherwise take.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly routes the agent to pr_catalog for operation discovery, and gives a concrete when/when-not rule: use the undo operation with {expected_undo_stack_index} to revert, but for property and marker writes checkpoint the sequence beforehand because they record no undo step. That is a real precondition, not a generic 'use this to...' statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pr_export_frameA
Export one frame of the active sequence as PNG at output_path (Premiere QE still export, full resolution). time_seconds defaults to the playhead. Use it to LOOK at the result of an edit.
| Name | Required | Description | Default |
|---|---|---|---|
| output_path | Yes | absolute .png path; the folder is created | |
| time_seconds | No | time in seconds (default: playhead) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden; it does disclose the precondition (an *active* sequence must be open), the mechanism (QE still export) and that output is full resolution rather than downscaled. It says nothing about overwrite behavior if the PNG exists, execution cost/latency, or failure modes, and filesystem side effects are only implied. Useful context, but not complete for an unannotated write-to-disk tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short clauses, front-loaded with the verb and destination, followed by the default behavior and the invocation rationale. Every sentence carries information; nothing is padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description is the only place an agent could learn what comes back — yet it never says whether the tool returns image content, a path, or just a success signal. For an agent whose stated goal is to "LOOK at the result," that ambiguity matters. Otherwise adequate for a 2-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description restates the playhead default for `time_seconds` and ties `output_path` to the PNG destination, but adds no syntax, unit, or constraint detail beyond the schema (e.g. whether `time_seconds` must be within sequence bounds).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (export), a precisely scoped resource (one frame of the active sequence), the output format (PNG), the destination (`output_path`), and the underlying mechanism (QE still export at full resolution). No sibling in the list does frame export, so it is trivially distinguishable from pr_catalog, pr_do, pr_batch, pr_verify, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Use it to LOOK at the result of an edit" gives a clear motivating context for invoking it, which is more than most tools offer. It stops short of explicit exclusions or naming an alternative (e.g. a preview/thumbnail sibling or pr_verify), so it lacks the when-not half of the 5 bar.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pr_get_sequenceA
Structure of the active sequence: video/audio tracks with clips (node_id, name, start/end/in/out seconds, enabled, speed). node_id is what every clip operation takes.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It helpfully enumerates the returned fields (node_id, name, start/end/in/out, enabled, speed), which compensates for the missing output schema. However, it says nothing about the failure mode when no sequence is active, whether the read is scoped to the active sequence only versus the whole project, or the cost/size of the response on large timelines.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with what is returned, then the one downstream fact an agent needs. No filler and no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description must describe returns and it largely does by listing the clip fields. The remaining gap is the no-active-sequence case and whether the payload is large enough to warrant batching, but for a parameterless getter this is close to sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so baseline is 4. The description still adds useful semantics by explaining that node_id in the response is the key consumed by all clip operations, orienting the agent to the contract of the empty-argument call.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the specific resource returned: the structure of the active sequence, enumerated as video/audio tracks containing clips with named fields. An agent can tell this is a read of the current timeline state, not a catalog or a mutation. It does not explicitly contrast with sibling tools like pr_catalog, but the resource is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'node_id is what every clip operation takes' effectively tells the agent this must be called first to obtain node_ids before any clip-level operation, which is clear usage context. It stops short of naming an explicit alternative or stating when not to call it (e.g. when no sequence is open).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pr_install_connectorA
The Premiere side of the bridge (CEP extension MCPBridgeCEP). action=status (default, read-only) says whether it is installed and enabled; action=install copies it into the user's CEP extensions folder and enables unsigned CEP extensions (PlayerDebugMode) — ask the user first. After an install the user must quit and reopen Premiere Pro, then call pr_verify. Use when pr_verify reports that the connector does not answer.
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | status |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does so well. It discloses that status is read-only by default, that install copies files into the user's CEP extensions folder and enables unsigned extensions via PlayerDebugMode, and that user consent is required before install. It also states the required restart and follow-up verification step.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single dense but well-structured paragraph. It front-loads the purpose, then explains actions, then gives the operational sequence. Every sentence adds necessary information without repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool with no output schema and no annotations, the description covers the action semantics, the user-consent requirement, the filesystem side effect, the required Premiere restart, and the follow-up call to pr_verify. Nothing an agent needs to invoke it safely is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain the sole parameter, and it does: action=status is the default read-only check, while action=install performs the copy and PlayerDebugMode change. Both enum values are given concrete meaning beyond the bare enum names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific resource (the Premiere-side CEP extension MCPBridgeCEP) and the specific operations (status and install). It clearly distinguishes this tool from pr_verify by explaining that this is the installer/status checker while pr_verify confirms the connector answers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly states when to use the tool: 'Use when pr_verify reports that the connector does not answer.' It also gives a clear before/after workflow ('ask the user first', then quit and reopen Premiere, then call pr_verify), leaving little ambiguity about ordering or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pr_save_projectA
Save the open project (Cmd+S). Do it before exports and before batches of destructive edits.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It discloses the mutation nature (a save/Cmd+S write to disk) and an implicit precondition that a project must be open, plus timing advice; however it never states what happens if no project is open, whether the save is confirmed, or what the call returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, zero filler: the action first, then the timing constraint. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, low-complexity tool with no output schema, the description covers what it does and when to invoke it, which is nearly all an agent needs. Only failure-mode behavior (no open project, save confirmation) is left unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, which is the baseline-4 case. The description correctly implies a no-argument, whole-project action rather than any parameterized save.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Save the open project') and anchors it to the familiar Cmd+S action, so the agent knows exactly what happens. It doesn't explicitly name sibling tools, but 'project' vs. 'frame export' vs. 'batch' semantics make the scope reasonably distinguishable from the surrounding tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit when-to-use conditions: before exports and before batches of destructive edits, which map onto the pr_export_frame and pr_batch siblings. No when-not or exclusion guidance is offered, so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pr_skillA
The Premiere agent skill. No doc: the router — order of work, what scripts cannot do in Premiere, which reference to read; read it at the start of any Premiere task beyond a single read or edit. doc: one reference — Premiere's AI tools (Generative Extend, Generative Media Tool, Object Mask, transcripts and Paper Edit, captions, Enhance Speech/Audio, Search, AI Assistant, Auto Reframe, Scene Edit Detection, Morph Cut), multi-tool recipes, gotchas.
| Name | Required | Description | Default |
|---|---|---|---|
| doc | No | reference: audio | combos | generative | gotchas | masking | search-assistant | speech-text | timeline-automation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the mode behavior (router vs. single reference) and enumerates topics, but says nothing about output format, size, caching, or what happens with an invalid `doc` value. For a read-only reference tool the risk is low, but the disclosure is only partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, each front-loaded with the mode it describes, with no filler. The parenthetical list of AI tools is long but functional since it signals coverage. Slight density cost, but nothing reads as wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-optional-parameter reference lookup with no output schema, the description covers what the tool returns and when to call it. The main residual gap is that the mapping from `doc` values to actual content is not spelled out, so an agent picking 'combos' or 'masking' is guessing from the schema alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already lists the valid `doc` values. The description adds real meaning beyond that by explaining what the absence of `doc` yields (the router) and by characterizing the content of the reference set (AI tools, multi-tool recipes, gotchas). It does not map individual enum values like 'combos' or 'timeline-automation' to topics, leaving that to inference.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states this is a skill/reference retrieval tool with two modes: no `doc` returns the router (workflow order, capability limits, which reference to read), and `doc` returns a single topical reference. The verb is implicit ('read it') rather than explicit ('retrieve'), but an agent can still tell what it gets. It does not distinguish itself from siblings like pr_catalog or pr_do, which also sound like lookup tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Strong usage trigger: 'read it at the start of any Premiere task beyond a single read or edit' gives a concrete when-to-use condition and an implicit exclusion. It also explains the two branches (router vs. one reference). It stops short of naming sibling alternatives for cases not covered here.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pr_verifyA
Read-only check: MCP ↔ Premiere connector ↔ open project ↔ active sequence. Call first in a session. Connector does not answer while Premiere is open → pr_install_connector (status, then install with the user's consent).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden and does well: it declares the check read-only and discloses the important condition that the connector does not answer while Premiere is open. It also notes consent requirements for installation, though it does not describe timeout or return-status behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose, then immediately gives the usage rule and failure routing. The arrow notation is compact and every clause contributes useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, but there is no output schema and the description does not explain what a successful verification returns or what failure criteria look like beyond the connector not answering. It is adequate for invocation but leaves output interpretation underspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so parameter semantics are not a major concern. The description appropriately does not introduce parameter details where none exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific read-only verification of the MCP-to-Premiere connector chain, including the open project and active sequence. It also distinguishes the failure path by naming pr_install_connector, making the tool's role clear against siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says to call this first in a session and prescribes the alternative path when the connector does not answer: use pr_install_connector for status, then install with user consent. That is clear when-to-use and when-to-escalate guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
v1.1.0- Changed
pr_batch2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / ops / items / additionalPropertiesAdded value: +false
- Changed
pr_catalog2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - changed
Input schema / properties / category / descriptionPrevious value: -"advanced | after_effects | audio | av_settings | captions | clipboard | context | delivery | dialogue | discovery | edit_plans | effects | export | health | inspection | intake | interchange | keyframes | markers | media | media_analysis | metadata | mogrt | playback | playhead | project | project_manager | recovery | scripting | selection | sequence | shorts | source_monitor | text | timeline | timeline_qa | track_targeting | tracks | transcript | transitions | utility | uxp | workflows | workspace"New value: +"advanced | after_effects | audio | av_settings | captions | clipboard | context | delivery | dialogue | discovery | edit_plans | effects | export | health | inspection | intake | interchange | keyframes | markers | media | media_analysis | metadata | mogrt | playback | playhead | project | project_manager | recovery | review | scripting | selection | sequence | shorts | source_monitor | text | timeline | timeline_qa | track_targeting | tracks | transcript | transitions | utility | uxp | workflows | workspace"
- Changed
pr_do1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
pr_export_frame1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
pr_get_sequence1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
pr_install_connector1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
pr_save_project1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
pr_skill1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
pr_verify1 field changed- added
Input schema / additionalPropertiesAdded value: +false
9 tool updates
v0.1.0- First observed
pr_batch - First observed
pr_catalog - First observed
pr_do - First observed
pr_export_frame - First observed
pr_get_sequence - First observed
pr_install_connector - First observed
pr_save_project - First observed
pr_skill - First observed
pr_verify
TDQS
Scored across 9 tools
Each tool has a distinct role: discovery (pr_catalog, pr_skill), execution (pr_do, pr_batch), diagnostics (pr_verify, pr_install_connector), and state/IO (pr_get_sequence, pr_save_project, pr_export_frame). Minor overlaps exist — pr_catalog vs pr_skill both serve as documentation entry points, and pr_verify vs pr_install_connector status both probe the bridge — but the descriptions give clear guidance on which to pick.
All tools share the pr_ prefix and most follow a verb_noun pattern (get_sequence, save_project, export_frame, install_connector). pr_do, pr_batch, pr_catalog, pr_skill deviate slightly (bare verb or noun-only), but the set is still highly predictable.
Nine tools is well-scoped for a bridge server whose real operation surface lives behind pr_catalog/pr_do. Each tool earns its place: discovery, single execution, batch execution, diagnostics, readback, persistence, visual verification, connector install, and docs.
The meta-tool set covers the full lifecycle of a bridge session: verify, inspect, edit (via pr_do), batch, save, visually check, and repair the connector. Gaps are minor — there is no tool to enumerate projects or switch the active sequence, and undo exists only as a pr_do operation rather than a first-class tool.
Maintenance
Related MCP Connectors
AI video editor for agents and humans: timeline, captions, color, audio and generation as MCP tools.
Orccut: a real timeline video editor for AI agents - journaled edits, FFmpeg/MLT rendering
Edit video by talking to your AI — search footage, cut timelines, apply effects, add captions.
Autonomous AI video editor over MCP: viral clips, captions, reframe, chroma key, MP4 export
Related MCP Servers
- AlicenseBqualityAmaintenanceEnables AI assistants to fully control Adobe Premiere Pro through 269 tools across 28 modules for video editing tasks like importing media, editing timelines, applying effects, and exporting.4425,981 npm462MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to control video editing software (剪映/CapCut and Adobe Premiere Pro) through a unified interface, supporting operations like material import, clip splitting, subtitle addition, effects, transitions, audio mixing, and export.10MIT
- AlicenseCqualityAmaintenanceOperates local Adobe Premiere Pro projects through MCP, exposing 284 tools for AI-driven video editing including timeline editing, effects, exports, and guided assembly workflows.28444 npmMIT
- AlicenseAqualityAmaintenanceLets AI agents drive a running Adobe After Effects — projects, comps, layers, effects, keyframes, text, masks, expressions and frames — through a small tool surface with dry-run validation and undo-grouped operations. Works with every UI language After Effects ships, comes with a large skills library and is built for AI and generative features: Roto Brush, Object Matte, Content-Aware Fill.41239 npm2Apache 2.0