夹板
控制 收割者 通过与克劳德的自然语言。
“在人声中添加120Hz的高通” “创建一个鼓总线,并将所有鼓轨道都路由到它” “将节奏设置为140,并独奏低音”
快速开始
git clone https://github.com/gsburmaster/cleaper.git
cd cleaper
./install.sh这就是终点站。安装程序:
- 创建Python虚拟环境并安装依赖项
- 检测您的REAPER安装并复制侦听器脚本
- 自动配置克劳德代码和克劳德桌面
REAPER中的一个手动步骤 (仅限第一次):
- 打开后盖
- 操作>显示操作列表> 加载。..
- 选择
reaper_mcp_listener.lua从您的REAPER脚本文件夹 - 运行它
- *(可选)* 右键单击操作> 启动时运行 所以它会自动启动REAPER
然后重新启动Claude Code/Claude Desktop并询问: *“获取REAPER会话状态”*
视窗
python -m venv .venv
.venv\Scripts\pip install -r requirements.txt
.venv\Scripts\python mcp_server.py install运作原理
Claude ──MCP──▶ mcp_server.py ──file IPC──▶ reaper_listener.lua ──ReaScript──▶ REAPER通信通过JSON文件进行 ~/.reaper-mcp/。没有网络套接字,REAPER内部没有依赖关系。Lua脚本的轮询频率约为30Hz,对于DAW操作来说已经足够快了。
克劳德所做的一切都被包裹在REAPER撤销块中。 Ctrl+Z可撤消任何操作。
命令
| 类别 | 你能做什么 |
|---|---|
| 会话 | 阅读完整的项目状态——曲目、FX链、路线、项目、标记、节奏 |
| 运输 | 播放、停止、暂停、录制、设定节奏 |
| 轨迹 | 创建、删除、重命名、设置音量/平移、静音、独奏、手臂 |
| 外汇 | 添加/删除插件,获取/设置参数,绕过/启用 |
| 路由 | 创建/删除发送,设置发送量 |
| MIDI | 创建MIDI项目,插入音符 |
| 物品 | 删除、移动、拆分媒体项目 |
| 标记 | 添加标记和区域 |
| 撤销 | 撤消/重做任何操作 |
命令行界面
python mcp_server.py # Run MCP server (normal usage — Claude does this)
python mcp_server.py install # Auto-configure everything
python mcp_server.py uninstall # Remove all config
python mcp_server.py check # Diagnose issues配置
所有设置都是环境变量。默认设置适用于大多数设置。
| 变量 | 默认值 | 描述 |
|---|---|---|
REAPER_MCP_IPC_DIR | ~/.reaper-mcp | IPC文件目录 |
REAPER_MCP_POLL_INTERVAL | 0.03 | 轮询间隔(秒) |
REAPER_MCP_TIMEOUT | 10 | 响应超时(秒) |
REAPER_RESOURCE_PATH | *(自动检测)* | 覆盖REAPER的资源目录 |
故障排除
跑 python mcp_server.py check -它测试每个组件,并告诉您到底出了什么问题。
| 问题 | 修复 |
|---|---|
| 超时错误 | 在REAPER中运行侦听器:操作>显示操作列表>查找 reaper_mcp_listener >快跑 |
| 找不到插件 | 使用REAPER FX浏览器中的名称。内置: ReaEQ, ReaComp, ReaDelay |
| 曲目名称模糊 | 更具体地说——“Kick”匹配“Kick In”和“Kick Out” |
| MCP服务器未显示 | 运行 python mcp_server.py install 然后重启克劳德 |
安全
- 仅限本地 --所有通信都是通过本地文件进行的,没有网络
- 仅限所有者权限 --IPC目录为
700在Unix上 - 原子写入 --temp文件+重命名可防止部分读取
- 行动对抗主义者 --Lua监听器拒绝未知命令
- 输入验证 --尺寸限制、深度限制、数值夹紧
建筑
为什么选择基于文件的IPC? REAPER的Lua不能可靠地运送luasocket。30Hz的文件轮询速度非常快,可以在任何地方工作。您可以通过自己读取JSON文件进行调试。
为什么不是OSC? MCP提供Claude类型化、描述的工具接口。Claude知道每个工具的作用以及何时使用它——不需要映射表。
贡献
欢迎捐款。请先打开一个问题进行讨论。
添加新命令:
- 在中添加处理程序
reaper_listener.lua(自动添加到列表中) - 添加
Tool在mcp_server.py - 使用REAPER进行测试
