Skip to main content
Glama

Ableton MCP Extended

通过 Claude 或 Cursor 等 AI 助手,使用自然语言控制 Ableton Live。本项目提供了一个强大的模型上下文协议 (MCP) 服务器,可将自然语言命令转换为 Ableton Live 会话中的精确操作。

License: MIT Python 3.10+ Ableton Live 11+


视频演示:https://www.youtube.com/watch?v=7ZKPIrJuuKk

本工具专为希望简化音乐制作流程、尝试生成式音乐并构建 Ableton Live 自定义集成的制作人、开发者和 AI 爱好者而设计。

你可以将这段对话:

👤 "Create a brief minimalist/neo-classical composition in a style similar to Ólafur Arnalds'. (Ableton MCP) / I've loaded four MIDI tracks called "Noire" and "Noire (2) ["Emotional Felt" presets], "Noire (2) ["Reversed Felt" preset, for ambient background], and "Noire (3) ["Ethereal Felt" preset, also for ambient background]. All loaded with nice piano instruments. You have also a MIDI track called "Strings" with a nice string ensemble instrument loaded. Feel free to add new instruments and effects, if pertinent."
🤖 "Creating MIDI clips... Adding effects... Done!"
👤 "Then, use ElevenLabs MCP to create a spoken-word audio clip (default voice and settings) with a relevant poem in the style of “Jim Morrison” to accompany the composition."  
🤖 "Generating poem... Transforming it into speech... Importing it into your session... Done!"

转化为这段音乐制作会话

https://github.com/user-attachments/assets/d6ef2de5-bdeb-4097-acc0-67d70f7f85b3


主要功能

本项目提供了对 Ableton Live 环境全面的程序化控制。

  • 会话与传输控制:

    • 开始和停止播放。

    • 获取会话信息,包括速度、拍号和轨道数量。

    • 管理场景:创建、删除、重命名和触发。

  • 轨道管理:

    • 创建、重命名 MIDI 和音频轨道,并获取详细信息。

    • 控制轨道属性:音量、声像、静音、独奏和录音预备。

    • 管理轨道分组和折叠状态。

  • MIDI 剪辑与音符操作:

    • 创建并命名指定长度的 MIDI 剪辑。

    • 在剪辑内添加、删除、移调和量化音符。

    • 在单次操作中对多个音符进行批量编辑。

    • 调整剪辑循环参数和跟随动作。

  • 设备与参数控制:

    • 通过 URI 从 Ableton 浏览器加载乐器和效果器。

    • 获取轨道上任何设备的完整参数列表。

    • 使用归一化值(0.0 到 1.0)设置和批量设置设备参数。

  • 自动化与包络:

    • 为剪辑内的任何设备参数添加和清除自动化点。 [此功能尚不完善。]

    • 获取有关现有剪辑包络的信息。

  • 浏览器集成:

    • 导航并列出 Ableton 浏览器中的项目。

    • 直接从浏览器路径或 URI 加载乐器、效果器和采样。

    • 将音频文件直接导入音频轨道或剪辑槽。

  • 语音与音频生成

    • 文本转语音集成:通过 ElevenLabs MCP [已包含] 生成旁白、人声采样或口语元素。

    • 自定义语音创建:克隆语音,为你的轨道增添独特角色。

    • 音效:使用 AI 创建自定义 SFX。

    • 直接导入:生成的音频会立即出现在你的 Ableton 会话中。

  • 自定义工具的可扩展框架

    • 示例:XY 鼠标控制器:演示如何使用 MCP 框架创建自定义 Ableton 控制器。

    • 超低延迟:高性能 UDP 协议实现响应式实时控制。

    • 无限可能:为 Ableton Live 构建你自己的自定义工具和控制器。


快速入门 (5 分钟)

前置要求

  • Ableton Live 11+ (任意版本)

  • Python 3.10 或更高版本

  • Claude Desktop 或 Cursor IDE

1. 获取代码

git clone https://github.com/uisato/ableton-mcp-extended.git
cd ableton-mcp-extended
pip install -e .

2. 安装 Ableton 脚本

  1. 找到你的 Ableton 远程脚本文件夹:

    • Windows: C:\Users\[You]\Documents\Ableton\User Library\Remote Scripts\

    • Mac: ~/Library/Preferences/Ableton/Live [Version]/User Remote Scripts/

  2. 创建文件夹:AbletonMCP

  3. AbletonMCP_Remote_Script/__init__.py 复制到此文件夹中

3. 配置 Ableton

  1. 打开 Ableton Live

  2. 进入 Preferences (偏好设置) → Link, Tempo & MIDI

  3. Control Surface (控制界面) 设置为 "AbletonMCP"

  4. 将 Input/Output (输入/输出) 设置为 "None"

4. 连接 AI 助手

对于 Claude Desktop:

{
  "mcpServers": {
    "AbletonMCP": {
      "command": "python",
      "args": ["C:/path/to/ableton-mcp-extended/MCP_Server/server.py"]
    }
  }
}

对于 Cursor: 在 Settings → MCP 中添加 MCP 服务器,路径相同。

5. 开始创作!

打开你的 AI 助手并尝试:

  • "Create a new MIDI track with a piano" (创建一个带有钢琴的新 MIDI 轨道)

  • "Add a simple drum beat" (添加一个简单的鼓点)

  • "What tracks do I currently have?" (我现在有哪些轨道?)


工作原理

graph TB
    A[You: Natural Language] --> B[AI Assistant]
    B --> C[MCP Server]
    C --> D[Ableton Remote Script]
    D --> E[Ableton Live API]
    E --> F[🎵 Your Music]
    
    G[ElevenLabs AI] --> H[Generated Audio]
    H --> C
  1. 你向 AI 助手发出纯英文命令(例如:"Create a new MIDI track and name it 'Bass'")。

  2. AI 助手理解意图并调用 MCP 服务器中的相应工具。

  3. MCP 服务器 (server.py) 接收工具调用并构建特定的 JSON 命令。

  4. 在 Live 中运行的 Ableton 远程脚本 (init.py) 通过套接字连接接收 JSON 命令。

  5. 远程脚本使用官方 Ableton Live API 执行命令,立即在你的会话中进行更改。


高级功能

用于超低延迟的实时参数控制:

# Install the hybrid server
cp -r Ableton-MCP_hybrid-server/AbletonMCP_UDP/ ~/Remote\ Scripts/AbletonMCP_UDP/

# Try the XY Mouse Controller example
cd experimental_tools/xy_mouse_controller
python mouse_parameter_controller_udp.py

这演示了如何构建:

  • 自定义 Ableton 实时控制器

  • 富有表现力的表演工具

  • 交互式音乐应用程序

此存储库可以与其他 MCP 服务器(例如 ElevenLabs 的服务器)集成,以生成音频并直接导入到你的项目中。

按照 ElevenLabs MCP 服务器的说明进行设置。

更新你的 AI 助手配置以包含这两个服务器。

示例 mcp-config.json:

{
  "mcpServers": {
    "AbletonMCP": {
      "command": "python",
      "args": ["/path/to/ableton-mcp-extended/server.py"]
    },
    "ElevenLabs": {
      "command": "python",
      "args": ["/path/to/elevenlabs_mcp/server.py"],
      "env": {
        "ELEVENLABS_API_KEY": "your-api-key-here"
      }
    }
  }
}

组件概览

本项目包含几个专门的组件:

核心 MCP 服务器

  • 用于可靠 AI 控制的标准 TCP 通信

  • 广泛的 Ableton Live API 集成

  • 兼容 Claude Desktop、Cursor 和 Gemini CLI。

混合 TCP/UDP 服务器

  • 高性能实时参数控制

  • 现场表演的超低延迟

  • 非常适合控制器和交互式工具

ElevenLabs 集成

  • 专业文本转语音生成

  • 自定义语音创建和克隆

  • 直接导入 Ableton 会话

  • 实时 SFX 生成

实验性工具与示例

  • XY 鼠标控制器:演示如何构建自定义 Ableton 控制器的示例

  • 可扩展框架:创建你自己的控制界面的基础

  • 概念验证:展示了 MCP 方法的强大功能和灵活性


文档


社区与支持

  • GitHub Issues:错误报告和功能请求

  • Discussions:分享你的创作并获取帮助

分享你的创作

用你的 AI 生成实验标记我!我很乐意看到社区创作的内容:

YouTube | Instagram | Patreon | Website


下一步计划

  • 修复自动化点放置错误

  • ~~VST 插件支持 - 控制第三方插件 [虽然可以通过“配置”参数功能实现]~~ → 已完成!

  • 编曲视图 - 完整的轨道时间轴控制

  • 硬件集成 - 通过 AI 桥接 MIDI 控制器

  • 高级 AI - 更智能、更好的音乐理解与生成


许可与致谢

本项目采用 MIT 许可证授权 - 详情请参阅 LICENSE

构建于:

灵感来源: 原版 ableton-mcp 项目


为音乐制作社区用心制作 ❤️

如果这个项目对你的创作有所帮助,请考虑给它一个 ⭐ 星标!

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/uisato/ableton-mcp-extended'

If you have feedback or need assistance with the MCP directory API, please join our Discord server