Skip to main content

REAPER MCP Server

PyPI version Python Version License: MIT Tests codecov

A Model Context Protocol (MCP) server that provides programmatic control over REAPER DAW through a clean, tool-based interface. Built with FastMCP and python-reapy, this server enables AI assistants and automation tools to interact with REAPER projects.

Features

  • Project Management - Project details, initialization, save, playback state, undo/redo, time conversions
  • Playback Control - Start, pause, stop, record, cursor and time selection management
  • Markers & Regions - Add, list, and manage markers and regions
  • Track Operations - Create, delete, configure tracks (volume, pan, mute, solo, color, selection)
  • Tempo Control - Get/set project BPM
  • MIDI - Generate and import MIDI notes, patterns, and files
  • FX & Plugins - List, add, and control VST plugins and parameters
  • Audio Samples - Manage sample directories, search, import, and time-stretch audio files

Prerequisites

  • REAPER installed with ReaScript enabled
  • python-reapy bridge configured for out-of-process control
  • Python 3.11+

Note: The server must be able to communicate with REAPER. Ensure REAPER is running before starting the server.

Installation

Using uv (Recommended)

# Install with uv
uv pip install reaper-mcp

# Or run directly with uv
uv tool install reaper-mcp

Using pip

pip install reaper-mcp

Usage

Run the server (default stdio transport for MCP clients):

python -m reaper_mcp

Run with MCP Proxy (stdio):

uv tool run mcpo --port 8000 -- uv run reaper_mcp

Options:

  • --transport {stdio,sse,http,ws,websocket} - Transport protocol (default: stdio)
  • --host HOST - Host for network transports (default: 127.0.0.1)
  • --port PORT - Port for network transports (default: 8000)
  • --path PATH - URL path for HTTP/SSE/WebSocket
  • --allow-origin ORIGIN - CORS origin (repeatable)

Example with WebSocket:

python -m reaper_mcp --transport ws --port 9000

MCP Client Configuration

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "reaper": {
      "command": "python",
      "args": ["-m", "reaper_mcp"]
    }
  }
}
Cline (VS Code)

Add to MCP settings:

{
  "mcpServers": {
    "reaper": {
      "command": "python",
      "args": ["-m", "reaper_mcp"]
    }
  }
}
Continue (VS Code)

Add to config.json:

{
  "mcpServers": {
    "reaper": {
      "command": "python",
      "args": ["-m", "reaper_mcp"]
    }
  }
}
Using uv

For any client, replace "command": "python" with "command": "uv" and "args": ["run", "python", "-m", "reaper_mcp"]

Notes

  • Tools are designed to be small and focused - prefer calling multiple tools over complex combined actions
  • File paths must be accessible from the REAPER host machine
  • Some operations depend on REAPER configuration, OS, and installed plugins
  • Tools return helpful error messages when operations are unavailable

Testing

A comprehensive integration test suite is available to validate all 115+ MCP tools across 13 categories. The test suite can optionally use Ollama LLM to generate songs and validate functionality.

Quick Start

cd tests
./run_tests.sh

Features

  • Tests all 4 producer workflow methods (create_song_from_scratch, create_variation, continue_song, arrange_song_structure)
  • Validates song structure, BPM, tracks, and MIDI content
  • Tests all 115+ tools systematically across 13 categories
  • Generates comprehensive JSON and text reports
  • Optional Ollama LLM integration (granite4:micro-h model)

Configuration

Default Ollama settings (edit tests/test_config.py to customize):

  • Host: 10.0.0.192
  • Port: 11434
  • Model: granite4:micro-h

Run without Ollama:

./run_tests.sh --no-ollama

See tests/README.md for complete documentation including:

  • Installation and prerequisites
  • Configuration options
  • Test phases and categories
  • Sample output and success criteria
  • Troubleshooting guide
  • Architecture details

Links

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

reaper_mcp-1.4.0.tar.gz (194.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

reaper_mcp-1.4.0-py3-none-any.whl (67.2 kB view details)

Uploaded Python 3

File details

Details for the file reaper_mcp-1.4.0.tar.gz.

File metadata

  • Download URL: reaper_mcp-1.4.0.tar.gz
  • Upload date:
  • Size: 194.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for reaper_mcp-1.4.0.tar.gz
Algorithm Hash digest
SHA256 e19cf6425bb7621c45fbd02b6eda40d2e787a253a2e504dcf09af811edfb0e64
MD5 7b937f5e06e16612563b952ca592b986
BLAKE2b-256 f745ae9c2b29f32c6644a72dc2c26fcc2f8b3eccc728403651c83a0b70613179

See more details on using hashes here.

Provenance

The following attestation bundles were made for reaper_mcp-1.4.0.tar.gz:

Publisher: publish.yml on nbdy/reaper-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file reaper_mcp-1.4.0-py3-none-any.whl.

File metadata

  • Download URL: reaper_mcp-1.4.0-py3-none-any.whl
  • Upload date:
  • Size: 67.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for reaper_mcp-1.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e896624613e16af7b210c9b4eda7627fbd2713dd004a19555d79cbb33e59f095
MD5 5a7eba5746842a4e7c6cdf111f6d94d4
BLAKE2b-256 ad39761a8594cd48a88ed0939f965e80975c2b49bd385e2bb1a547c0b8099bba

See more details on using hashes here.

Provenance

The following attestation bundles were made for reaper_mcp-1.4.0-py3-none-any.whl:

Publisher: publish.yml on nbdy/reaper-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.4.0 This release

2 files

1.2.0

2 files

1.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page