Skip to main content
Glama

reascript-mcp

MCP server exposing Reaper/ReaScript project-control helpers to AI agents.

This is the first working slice of the Reaper layer for the Asian Sentry agentic music tooling stack. It complements music21-mcp: music21 handles symbolic music reasoning; ReaScript handles project-level DAW control and state readback.

Current tools

Tool

What it does

parse_rpp_project

Parse a .rpp Reaper project file into compact JSON: tempo, time signature, track names, item counts, and media source types. Works without Reaper installed.

generate_reascript

Generate Lua ReaScripts for supported actions. Current actions: list_tracks, read_project_state, create_track, create_midi_item, and import_midi_file.

write_reascript_file

Generate a supported Lua ReaScript and write it to disk for loading/running in REAPER.

Related MCP server: reaper-reapy-mcp

Install

cd reascript-mcp
python3 -m venv .venv
source .venv/bin/activate
pip install -e '.[dev]'

Run tests

python -m pytest -q

Current status: 12 tests passing.

Use as MCP server

python -m reascript_mcp.server

Example MCP config:

{
  "mcpServers": {
    "reascript-mcp": {
      "command": "/path/to/reascript-mcp/.venv/bin/python",
      "args": ["-m", "reascript_mcp.server"],
      "cwd": "/path/to/reascript-mcp"
    }
  }
}

Direct Python examples

from reascript_mcp.tools.parse_rpp_project import parse_rpp_project
from reascript_mcp.tools.generate_reascript import generate_reascript

print(parse_rpp_project("song.rpp"))

script = generate_reascript("list_tracks", {"output_path": "tracks.json"})
print(script["script"])

from reascript_mcp.tools.write_reascript_file import write_reascript_file
write_reascript_file("list_tracks", {"output_path": "tracks.json"})

Next build slices

  1. Add a Reaper CLI smoke harness that runs against a disposable config/project and exits cleanly.

  2. Add more project-control scripts: create tracks, rename tracks, import MIDI, set tempo map, add markers/regions.

  3. Expand structured state readback scripts beyond read_project_state: MIDI note contents, routing/sends, FX parameter snapshots, and render metadata.

  4. Connect this to the common musical data model so music21/mido/ReaScript reference the same musical locations.

Related MCP Connectors

Related MCP Servers

  • F
    license
    B
    quality
    D
    maintenance
    Enables AI-powered music composition and control for REAPER DAW through OSC and ReaScript integration. Supports transport control, MIDI generation, track management, and music theory operations like scales, chords, and rhythm patterns.
    17
    -
  • A
    license
    B
    quality
    D
    maintenance
    This MCP server enables AI assistants to control a live REAPER DAW instance, including transport, tracks, FX, MIDI, media, markers, rendering, and project state, with an escape hatch for arbitrary ReaScript commands.
    40
    MIT