Ableton音乐制作辅助工具

一个基于ableton-js的MCP服务器,用于实时交互和控制Ableton Live的Arrangement View,帮助音乐制作人自动化处理音乐制作中的各种操作。

  • by xiaolaa2
  • TypeScript
  • 本地部署
  • 93 星标
  • 更新于
在 GitHub 查看 xiaolaa2/ableton-copilot-mcp

使用说明

艾博顿副驾驶

基于MCP(模型上下文协议)的服务器 艾博顿js 与Ableton Live的Arrangement View进行实时交互和控制,该视图致力于协助音乐制作人进行音乐制作。

🎯 备注

作为一名音乐制作人,我对使用Ableton进行音乐创作有一些了解。在创作过程中,我们经常需要处理各种繁琐的操作,如人性化音符属性、合并音符、将一个音轨录制到另一个音轨等。以前,我们只能依靠主机DAW提供的功能来进行这些操作。然而,随着大型语言模型和MCP的出现,我们现在有可能让人工智能帮助我们实现自动化。尽管人工智能直接生成音符或创建一首完整的歌曲仍然不现实(它不能生成一首听起来不错的歌曲),但让人工智能协助我们进行辅助操作提供了一种新的可能性。

🎥 演示

这是一个简单的MIDI操作演示视频。

https://github.com/user-attachments/assets/8d635c4c-a1f2-44be-93ae-062038d14c71

🚀 特性

🎵 歌曲控制

  • 获取基本歌曲信息(根音、音阶名称、节奏、歌曲长度等)
  • 获取所有曲目的列表
  • 创建MIDI、音频和返回曲目
  • 删除和复制曲目

🎹 航迹管理

  • 将所有剪辑添加到曲目中
  • 在排列视图曲目中创建空MIDI剪辑
  • 根据提供的示例文件路径在曲目中创建音频片段
  • 设置曲目属性(静音、颜色、名称、手臂、独奏等)
  • 将MIDI片段复制到指定曲目

🎼 剪辑操作

  • 在钢琴滚动视图中获取片段
  • 获取并管理剪辑中的所有笔记
  • 添加、删除和替换剪辑中的注释
  • 设置剪辑属性(名称、颜色、循环、loop_start、loop_end等)

🎧 音频操作

  • 支持根据时间范围录制曲目内容

🔌 设备管理

  • 加载音频效果、乐器和插件
  • 修改设备参数
  • 浏览库中的可用设备

📝 状态管理

  • 操作历史跟踪和详细记录
  • 支持操作回滚(目前仅支持笔记操作)
  • 浏览并恢复以前的状态

📝 待办事项列表

  • 支持自动包络调整
  • 支持更多快照类型(跟踪属性、设备参数等)

⚠️ 警告

  • AI直接操纵MIDI片段可能会导致原始音符丢失,并且无法通过Ctrl+Z撤消。请谨慎操作。如果需要,您可以要求AI帮助您回滚笔记操作。

📥 安装

先决条件

  • Node.js 环境:确保安装了Node.js(建议使用v20+) npx 命令可用

    🔗 下载: Node.js官方网站

安装步骤

1.安装AbletonJS MIDI远程脚本

选择 一 以下三种安装MIDI远程脚本的方法:

  • 方法1:单线安装(推荐)

    npx @xiaolaa2/ableton-copilot-mcp --install-scripts
    # or use the short form
    npx @xiaolaa2/ableton-copilot-mcp -is
    
  • 方法2:工具辅助安装

    1. 首先,启动ableton副驾驶mcp(见下面的用法部分)
    2. 让AI助手或手动调用MCP工具 init_ableton_js 自动完成安装
  • 方法3:手动安装

    1. 在Ableton用户库中创建一个名为“远程脚本”的文件夹:
      • 窗户: C:\Users\[username]\Documents\Ableton\User Library\Remote Scripts
      • 雨衣: /Users/[username]/Music/Ableton/User Library/Remote Scripts
    2. 从下载MIDI远程脚本 艾博顿js 项目
    3. 复制下载的 midi-script 将文件夹移动到上面的位置
    4. 将其重命名为 AbletonJS

🔧 用法

快速开始

  1. 启动Ableton Live

  2. 启用AbletonJS控制界面

    • 打开Ableton Live首选项: Preferences → Link/MIDI
    • 在 MIDI 选项卡,找到 Control Surface 章节
    • 选择 AbletonJS 从下拉菜单中

    Figure 1: Enabling AbletonJS Control Surface in Ableton Live Configuration

  3. 使用MCP客户端连接

    以下客户端可用作MCP端点:

客户端配置

光标配置示例

将以下配置添加到光标设置中:

"ableton-js-mcp": {
    "command": "npx",
    "args": [
        "-y",
        "@xiaolaa2/ableton-copilot-mcp"
    ]
}

对于最新版本:

"ableton-js-mcp": {
    "command": "npx",
    "args": [
        "-y",
        "@xiaolaa2/ableton-copilot-mcp@latest"
    ]
}

自定义存储路径(可选)

您可以使用指定自定义数据存储位置 BASE_PATH 环境变量:

"ableton-js-mcp": {
    "command": "npx",
    "args": [
        "-y",
        "@xiaolaa2/ableton-copilot-mcp"
    ],
    "env": {
        "BASE_PATH": "D:\\ableton_copilot_mcp"
    }
}

💡 小贴士:存储路径用于保存日志文件、操作历史和状态快照

✅ 兼容性测试

兼容性主要取决于版本支持 艾博顿js 图书馆。

Ableton Live版本 测试状态
12.1.10 ✅ 测试和工作
11.x ⚠️ 尚未测试
10.x ⚠️ 尚未测试

🤝 贡献

欢迎提出问题和意见。请通过以下方式提交问题或建议 GitHub问题.

📄 许可证

该项目根据 MIT许可证.

⚠️ 免责声明

这是第三方集成,不是由Ableton制作的。