项目简介
这是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在将功能强大的 REAPER 数字音频工作站 (DAW) 集成到 AI 驱动的工作流程中。通过该服务器,LLM 客户端能够以标准化的方式与 REAPER 进行交互,执行音频制作任务,如项目管理、轨道操作、MIDI 编辑、效果器控制、混音、母带处理和渲染。
主要功能点
- 项目管理: 创建、保存、加载 REAPER 项目,获取项目信息。
- 轨道操作: 创建新轨道,调整轨道参数(如音量、声像),获取轨道信息,列出项目中所有轨道。
- MIDI 编辑: 在 MIDI 音符项中添加 MIDI 音符,创建 MIDI 音符项。
- 音频处理: 导入音频文件到轨道,进行音频项编辑(如修剪、淡入淡出),调整音频项播放速率和音高。
- 效果器与乐器: 向轨道添加 VST 效果器和乐器,设置效果器参数,加载效果器预设,列出可用的 VST 插件。
- 混音与自动化: 创建轨道发送,设置发送参数,创建总线轨道并将轨道路由至总线,添加音量、声像等参数的自动化点。
- 母带处理: 向主轨道添加效果器,应用母带链预设,设置主轨道音量,应用限制器。
- 渲染导出: 渲染整个项目到文件,渲染指定轨道为音频干声(stems),渲染选定的音频项或区域。
- 音频分析: 分析项目或音频项的频率频谱(当前为占位符实现),检测削波,分析混音平衡、立体声场和动态。
安装步骤
- 安装 REAPER DAW: 确保您的计算机上已安装 REAPER 数字音频工作站。
- 安装 Python: 确保安装了 Python 3.8 或更高版本。
- 克隆仓库: 打开终端或命令提示符,克隆 reaper-mcp 仓库:
git clone https://github.com/itsuzef/reaper-mcp.git cd reaper-mcp - 创建并激活虚拟环境: (推荐做法)
python -m venv venv # On Unix/Mac: source venv/bin/activate # On Windows (Command Prompt): venv\Scripts\activate.bat # On Windows (PowerShell): venv\Scripts\Activate.ps1 - 安装依赖: 在激活的虚拟环境中,安装项目依赖:
pip install -e . - 配置 REAPER: 根据您选择的连接模式(ReaScript 或 OSC)配置 REAPER:
- ReaScript 模式: 确保 REAPER 的 ReaScript API 已启用,并且 Python DLL/dylib 路径已正确设置。可以运行脚本进行辅助设置:
python scripts/setup_reaper_python.py # 您可能还需要在 REAPER 中手动运行 scripts/enable_reapy.py 一次 - OSC 模式: 确保 REAPER 的 OSC 控制已启用并配置正确。可以运行脚本辅助创建配置文件:
python scripts/setup_reaper_osc.py
- ReaScript 模式: 确保 REAPER 的 ReaScript API 已启用,并且 Python DLL/dylib 路径已正确设置。可以运行脚本进行辅助设置:
服务器配置 (供MCP客户端使用)
MCP 客户端需要启动此 MCP 服务器进程才能与其通信。以下是配置 MCP 客户端时需要的信息结构和关键参数说明(非可直接运行的代码块):
- 'name': 字符串类型,MCP 服务器的唯一名称,例如:"ReaperMCP"。
- 'command': 字符串数组类型,启动 MCP 服务器的可执行命令及其参数列表。
- 例如:'["<您的Python可执行文件路径>", "-m", "reaper_mcp"]'
- 如果您在虚拟环境中运行,路径可能类似于 '["/path/to/your/venv/bin/python", "-m", "reaper_mcp"]'。
- 在 Windows 上可能类似于 '["C:\path\to\your\venv\Scripts\python.exe", "-m", "reaper_mcp"]'。
- 您也可以使用提供的启动脚本,例如:'["./scripts/start_reaper_mcp_server.sh"]' (Unix/Mac) 或 '["scripts\start_reaper_mcp_server.bat"]' (Windows)。请确保脚本有执行权限且路径正确。
- 'args': 字符串数组类型,传递给 'command' 的附加参数列表,用于配置服务器的行为。常用的参数包括:
- '"--mode", "<模式>"': 指定服务器与 REAPER 的通信模式。
- '<模式>' 可选值: '"osc"' (默认,使用 OSC 协议) 或 '"reapy"' (使用 ReaScript API,需要 REAPER Python 环境配置正确)。
- '"--transport", "<传输协议>"': 指定服务器与 MCP 客户端的通信传输协议。
- '<传输协议>' 可选值: '"stdio"' (默认,标准输入输出) 或 '"http"' (通过 HTTP/JSON-RPC)。
- '"--debug"': 可选,如果包含此参数,将启用详细的调试日志输出。
- '"--host", "<IP地址>"': (仅限 OSC 模式) 指定 REAPER 监听 OSC 消息的 IP 地址,默认是 '"127.0.0.1"'。
- '"--send-port", "<端口号>"': (仅限 OSC 模式) 指定 REAPER 监听 OSC 消息的端口号,默认是 '8000'。
- '"--receive-port", "<端口号>"': (仅限 OSC 模式) 指定服务器监听 REAPER 响应的端口号,默认是 '9000'。
- '"--http-port", "<端口号>"': (仅限 HTTP 传输模式) 指定服务器监听 HTTP 请求的端口号,默认是 '8080'。
- '"--mode", "<模式>"': 指定服务器与 REAPER 的通信模式。
请根据您的操作系统、虚拟环境路径和期望的服务器模式/传输协议,在您的 MCP 客户端配置文件中填写相应的 'command' 和 'args' 参数。
基本使用方法
- 启动 REAPER: 首先手动启动 REAPER 数字音频工作站。
- 激活虚拟环境: 如果您在安装时创建了虚拟环境,请先激活它。
- 启动 MCP 服务器: 运行主模块并指定模式和传输协议(如果与默认值不同)。例如,使用默认的 OSC 模式和 stdio 传输:
或者使用提供的启动脚本:python -m reaper_mcp
(Windows 用户使用 '.bat' 或 '.ps1' 脚本) 启动后,服务器会尝试连接到 REAPER,并在成功后开始监听 MCP 客户端的请求。./scripts/start_reaper_mcp_server.sh - 连接 MCP 客户端: 使用您的 MCP 客户端连接到已启动的服务器进程(通常通过 stdio 传输自动连接,或配置 HTTP 地址和端口)。一旦连接成功,您就可以通过 LLM 客户端调用服务器暴露的 REAPER 功能工具了。
信息
分类
桌面与硬件