MCP for Adobe Premiere Pro vs Reaper MCP

A side-by-side look at the MCP for Adobe Premiere Pro and Reaper MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

MCP for Adobe Premiere Pro logoMCP for Adobe Premiere ProMultimedia Process · Local subprocess (stdio)Local-first MCP for supported Adobe Premiere Pro workflows; start with a read-only connection check.72GreatAuth: not declaredReaper MCP logoReaper MCPMultimedia Process · Local subprocess (stdio)AI-powered music production in REAPER through natural conversation - 173 tools across 26 modules covering transport, tracks, MIDI (insert/edit/quantize/humanize), mixing and FX (EQ, compression, sidechain, sends), tempo maps, markers/regions, ReaScript discovery/execution, and more.65GreatAuth: no auth required

Verdict: choose MCP for Adobe Premiere Pro for multimedia process work as a local process; choose Reaper MCP for multimedia process as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

MCP for Adobe Premiere Pro logoChoose MCP for Adobe Premiere Pro when

  • You need dedicated capabilities in the Multimedia Process domain.
  • You prefer a local stdio subprocess transport.
  • You want tools like get_project_info, list_project_items, list_sequences.
Explore MCP for Adobe Premiere Pro

Reaper MCP logoChoose Reaper MCP when

  • You need dedicated capabilities in the Multimedia Process domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: No auth required.
  • You want tools like item_split_at_transients, item_split_at_positions, take_set_pitch.
Explore Reaper MCP

Feature & specification comparison

Rows where the two servers differ are marked.

SpecMCP for Adobe Premiere Pro logoMCP for Adobe Premiere ProReaper MCP logoReaper MCP
CategoryMultimedia ProcessMultimedia Process
Quality signal72/100 · Great65/100 · Great
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthNot declaredNo auth required
PricingNot declaredFree
Required env varsNone listedNone listed
Verified ownerCommunity listingCommunity listing
GitHub stars414103
Directory activity 4 views 0 installs 0 upvotes 5 views 0 installs 0 upvotes
Tools432174

Tools & capabilities

MCP for Adobe Premiere Pro tools 432

  • get_project_infoGet information about the currently open Premiere Pro project
  • list_project_itemsList all items in the project panel (clips, bins, sequences)
  • list_sequencesList all sequences in the project
  • get_active_sequenceGet bounded, paged information about the currently active sequence (50 clips by default). Follow pagination.nextOffset for more
  • list_sequence_tracksList all tracks (video and audio) in a sequence
  • get_clip_propertiesGet detailed properties of a specific clip by its node ID
  • find_project_item_by_nameFind a project item by name (searches recursively through bins)
  • get_sequence_settingsGet the settings (resolution, frame rate, etc.) of a sequence
  • get_selected_clipsGet the currently selected clips in the active sequence
  • get_clip_at_positionGet the clip at a specific time position on a track
  • save_projectSave 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_asSave 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.
  • +420 more on the listing page

Reaper MCP tools 174

  • item_split_at_transientsSlice an audio item at every detected transient. Uses REAPER's native transient detection (action 40310). Sensitivity is controlled by REAPER's project settings (Options → Preferences → Project → Item handling → Transient detection sensitivity), not by this tool — set it once in REAPER and it applies to every call. Args: item_index: Global 0-based item index of the source audio item. Returns: chops_created: number of new items created from the split. chops_total: total items now spanning the original time range. chops: list of `{item_index, position, length, offset_in_original_sec}` in playback order. The AI uses these indices to repitch / duplicate / reverse individual chops.
  • item_split_at_positionsSlice an item at a list of absolute project-time positions. For grid-based or hand-picked chopping where transient detection isn't right. Pass positions in seconds; positions outside the item's range are silently ignored. Args: item_index: Global 0-based item index. positions: JSON array of absolute project-time positions (seconds). Example: `"[1.5, 2.0, 2.5, 3.0]"`. Returns the resulting chops in playback order with their indices, positions, lengths, and offset relative to the original item start.
  • take_set_pitchPitch-shift a take by N semitones (no time change). The core of "tune a chop to a chord tone". Pass positive values to shift up, negative for down. Range is roughly -60 to +60 (REAPER clamps extremes). Half-semitone values work (`0.5`, `-1.25`, etc.) for fine-tuning. Pitch quality depends on REAPER's per-take pitch shift mode setting (Item Properties → Take pitch shift mode). For vocals, "Élastique Pro Soloist" preserves formants well. Set it once in REAPER's project defaults and it applies to every chop. Args: item_index: Global 0-based item index. semitones: Pitch shift in semitones. Float. Default 0 (no change). take_index: 0-based take index, or -1 for the active take.
  • take_set_playrateTime-stretch a take by changing its playrate. With `preserve_pitch=True` (default), audio plays slower/faster without changing pitch — useful for fitting a chop to a beat grid. With `preserve_pitch=False`, this becomes a vinyl-style speed change (faster = higher pitch). After changing the rate, the item's visible length in the timeline does NOT auto-resize. Call `item_set_length` afterwards to match. Args: item_index: Global 0-based item index. rate: Playback rate. 1.0 = normal, 0.5 = half speed, 2.0 = double. Range 0.05 to 16.0. preserve_pitch: Time-stretch without pitch change. Default True.
  • take_set_reversedReverse an item's audio. Uses REAPER's "Item: Reverse items as new take" action — the new reversed take becomes the active one, the original take is kept (item now has 2 takes). To revert, switch back to the original take via `item_take_set_active`. Useful for: reverse-cymbal-into-downbeat fills, breath-in vocal FX, glitchy chop reversals (Skrillex / Flume style). Args: item_index: Global 0-based item index.
  • item_duplicateCopy an item N times at fixed spacing. Each copy is a full clone — same source, same take properties (pitch, playrate, FX, fades). Used for the Porter Robinson 1/16 stutter, EDM build-up risers, percussive vocal repeats. With default spacing (0), copies are placed back-to-back at the original item's length. For tight stutters, pass a small spacing like `60/bpm/4` for 1/16-note repeats at the project's tempo. Args: item_index: Global 0-based source item index. count: Number of copies to make. Range 1-100. spacing_sec: Time between copy starts in seconds. 0 = use item length (back-to-back). Default 0. Returns the new clones with their `item_index` so the AI can manipulate them (pitch, fade, etc.) directly.
  • analyze_chop_setInspect a list of chops and classify each by duration. Pure-Python helper that calls `item_get_info` for each index and returns enriched per-chop info plus summary stats. Helps the AI pick which chops to use for which musical role without doing audio content analysis. Duration classes: hit — < 150 ms (drum hit, consonant burst) staccato — 150-400 ms (short syllable, good for stutters) syllable — 400 ms-1 s (full syllable / word) sustain — > 1 s (phrase / vowel held) Args: item_indices: JSON array of item indices. Up to 200 chops.
  • arrange_chops_to_chord_tones[NICHE] Retune each chop to a chord tone. ⚠️ WARNING: This is NOT how professional vocal chops are made. Per-slice chord-tone retuning smears vocal formants and sounds unnatural. `chop_pipeline` uses uniform transpose instead, which is the correct default for EDM vocal chops. This tool is kept for stylized experimental use (e.g., glitch / granular / heavily-processed chop effects where the pitched-up- demon-voice sound is the desired character). DO NOT use it as your default chop workflow. Walks the chops in playback order. For each chop, determines which chord it falls within (based on its time position) and picks a chord tone according to `layout`. Applies the pitch shift via `take_set_pitch`. Args: item_indices: JSON array of chop item indices (in playback order). Typically the `chops` list returned by `item_split_at_transients`. chord_progression: Chord names separated by commas, pipes, or dashes-with-spaces. E.g., `"Cm7, Fm7, Bb7, Eb"` or `"Am - F - C - G"`. beats_per_chord: How many beats each chord lasts. Default 4 (one bar per chord at 4/4). bpm: Project tempo. Pass 0 to fetch from REAPER (extra round-trip). layout: How to pick a chord tone for each chop: - `follow` — cycle root → 3rd → 5th → root → 3rd → 5th - `ascending` — climb chord tones across each chord - `porter` — root → 5th → octave → 5th → root (Porter Robinson) - `root` — every chop = root of current chord source_root: Note name the source vocal is "in". Pitch shifts are computed relative to this. Default `"C"`. If you don't know, leave as `C`; the result will still be musical relative to the chord changes, just not in absolute key.
  • chop_pipelineEnd-to-end vocal-chop arrangement (redesigned for pro workflow). Produces a contiguous, key-matched, professionally-structured chop arrangement on a new track. Follows researched EDM vocal-chop rules: • CHOPS ARE CONTIGUOUS — every slot filled wall-to-wall, no silence gaps. Slot length is determined by the grid. • PITCH IS UNIFORM — the whole chop set is transposed ONCE to match the track key (source_key → target_key). No per-slice chord-tone retuning; that destroys formants and sounds bad. • LAYER STACKS ARE SEPARATE TRACKS — octave/fifth layers are duplicate child tracks at reduced volume (not overlays that smear the lead). • BAR-LEVEL VARIATION — each bar pulls a different permutation of source slices, so the arrangement doesn't just loop. REQUIREMENT for clean pitch: set REAPER's per-item pitch-shift mode to "élastique Pro Soloist Monophonic" (Project Settings → Media Item Defaults, or per-take in Item Properties). Raw pitch shift without formant preservation destroys vocal character. The tool does not auto-set this (requires REAPER user config). Modes: • `slice-preserve` (default): slice source at a 1/16 (or 1/8 / 1/32 per style) grid, reorder slices across bars for variation, apply ONE uniform pitch shift to all chops. • `melody`: pick a central vowel offset in the source, write a chord-tone melody across bars (root/3rd/5th of each chord), capped at ±5 semitones from source. Requires `chord_progression`. Approximates the "one vowel + sampler + MIDI melody" workflow (Flume / Simpler / Quick Sampler). Args: vocal_item_index: Global 0-based index of the vocal item. chord_progression: Chord list (required for `melody` mode, optional for `slice-preserve`). E.g. `"Fm, Ab, Bb, Fm"`. bpm: Project tempo. 0 = fetch from REAPER. bars: Length in bars. Default 4, max 32. style: One of `future_bass`, `chillstep`, `porter`, `trap`, `mura_masa`, `odesza`. Drives grid / stutter / layers. target_track_name: Name for the new track. mute_original: Mute the source vocal's track. Default True. source_key: Vocal's original musical key. Accepts `Am`, `A minor`, `A`, `Ebm`, etc. Default `C`. target_key: Track key to transpose TO. Empty = use root of first chord in `chord_progression`, or source_key if no progression given. mode: `slice-preserve` (default) or `melody`. See above. seed: Random seed for bar permutations. 0 = nondeterministic.
  • stack_chop_layersFor each chop, create overlay copies at parallel pitch intervals. The classic "future bass / Porter Robinson" harmonized chop stack: each chop becomes a 3-voice cluster — original (root) + 5th (`+7`) + octave (`+12`). Each layer is a clone placed at the EXACT same position as the source on the SAME track, with `take_set_pitch` applied. This means layers play simultaneously with the original. Args: item_indices: JSON array of chop indices to stack. Up to 50. intervals_semitones: JSON array of pitch shifts to add. Default `"[7, 12]"` = perfect 5th + octave (the classic stack). For unison-only set to `"[]"` (no extra layers). Note: stacking creates many overlapping items. Best applied to a SUBSET of chops (e.g., the standout chops in your sequence) rather than every chop, or REAPER's mixer will get crowded.
  • wipe_all_midiWipe all MIDI items and reset composition state. Tracks can compose again after. Only deletes items whose active take is MIDI — audio items on the same tracks are left untouched. On a full wipe (tracks omitted), also clears all markers and regions. Args: tracks: JSON array of track indices e.g. "[0,1,2]", or empty for all.
  • reset_compositionUnlock compose_arrangement without deleting MIDI. Use wipe_all_midi to also delete.
  • +162 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

MCP for Adobe Premiere Pro

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "mcp-for-adobe-premiere-pro": {
      "command": "npx",
      "args": [
        "-y",
        "premiere-pro-mcp@1.24.0"
      ]
    }
  }
}

Reaper MCP

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "xdarkzx-reaper-mcp": {
      "command": "uvx",
      "args": [
        "xdarkzx-reaper-mcp"
      ]
    }
  }
}

Frequently asked questions

MCP for Adobe Premiere Pro is categorized under Multimedia Process and uses a local stdio subprocess. Reaper MCP belongs to Multimedia Process and uses a local stdio subprocess. Pick MCP for Adobe Premiere Pro for multimedia process work and Reaper MCP for multimedia process.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

MCP for Adobe Premiere Pro has no declared pricing — check the project's own site. Reaper MCP is listed as free. Auth: no auth required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add mcp-for-adobe-premiere-pro and xdarkzx-reaper-mcp as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, MCP for Adobe Premiere Pro has a quality signal of 72/100 (Great) with 4 views, 0 installs and 414 GitHub stars. Reaper MCP has 65/100 (Great) with 5 views, 0 installs and 103 GitHub stars.