hellyee
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@hellyee@hellyee create a new MIDI track with a piano and add a melody"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
hellyee
Make music in Ableton Live by talking to Claude — it mixes and masters by actually reading the meters.
Other AI↔Ableton bridges hand the model a set of tools. hellyee closes the loop: it measures real output levels, adjusts, and measures again — and it ships a skill that teaches Claude how to produce, not just what the tools do. Compose, sound-design, automate, arrange, mix and master a full track from a conversation.
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"What it does
Tracks & clips | Create MIDI/audio tracks, rename, duplicate, delete. Create clips, fire them, set loop points. |
MIDI | Write, read, replace and clear notes. Quantize with a |
Sound design | Full parameter access to every Live device — 93 parameters on Wavetable, all of EQ Eight, filters, envelopes. |
Devices | Search Live's browser and load any instrument, effect or preset onto any track. |
Mixing | Read real output meters and balance by measurement, not by guessing. |
Arrangement | Read an existing song's structure, and place clips on the timeline to build your own. |
Automation | Write parameter envelopes — filter sweeps through a build, anything that moves over time. |
Master bus | Load and control devices on the master track. |
Music theory | 13 scales, 14 chord types, key-aware note spelling (F minor gives you |
Audio in | Turn a hummed melody into MIDI, or a spoken command into text. |
48 tools in total. Full reference below.
How it compares
Good alternatives exist — credit where due. What sets hellyee apart is the closed loop and the skill layer:
hellyee | |||
Tracks · clips · notes · browser loading | ✓ | ✓ | ✓ |
Building full songs in Arrangement View | ✓ | ✓ | — |
Parameter automation envelopes | ✓ | — | ✓ |
Mixing by measurement (meter → fader → converge) | ✓ | — | — |
Mastering chain driven by measurement | ✓ | — | — |
Quantize with strength (groove preserved) | ✓ | — | — |
Key-aware theory (F minor spells Ab, not G#) | ✓ | — | — |
Hum-to-MIDI · voice commands | ✓ | — | — |
A skill teaching the AI how to produce | ✓ | — | — |
REST API · multi-LLM · Max for Live | — | — | ✓ |
If you want the most battle-tested option, ahujasid's is the most widely used. If you want the model to finish a track — automation, measured mix, mastered master bus — that is what hellyee is for.
How it works
Claude launches hellyee as a subprocess and talks to it over MCP. hellyee
speaks OSC to AbletonOSC, a remote
script running inside Live's own Python, which drives the Live Object Model.
Stock AbletonOSC exposes a lot, but not the browser, the master track, or arrangement clips. hellyee ships handlers that add all three, plus a patcher that installs them.
Install
1. Run the installer
If you have uv — no Python setup needed at all:
uvx hellyee setupOtherwise:
pip install hellyee
hellyee setupcurl -LsSf https://astral.sh/uv/install.sh | sh # macOS · Linux
powershell -c "irm https://astral.sh/uv/install.ps1 | iex" # Windowsuv downloads its own Python, so you never install or manage one.
hellyee setup downloads AbletonOSC, patches it with the browser / master /
arrangement handlers, and writes your Claude config. It is idempotent — run it
again any time. Use --client desktop for Claude Desktop, or --client both.
Want the audio features (hum-to-MIDI, voice commands)? They add ~380 MB, so they are opt-in:
pip install "hellyee[audio]"2. Set up Live
This step is manual — Live has no API for enabling its own control surfaces.
Quit and reopen Live. Remote Scripts are only scanned at startup.
Open settings:
Live 12: Settings → Link, Tempo & MIDI
Live 11: Preferences → Link/Tempo/MIDI
Cmd + ,on macOS ·Ctrl + ,on Windows
In the Control Surface table, pick AbletonOSC in the first free row.
Leave Input and Output as
None— it communicates over the network, not MIDI ports.You should see
AbletonOSC: Listening for OSC on port 11000in Live's status bar.
Once only. Live remembers it.
3. The skill
hellyee setup also installs a skill into .claude/skills/hellyee/ next to
your .mcp.json. It teaches Claude how to drive these tools well — the ordering
rules, the parameter conventions, the measurement method, and the handful of
Live behaviours that fail silently with no error to follow.
Claude Code picks it up automatically. It is worth reading yourself: it is a condensed map of what goes wrong and why.
4. Check it
With Live open:
hellyee doctor # connection, handlers, optional features
hellyee smoke # full end-to-end test, cleans up after itselfsmoke creates a real track, writes and quantizes notes, and loads an
instrument, then deletes the track. Pass --keep to leave it in place.
Using it
Say what you want. Claude reads the set's state first, then acts.
"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"Conventions worth knowing
Time is in beats. One 4/4 bar is 4 beats; a 16th note is 0.25.
Pitches use Live's display convention: C3 = 60. Standard MIDI notation calls that C4. hellyee follows Live so the note Claude writes matches the note you see.
Device parameters are set by percent, not by unit. Live's raw values live on
internal scales that are not what the UI shows — Auto Filter's Frequency runs
20–135 but reads as "265 Hz". Set parameters with percent (0–100 across the
parameter's own range); the tool reports back the displayed value so you can
confirm what actually happened.
Tools
Group | Tools |
Connection |
|
Song |
|
Tracks |
|
Clips |
|
Notes |
|
Theory |
|
Devices |
|
Browser |
|
Mixing |
|
Master |
|
Arrangement |
|
Automation |
|
Audio |
|
Audio input
Claude's API does not accept audio, so audio is processed locally and reaches the model as text or JSON:
You provide | Processed with | Claude receives |
A spoken command | Whisper | Text |
A hummed melody |
| A note list |
notes_from_audio is monophonic only — humming, single-note lines. It will
not transcribe chords or a full mix; use a polyphonic model such as
basic-pitch for that.
On Apple Silicon, pip install mlx-whisper makes transcription much faster;
hellyee prefers it when present. The first run downloads a model (~500 MB).
Known limitations
Claude cannot hear. It can measure output levels through Live's meters and reason about frequency ranges, but it cannot judge tone. EQ and sound-design choices come from convention and measurement — the final call is your ears.
Third-party plugins are opaque. Live does not expose VST/AU parameters to
the API until you expose them by hand. Serum, Vital and friends will load and
play, but Claude sees one parameter: Device On. To unlock a plugin, hit
Configure on its device header, click the knobs you want controllable, then
exit Configure — those parameters then appear.
Metering runs at ~10 Hz. AbletonOSC processes on a 100 ms tick, so meters measure sustained level, not transient peaks.
Quantize is client-side. Notes are read, snapped in Python, written back.
That is why strength exists — but it costs a round trip rather than being
instant.
Automation must start in a session clip. Live only creates envelopes on session clips, so hellyee writes automation there and carries it into the arrangement when the clip is placed. To vary automation across sections, write several clip variants and place the right one in each.
Session clips override the arrangement. If a track has ever had a session clip fired, it ignores arrangement clips until Back to Arrangement is pressed. hellyee handles this, but it is worth knowing when something plays silently.
No undo grouping. Each operation is its own step in Live's undo history.
Development
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 CodeWorking on hellyee itself:
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 copycore.py holds the logic and knows nothing about Claude, so it is testable on
its own and drivable from any front end. mcp_server.py is a thin layer of
tool definitions over it.
⚠️ Editing anything in
abletonosc_patch/? Those files run inside Live, which embeds Python 3.7. Walrus operators (:=), builtin generics (list[str]) andX | Yunions will not parse. The patcher does not check this for you — butpython -c "import ast; ast.parse(open('file').read(), feature_version=(3,7))"does.
Hot reload. Editing an already-loaded handler does not need a Live restart —
send /live/api/reload and it picks up the change in seconds. Adding a new
module does require a restart, which is why browser and master handlers each
live in one file.
Contributing
Issues and pull requests welcome. Useful directions:
Polyphonic audio-to-MIDI (
basic-pitch)Return tracks and sends
Windows testing (developed on macOS)
Genre templates and arrangement patterns for the skill
Credits
Built on AbletonOSC by Daniel Jones, which does the hard work of exposing Live's Object Model over OSC.
License
hellyee
This server cannot be installed
Maintenance
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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