Ableton Live音乐制作助手

AI驱动的音乐制作助手,通过自然语言控制Ableton Live,实现音乐创作的自动化。

  • by ckelimarks
  • Python
  • 本地部署
  • 18 星标
  • 更新于
在 GitHub 查看 ckelimarks/cursorforableton

使用说明

Ableton MCP-“Ableton Live的光标”

原型小时#02 🎬 记得记录下来

AI驱动的音乐制作助手,让您使用自然语言从Claude Code控制Ableton Live。


愿景

不要点击Ableton:

You → Ableton (manual)

您使用克劳德代码:

You → Claude Code → MCP Server → Ableton Live

示例会话:

You: "Create a lo-fi hip hop beat in Cm"

Claude Code:
- Creates 4 MIDI tracks (drums, bass, chords, melody)
- Generates chord progression (Cm - Ab - Bb - G7)
- Adds bassline following the chords
- Creates simple drum pattern
- Sets BPM to 85

You: "Make the chords more jazzy"

Claude Code:
- Adds 7th and 9th extensions
- Adjusts voicings
- Maybe adds some swing

一切都来自谈话。没有点击。全面的上下文意识。


为什么MCP比Max更适合直播

MCP服务器获胜:

  • Claude Code成为你的界面(你已经住在那里了)
  • 完全的Claude推理能力(不限于Max的JavaScript)
  • 保持对话背景(“让和弦更黑暗”)
  • 更简单的迭代(Python/TypeScript vs Max补丁)
  • 文件系统访问(读取项目、示例、预设)
  • 多项目意识

Live的最大值为:

  • 更集成,但更难构建
  • 人工智能能力有限(仍需要API调用)
  • 更难调试和迭代
  • 锁定Ableton的UI范式

建筑

Claude Code (your interface)
    ↓
MCP Server (Python/TypeScript)
    ↓
OSC Protocol (communication layer)
    ↓
Ableton Live (the DAW)

通信:OSC(开放式声音控制)

  • 推荐方法 -从这里开始
  • 使用 AbletonOSC: https://github.com/ideoforms/AbletonOSC
    • 通过OSC控制Ableton的Python库
    • 清洁的API,文件齐全
    • 主动维护
    • 非常适合MCP服务器后端
  • 双向通信
  • 快速、简单的协议
  • 几乎可以控制一切

退路: Python远程脚本(更强大但更脆弱)


MCP暴露工具

项目管理:

  • get_project_info() -曲目、剪辑、设备、BPM、密钥
  • get_track_list() -所有带有名称和类型的曲目
  • create_midi_track(name) -添加新的MIDI曲目

MIDI生成:

  • add_chord_progression(track, key, progression) -生成和弦
  • generate_melody(track, scale, rhythm) -创建旋律线
  • add_notes(track, clip, notes) -插入原始MIDI音符
  • create_drum_pattern(track, style) -鼓编程

组织机构:

  • organize_tracks() -按类型、颜色代码分组
  • rename_tracks(pattern) -批量重命名
  • color_code_tracks(scheme) -应用配色方案
  • group_tracks(tracks, name) -创建曲目组

混合:

  • adjust_mix(instructions) -“让鼓更安静”
  • set_volume(track, db) -精确音量控制
  • add_device(track, device_name) -添加效果/工具
  • mute_track(track) / solo_track(track)

导航:

  • jump_to_clip(track, scene) -关注特定片段
  • select_track(name) -按名称选择
  • play() / stop() / record() -运输控制

构建阶段

第一阶段:基本MCP(2-4小时)-从这里开始

目标: 建立沟通和基本控制

任务:

  • 安装AbletonOSC(pip install AbletonOSC)
  • 在Ableton中安装MIDI远程脚本(AbletonOSC附带)
  • 用Python构建基本的MCP服务器
  • 实施核心工具:
    • get_project_info()
    • create_midi_track(name)
    • add_notes(track, clip, notes)
    • get_tracks()
  • 测试:“在轨道1上创建C大调音阶”

成功标准:

  • Claude Code可以看到Ableton的当前状态
  • 可以创建轨迹和添加注释
  • 双向沟通工作

第二阶段:生产(4-6小时)

目标: 音乐理论与生成

任务:

  • 弦级数发生器(理论发动机)
  • 旋律生成器(感知音阶)
  • 节奏模式生成器
  • 低音线发生器(跟随和弦)
  • 音乐理论知识库

要添加的工具:

  • generate_chord_progression(key, style, bars)
  • generate_melody(scale, rhythm_pattern)
  • add_bassline(chord_track)
  • create_drum_pattern(style, bars)

成功标准:

  • “在Bb中创造爵士乐进程”作品
  • 生成音乐正确的内容
  • 遵循音乐理论规则

第三阶段:情境感知(6-8小时)

目标: 了解项目中已有的内容

任务:

  • 深入了解当前项目状态
  • 分析现有MIDI内容
  • 提出上下文建议
  • 了解排列结构

要添加的工具:

  • analyze_project() -已经有什么了
  • suggest_next_element() -“这需要一个反旋律”
  • identify_key() -从现有MIDI确定密钥
  • find_gaps() -安排中缺少什么

成功标准:

  • 克劳德了解音乐背景
  • 建议适合现有音乐
  • 可以继续/扩展您已经开始的工作

第四阶段:高级(进行中)

目标: 生产级特征

思想:

  • 音频分析(分析样本)
  • 样本组织(标记和搜索样本)
  • 模板创建(保存配置)
  • 混合助剂(混合建议)
  • 编排助理(结构歌曲)
  • 样式转换(将样式从一个项目应用到另一个项目)

技术栈

MCP服务器:

  • 语言:Python(推荐-更好的音乐库)
  • Ableton控制: AbletonOSC - https://github.com/ideoforms/AbletonOSC
  • 音乐理论: music21 (Python)或自定义
  • MCP-SDK: @modelcontextprotocol/sdk python

Ableton通讯:

  • 主要的,重要的 AbletonOSC(为您处理OSC协议)
  • 安装: pip install AbletonOSC
  • 需要:安装了MIDI远程脚本的Ableton Live(随AbletonOSC一起提供)

可选:

  • MIDI文件生成: mido python
  • 音乐理论: mingus 或 music21

入门指南

第一步:安装AbletonOSC

pip install AbletonOSC

这将安装:

  • 用于控制Ableton的Python库
  • Ableton的MIDI远程脚本(遵循安装说明)

步骤2:构建基本MCP服务器

# Example structure
from mcp.server import Server
from abletonosc import AbletonOSC

server = Server("ableton-mcp")
ableton = AbletonOSC()

@server.tool()
def create_midi_track(name: str):
    """Create a new MIDI track"""
    ableton.create_midi_track(name)
    return f"Created track: {name}"

@server.tool()
def get_tracks():
    """Get list of all tracks"""
    tracks = ableton.get_tracks()
    return tracks

步骤3:连接到Claude Code

添加到克劳德代码MCP配置:

{
  "ableton": {
    "command": "python",
    "args": ["path/to/ableton_mcp_server.py"]
  }
}

第四步:测试

You in Claude Code: "Create a track called 'Piano'"
Claude: [Uses create_midi_track tool]
Ableton: [Track appears]

成功指标

第一阶段:

  • 可以从Claude Code创建曲目
  • 可以以编程方式添加MIDI音符
  • 双向沟通工作

第二阶段:

  • 产生音乐上正确的和弦进行
  • 创建适合音阶/琴键的旋律
  • 鼓的图案听起来不错

第三阶段:

  • Claude了解项目背景
  • 建议适合现有音乐
  • 可以扩展/完成音乐创意

资源

Ableton控制(主要):

音乐理论:

MCP:

其他OSC资源(如果需要):


当前状态

第一阶段:基础✅ 完成

  • OSC通信工作
  • 音乐理论引擎已实现
  • 12个CLI命令可用
  • 和弦进行、旋律、鼓声

第二阶段:使其成为真正的代理人🚧 计划的 看 第2阶段计划.md 详细的路线图。

接下来是什么:

  1. 实现可工作的MCP服务器(将CLI功能包装为工具)
  2. 添加上下文感知(让Claude查看项目状态)
  3. 连接到克劳德代码
  4. 测试自然语言控制:“在D小调中创造低音节拍”

区别:

  • 现在(CLI): python3 ableton.py chord-progression C
  • 第二阶段(代理): 告诉克劳德“创造一个冷节奏”,它就会决定+执行

创建: 2026年1月15日 状态: ✅ 工作原型(第一阶段完成) 原型小时数: 第02集-录制! 会话摘要: 有关完整详细信息,请参阅SESSION-SUMMARY.md

快速开始

# Install dependencies
pip install python-osc mcp

# Test connection (make sure Ableton is running with AbletonOSC enabled)
python3 ableton.py test

# Generate a chord progression
python3 ableton.py chord-progression C

# Create a golden ratio melody
python3 ableton.py phi-melody C

# Add hi-hats
python3 ableton.py add-hihats 0 0 4

# See all commands
python3 ableton.py help

有关构建内容的完整文档,请参阅SESSION-SUMMARY.md!

这是“DAW光标”的开始🎹