dcc-mcp-premiere
Typed DCC-MCP control for Adobe Premiere Pro through the shared adobepy
broker and Adobe's UXP runtime. The adapter exposes bounded project, media,
timeline, marker, save, frame-export, and AME queue operations. It deliberately
does not expose raw JavaScript, evalJs, shell commands, or arbitrary UXP calls.
Illustrative workflow generated with OpenAI ImageGen from the retained source in docs/images/sources; it is not a Premiere Pro screenshot or host-validation artifact.
Install
python -m pip install dcc-mcp-premiere
adobepy install-bridge premiere --dest <plugin-dir> --token <non-default-token>
Load the generated bridge with Adobe UXP Developer Tool in Premiere Pro 25.6
or later. Set ADOBEPY_TOKEN to the same token, start the adapter, then verify
the connected host through DCC-MCP discovery:
dcc-mcp-cli wait-ready --dcc-type premiere --timeout-secs 60
dcc-mcp-cli load-skill premiere-project --dcc-type premiere
Each adapter instance uses an OS-assigned port and registers with DCC-MCP
discovery. Agents should connect through the stable local gateway at
http://127.0.0.1:9765/mcp. Set DCC_MCP_PREMIERE_PORT only for a deliberately
fixed direct endpoint.
Typed tools
Inspection:
get_statusinspect_projectlist_sequencesinspect_sequencelist_project_itemslist_selected_clipslist_encoder_presets
Project and timeline authoring:
create_binimport_mediacreate_sequenceinsert_project_itemoverwrite_project_itemcreate_marker
Persistence and export:
save_projectsave_project_asqueue_sequence_exportexport_frame
List and scan operations are paginated and bounded. Imports accept at most 100
files, with per-file and aggregate byte limits. Track indices, marker text,
frame dimensions, and output extensions are validated before invoking the host.
AME export reports queued=true; completion must be verified separately.
Safe local paths
The adapter resolves paths before calling Premiere and confines them to:
DCC_MCP_PREMIERE_ALLOWED_INPUT_ROOTSfor imported mediaDCC_MCP_PREMIERE_ALLOWED_OUTPUT_ROOTSfor.prprojand exported mediaDCC_MCP_PREMIERE_ALLOWED_PRESET_ROOTSfor.sqpresetand.eprfiles
Each variable uses the platform path separator and defaults to the current
user's home directory. Existing outputs require overwrite=true; missing
parent directories require create_parents=true. Verified synchronous outputs
include byte count and SHA-256.
Real-host acceptance
Automated tests use contract-compatible facade fakes; they are not represented as live Premiere proof. With a disposable project open and the UXP bridge connected, configure the three allowlists and run:
set DCC_MCP_PREMIERE_SMOKE_MEDIA=C:\path\to\media.mp4
set DCC_MCP_PREMIERE_SMOKE_ROOT=C:\path\to\writable-evidence
python tools/live_premiere_smoke.py
The smoke script uses dcc-mcp-cli for readiness, skill loading, and every
typed call. It imports media, authors and inspects a sequence, adds a marker,
saves a verified project copy, exports a verified frame, and prints hashes.
Set DCC_MCP_PREMIERE_SMOKE_EPR to an allowlisted .epr file to include an AME
queue test.
Development
python -m pip install -e ".[dev]"
python -m pytest -q
python -m ruff check src tests tools
python -m ruff format --check src tests tools
python tools/lint_skills.py
python -m build
python -m twine check dist/*
See docs/architecture.md for ownership, readiness, and security boundaries.
Metadata
Release files for dcc-mcp-premiere 0.6.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| dcc_mcp_premiere-0.6.0.tar.gz | 45.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dcc_mcp_premiere-0.6.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 86.3 kB
Release files / dcc_mcp_premiere-0.6.0.tar.gz
| Download URL | dcc_mcp_premiere-0.6.0.tar.gz |
|---|---|
| Size | 45.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
03614a8e65d2d842dc26ba3f367e5e11baacaae7ce6faa40d44b436381179eb7
|
|
BLAKE2b-256 checksum How to use checksums |
f1bb17840b818c9f27f62a9880a3a430dbf3b502bf96158409a5f04dc47f065d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.
Transparency logRelease files / dcc_mcp_premiere-0.6.0-py3-none-any.whl
| Download URL | dcc_mcp_premiere-0.6.0-py3-none-any.whl |
|---|---|
| Size | 41.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5e0c4b65072a6e0a83f6d931109c32677d19102ea62751a55ca3afb564e9ffb1
|
|
BLAKE2b-256 checksum How to use checksums |
0b44116f5c292e6dca51812ff8483c8e47014778a7b12d00b672889afd16d056
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.
Transparency log