RE

Reaper MCP Server for Audio Mixing Analysis

Connect Reaper projects to an MCP server and get comprehensive audio mixing analysis and actionable feedback via an MCP client.

Quick Install
npx -y @dschuler36/reaper-mcp-server

Overview

Reaper MCP Server connects Cockos Reaper projects to any Model Context Protocol (MCP) client (for example, Claude Desktop) so you can query project metadata and receive automated audio-mixing analysis and actionable feedback. The server parses .RPP project files, inspects installed plugins, and analyzes audio assets (levels, spectrum, stereo image, loudness, and more). Responses are delivered via MCP tools so an LLM-based client can call discovery, parsing, and analysis routines on demand.

This is useful for producers, mix engineers, and developers building tooling around Reaper projects: instead of manually inspecting dozens of tracks, you can ask an assistant to find clipping, identify phase issues, list available reverb plugins, or summarize the FX chains in a session.

Repository: https://github.com/dschuler36/reaper-mcp-server

Features

  • Parse Reaper .RPP project files into structured metadata (tempo, tracks, items, FX chains).
  • Discover installed Reaper plugins across VST2/VST3/AU/JS/CLAP formats.
  • Per-file and per-track audio analysis: peak/RMS, LUFS, true peak, spectral energy, stereo width, phase coherence.
  • Exposes tools as MCP callable endpoints so an LLM client can orchestrate discovery → parse → analysis workflows.
  • Returns human-readable analysis and machine-friendly data structures (see source dataclasses).

Installation / Configuration

Clone the repo and install dependencies into a Python virtual environment.

Bash (recommended):

git clone https://github.com/dschuler36/reaper-mcp-server.git
cd reaper-mcp-server
python -m venv .venv
source .venv/bin/activate
pip install .

Notes:

  • The repository includes a sample Claude Desktop configuration at setup/claude_desktop_config.json. Edit that file to point to your environment paths (Reaper project folder, server installation path, and Python/venv executable).
  • If you use any helper scripts included in the repo (for example uv wrappers), follow their README for alternative commands.

Configure Claude Desktop (or another MCP client) to use a custom MCP server:

  1. Open the client and add a new connector.
  2. Use the sample JSON configuration as a template and update file paths.
  3. Start the Reaper MCP Server and verify the connector appears in your MCP client.

Available Tools / Resources

The server exposes several MCP tools. Below is a concise reference.

ToolParametersReturns
find_reaper_projectsconfig directory pathList of discovered .RPP paths and basic metadata
parse_reaper_projectproject_path (.RPP)Structured project data: tempo, tracks, items, FX chains
list_installed_fxplugin_type=None, search_query=NoneList of installed plugins (name, type, path, manufacturer)
analyze_audio_filesproject_path, track_filter=NoneAudio analysis per file/track: levels, spectrum, stereo, LUFS, phase

Data structures used by the server live in src/reaper_mcp_server/reaper_dataclasses.py — consult that module for exact JSON/typed shapes returned to clients.

Installed-FX discovery notes:

  • The tool scans Reaper’s plugin cache. Newly installed plugins won’t appear until Reaper has rescanned them — open Reaper and let it scan if you expect recent installs to be missing.

Analysis: Metrics & Warning Thresholds

Common thresholds used by the analyzer:

MetricWarning
Peak> -0.3 dBFS — risk of clipping
Clipping detectionAny clipping flagged as digital distortion
Low-frequency energyExcessive if energy > -6 dB in low bands — potential muddiness
Phase coherence< 0.5 — possible cancellation issues
Integrated LUFS> -8 LUFS — likely too loud for streaming (Spotify target ~ -14 LUFS)
Crest factor< 6 dB — may indicate over-compression

The analyzer returns both numeric metrics and human-readable recommendations (e.g., “reduce low end on Kick & Bass”, “check drum overheads for phase issues”).

Use Cases

  • Project discovery: “Find my latest Rock Song project and list all Vocal tracks.”
  • Plugin inventory: “Show me all installed reverb plugins and their formats (VST3/AU).”
  • Mix health check: “Analyze the Rock Song.rpp and report any clipping, LUFS, or phase problems.”
  • Focused analysis: “Check only tracks named ‘Lead Vocal’ for peaks and de-essing needs.”
  • Automation & tooling: Integrate MCP responses into CI or batch reports that summarize multiple sessions for delivery notes.

Example queries you might ask via an MCP client:

  • “Analyze all audio in MyMix.rpp and summarize loudness and clipping.”
  • “Which plugins from Waves are installed on this machine?”
  • “Are my drum overheads mono-compatible and free of serious phase cancellation?”

Troubleshooting & Tips

  • Ensure Reaper has scanned new plugins before using list_installed_fx.
  • Always include the exact project name when asking the MCP client to analyze a specific session.
  • Expand tool outputs in your MCP client to see raw parsed project data when debugging parsing/analysis results.
  • For developers: inspect reaper_dataclasses.py and the server logs to map between .RPP elements and returned JSON.

This server is intended as a practical bridge between Reaper projects and LLM-driven analysis workflows. For code, implementation details, and issue tracking, see the GitHub repository linked above.

Tags:media