Skip to main content
Glama

hellyee

通过与 Claude 对话在 Ableton Live 里创作音乐——它靠实际读取电平表来混音和做母带。

其他 AI↔Ableton 桥接方案只是把一组工具交给模型。hellyee 做的是闭环:测量真实输出电平、调整、再测量——另外它还附带一个技能,教 Claude 怎么 制作,而不只是知道这些工具是干什么的。从对话开始,完成作曲、声音设计、自动化、编排、混音,以及一整首曲子的母带。

License: MIT Live 11 · 12 MCP Python 3.10+


you  →  "balance the mix — kick on top, then master it"

Claude →  plays the drop · reads every track's meter · adjusts faders ·
          measures again until it converges · loads EQ → Glue → Limiter ·
          drives the limiter by measurement · reports: "peak 0.835,
          breakdown-to-drop dynamic 0.23 — the drop still hits"

它能做什么

轨道与片段

创建 MIDI/音频轨道,重命名、复制、删除。创建片段、触发片段、设置循环点。

MIDI

写入、读取、替换和清除音符。量化时可以带一个 strength 参数——Live 自带的量化对话框并没有这个功能。

声音设计

可访问每个 Live 设备的所有参数——Wavetable 的 93 个参数、EQ Eight 的全部算法、滤波器和包络。

设备

搜索 Live 浏览器的任何乐器、效果或 preset,并加载到任何轨道上。

混音

读取真实输出电平表,通过测量而不是瞎猜来平衡。

编曲

读取现有歌曲的结构,并在时间线上放置片段,构建自己的编排。

自动化

写入参数包络——像是音乐的滤波扫描,或者任何随时间变化的内容。

主总线 Ab

在主轨上加载并控制设备。

乐理

13 个音阶、14 种和弦类型、key-aware 音高拼写(F 小调给你 Ab,而不是 G#)。

音频输入

将哼唱的旋律变成 MIDI,或将语音指令变成文字。

一共 48 个工具。完整列表在下方。

对比其它方案

好的替代方案确实存在——该给的认可给到。hellyee 的差异点在于闭环和技能层:

hellyee

ahujasid/ableton-mcp

jpoindexter/ableton-mcp

轨道 · 片段 · 音符 · 浏览器加载

在 Arrangement 视图里创建完整歌曲

参数自动化包络

以测量为驱动的混音(读电平表 → 推 fader → 收敛)

以测量为驱动的母带链条

有强度的量化(保留 groove 画面)

调性感知的乐理(F 小调是 Ab,不是 G#

哼唱转 MIDI · 语音指令

一个教 AI 如何制作音乐

REST API · multi-LLM · Max for Live

如果你想要一个经过最多考验的方案,ahujasid 的版本被使用最广泛。如果你想让模型 完成 一首完整的歌——自动化、依靠读取电平表混音、总线上做母带——五个正是 hellyee 的方向。

它是怎么工作的

Claude 将 hellyee 作为子进程启动,并且通过 MCP 与它对话。hellyee 通过 OSC 和 AbletonOSC 交流,后者是一个运行在 Live 自身 Python 环境里的 remote script,并驱动 Live Object Model。

自带版的 AbletonOSC 已经暴露很多东西,但没有浏览器、Master 轨道或 arrangement clips。hellyee 提供了一些 handler 补上了这三样,还有一个自动安装它们的 patcher。


安装

1. 先运行安装程序

如果你装了 uv —— 完全不需要手动处理任何 Python 环境:

uvx hellyee setup

否则:

pip install hellyee
hellyee setup
curl -LsSf https://astral.sh/uv/install.sh | sh     # macOS · Linux
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"   # Windows

uv 会自己下载 Python,所以你完全不用安装或管理 Python。

hellyee setup 会先下载 AbletonOSC,打上 browser / master / arrangement handler 的补丁,并写入你的 Claude 配置。它是一次幂等操作——随时可以再跑。给 Claude Desktop 使用 --client desktop,或者 --client both

需要 audio 功能(哼唱转 MIDI、语音会吗)?它们会增加约 380 MB,所以是选装:

pip install "hellyee[audio]"

2. 设置 Live

这一步要手动来——Live 没有 API 能让 Ableton 自动启用控制面。

  1. Quitted 并重新打开 Live。 remote script 只会在启动时扫描。

  2. 打开设置:

    • Live 12: 设置 → Link, Tempo & MIDI

    • Live 11: 偏好设置 → Link/Tempo/MIDI

    • macOS 按 Cmd + , · Windows 按 Ctrl + ,

  3. Control Surface 表格里,第一个空行里选 AbletonOSC

  4. Input(输入)Output(输出) 都保持 None —— 它通过局域网通信,不是使用 MIDI 端口。

  5. 你应该能在 Live 状态栏看到这条消息写:AbletonOSC: Listening for OSC on port 11000

只需要启动前检查一次,Live 能记住。

3. 这个 skill(技能)

hellyee setup 还会在你 .mcp.json 旁边的 .claude/skills/hellyee/ 下安装一个 skill。它会教 Claude 怎么把这些工具用好——操作顺序、参数约定、测量方法,以及 Live 那几处会一个错都不知道的错误。

Claude Code 会自动载入它。这个 skill 本身也值得你自己读一遍,相当于一本地图册,说明哪些地方会出问题、为什么来。

4. 验证

打开 Live:

hellyee doctor     # connection, handlers, optional features
hellyee smoke      # full end-to-end test, cleans up after itself

smoke 会创建一个真轨道、写入并量化音符、加载一个真实器(Instrument),最后把轨道删掉。给 --keep 可以保留它。


使用它

说出你想做什么即可。Claude 会先读取当前 set 的状态,然后开始做。

"make a 4-bar house beat at 124 BPM"
"add a MIDI track called Bass and put Wavetable on it"
"write a rolling bassline in F minor, offbeat eighths"
"quantize that to 16ths at 0.7 strength so it still breathes"
"put an Auto Filter on the bass and close it down a bit"
"this lead is harsh — round off the highs and slow the attack"
"balance the mix, kick should sit on top"
"arrange this into a full track: intro, build, drop, breakdown, drop, outro"
"sweep the filter open across the last 8 bars before the drop"

几个值得知道的约定

时间单位是拍子。 一条 4/4 小节默认就是 4 拍,一个 16 分音符就是 0.25

音高用法是 Live 的显示约定:C3 = 60。 标准 MIDI 记谱器里那叫 C4. helly 跟随 Live 以保证 Claude 写的音符和你看到的是一致的。

设备参数用百分比设置,而不用单位。 但自动化细节请 percent(对整个参数范围 0–100)来设?工具会把得到 UI display 值回传给你,所以你能确认实际发生了。


工具列表

分组

工具

连接

check_connection

Song

get_song_status ·set_layout`

歌曲

get_song_status·set_tempo·transport·create_scene·fire_scene`

轨道

create_track · Manual: ... 容易

片段

create_clip · delete_clip · fire_clip · stop_clip · set_clip_properties

音符

get_clip_notes · add_notes · replace_notes ... clearer?

乐理

get_scale_notes · get_chord_notes · snap_notes_to_scale · get_drum_map

设备

list_track_devices · list_device_parameters · set_device_parameter · delete_device

浏览器

browser_categories · search_browser · load_device · load_device_by_uri

混音

measure_track_level · get_master_meter

主输出

list_master_devices · list_master_device_parameters · set_master_parameter · load_master_device

编配

place_in_arrangement · get_arrangement_clips · clear_arrangement_track · delete_arrangement_clip · show_arrangement_view

自动化

automate_clip · clear_clip_automation

音频

notes_from_audio · transcribe_audio


音频输入

Claude 的 API 本身不收音频,所以音频是本地之外理,然后以文字或 JSON 交给模型:

你提供

用什么处理

Claude 收到

一句语音指令

Whisper

文本

一段哼唱的旋律

librosa.pyin 音高追踪

一段音符列表

notes_from_audio 只能单音——也就是哼唱、单音旋律。它不会去转录和弦或整个 mix;想处理这类内容请用复音模型,例如 basic-pitch

在 Apple 芯片上,pip install mlx-whisper`,转录会快很多;helly 会在检测到时优先用它。首次运行会下载一个模型(约 500 MB)。


已知的限制

Claude 无法听到声音。 它可以通过 Live 的电平表测量输出电平,并推理频率范围,但无法判断音色。EQ 和声音设计的选择来自惯例和测量——最终决定权在您的耳朵。

第三方插件是不透明的。 Live 不会向 API 暴露 VST/AU 参数,除非您手动暴露它们。Serum、Vital 等插件可以加载和播放,但 Claude 只能看到一个参数:Device On。要解锁插件,请点击其设备标题上的 配置,点击您希望可控制的旋钮,然后退出配置——这些参数就会显示出来。

电平表以约 10 Hz 运行。 AbletonOSC 以 100 毫秒的周期处理,因此电平表测量的是持续电平,而不是瞬态峰值。

量化是客户端操作。 音符被读取、在 Python 中吸附、再写回。这就是 strength 存在的原因——但它需要一次往返,而不是即时完成。

自动化必须从会话片段开始。 Live 只在会话片段上创建包络,因此 hellyee 在那里写入自动化,并在片段被放置时将其带入编排。要在不同段落中变化自动化,请编写多个片段变体,并在每个段落中放置正确的变体。

会话片段会覆盖编排。 如果某个轨道曾经触发过会话片段,它将忽略编排片段,直到按下“返回编排”按钮。hellyee 会处理这一点,但当某些内容静默播放时,值得了解这一点。

没有撤销分组。 每个操作都是 Live 撤销历史中的一个独立步骤。


开发

hellyee/
  osc.py            OSC client — persistent socket, request/response matching
  core.py           Live operations as plain functions (no Claude dependency)
  music.py          scales, chords, quantization, key-aware spelling
  audio.py          audio → notes, speech → text
  mcp_server.py     MCP tool layer
  cli.py            connection tests and diagnostics
abletonosc_patch/
  browser.py        adds browser access to AbletonOSC
  master.py         adds master track + arrangement to AbletonOSC
  setup_cli.py      installer: download, patch, configure Claude
abletonosc_patch/
  → shipped inside the wheel as hellyee/_patch
.claude/skills/hellyee/
  SKILL.md          how to drive the tools; loaded by Claude Code

正在开发 hellyee 本身:

git clone https://github.com/guvense/hellyee.git && cd hellyee
uv sync --extra audio          # or: pip install -e ".[audio]"
hellyee setup                  # re-applies the patch from your working copy

core.py 包含逻辑,并且对 Claude 一无所知,因此它可以独立测试,并可从任何前端驱动。mcp_server.py 是它之上的一层薄薄的工具定义。

⚠️ 正在编辑 abletonosc_patch/ 中的任何内容? 这些文件在 Live 内部运行,而 Live 嵌入了 Python 3.7。海象运算符(:=)、内置泛型(list[str])和 X | Y 联合类型将无法解析。补丁程序不会为您检查这一点——但 python -c "import ast; ast.parse(open('file').read(), feature_version=(3,7))" 可以。

热重载。 编辑已加载的处理程序不需要重启 Live——发送 /live/api/reload,它会在几秒内获取更改。添加模块确实需要重启,这就是浏览器和主处理程序各自位于一个文件中的原因。

贡献

欢迎提交问题和拉取请求。有用的方向:

  • 复音音频转 MIDI(basic-pitch

  • 返回轨道和发送

  • Windows 测试(在 macOS 上开发)

  • 用于技能的流派模板和编排模式

致谢

基于 Daniel Jones 的 AbletonOSC 构建,它完成了通过 OSC 暴露 Live 对象模型的艰巨工作。

许可证

MIT

hellyee

-
license - not tested
-
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
3Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

  • MCP server for Producer/Riffusion AI music generation

  • GibsonAI MCP server: manage your databases with natural language

  • MCP server for generating rough-draft project plans from natural-language prompts.

View all MCP Connectors

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/guvense/hellyee'

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