start_reaper_mcp_server.ps1•1.42 kB
# Start REAPER MCP Server
# This script starts the REAPER MCP server in the appropriate mode
param (
    [string]$mode = "osc",
    [string]$host = "127.0.0.1",
    [int]$sendPort = 8000,
    [int]$receivePort = 9000,
    [string]$transport = "stdio",
    [switch]$debug = $false
)
# Check if REAPER is running
$reaperRunning = Get-Process -Name "reaper" -ErrorAction SilentlyContinue
if (-not $reaperRunning) {
    Write-Host "Starting REAPER..."
    Start-Process "C:\Program Files\REAPER\reaper.exe"
    # Give REAPER time to start up
    Start-Sleep -Seconds 3
}
# Activate the Python virtual environment if it exists
if (Test-Path "venv\Scripts\Activate.ps1") {
    Write-Host "Activating virtual environment..."
    & "venv\Scripts\Activate.ps1"
}
# Set debug flag if needed
$debugFlag = ""
if ($debug) {
    $debugFlag = "--debug"
}
# Run the MCP server with the specified options
Write-Host "Starting REAPER MCP Server in $mode mode..."
$arguments = @(
    "-m", "reaper_mcp",
    "--mode=$mode",
    "--host=$host",
    "--send-port=$sendPort",
    "--receive-port=$receivePort",
    "--transport=$transport"
)
if ($debug) {
    $arguments += "--debug"
}
# Start Python with the arguments
& python $arguments
# If there's an error, keep the window open
if ($LASTEXITCODE -ne 0) {
    Write-Host "Error occurred. Press any key to exit..."
    $null = $Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
}