LiveSession MCP
An AI production assistant for Ableton Live. Compose, arrange and mix with Claude (or any MCP client), with real measurements instead of guesses — and work with your Live Sets even when Live is closed.
LiveSession MCP is an independent project. It is not affiliated with or endorsed by Ableton AG; Ableton and Live are trademarks of Ableton AG. It started as a fork of ahujasid/ableton-mcp (MIT).
What it does
| Compose | Chords by symbol or roman numeral, voice-led (close, open, spread, drop 2, shell, rootless, quartal) · melodies with phrase shapes · basslines that follow slash chords · drum patterns · euclidean rhythms and polymeters · motif development (invert, retrograde, augment, sequence, additive...) · a library of 45 named progressions searchable by genre and mood · genre song starters |
| Arrange | Song structure from scenes with locators (clips cut exactly at section ends) · arrangement clips · take lanes · warp markers |
| Sound | Your installed plug-ins by role ("a plate reverb", "a warm compressor") from a scanned catalogue · Live's devices with ready-dialled chain recipes · Drum Rack pads · Simpler · presets · plug-in windows |
| Mix with measurements | Integrated loudness (LUFS), true peak, loudness range, tonal balance, stereo correlation, key — from your actual bounce · match a commercial reference and get the EQ moves applied · gain staging from Live's meters · sidechain · mix snapshots |
| Live's menu | Save, freeze, bounce in place, group, open the export dialog — things Live's API can't do, run through Live's own menu |
| Files (Live closed) | Summarise a Live Set · lint it before sharing (missing samples, plug-ins not installed, tracks routed nowhere...) · diff two versions · export MIDI clips · look inside .adg/.adv presets |
| Safe by design | Every tool is marked read-only or destructive · batches run as one undo step · the set is saved before deleting actions so Live keeps the previous version · a journal of every destructive call |
148 tools in 10 groups, 6 workflow prompts, server instructions for the model. Load only the groups you
need (LIVESESSION_TOOLSETS=core,compose,mix,listen) — fewer tools means better tool choices.
Requirements
- Ableton Live 12 (recommended) or Live 11 — Suite, Standard or Intro
- Windows 10/11 or macOS 12+
- Python 3.10+ and uv (recommended)
Install
1. Add the server to your MCP client. For Claude Desktop / Claude Code, in the MCP config:
{
"mcpServers": {
"livesession": {
"command": "uvx",
"args": ["--from", "livesession-mcp[all]", "livesession-mcp"]
}
}
}
[all] adds listening (loudness analysis) and plug-in scanning. Without extras the core still works.
2. Install the Remote Script into Live (once, and after each upgrade):
uvx --from livesession-mcp livesession-mcp install
3. In Live: restart Live, open Settings → Link, Tempo & MIDI, choose AbletonMCP as a Control Surface (Input and Output: None).
4. Check everything:
uvx --from livesession-mcp livesession-mcp doctor
doctor checks Python, the installed script version, the connection to Live, the optional extras and
your folders, and tells you how to fix anything that isn't right (--json for scripts).
On macOS, allow your MCP client (Claude, Terminal...) in System Settings → Privacy & Security → Accessibility so menu commands and window pictures work.
Try it
- "Start a mizrahi pop song in A minor at 96 BPM."
- "Give me a sad progression for the pre-chorus and write it on the piano with rootless voicings."
- "Take the melody in slot 1 and make a sequence a step higher in the next slot."
- "I exported the mix — how does it compare to this reference? Fix the tonal balance."
- "Lint my project folder before I send it to the mixing engineer."
- "What changed between today's version and the backup from this morning?"
Prompts ready to use: start_a_song, make_a_beat, mix_and_master, analyze_and_improve,
prepare_for_collaboration, sound_design.
Configuration
livesession-mcp config show
livesession-mcp config set listen_dir "D:/Bounces"
livesession-mcp config set toolsets core,compose,mix,listen
livesession-mcp config set backup_before_destructive false
| Setting | Environment variable | Default |
|---|---|---|
listen_dir — where you export bounces for listening |
LIVESESSION_LISTEN_DIR |
~/Music/LiveSession/Listen |
catalog_dir — plug-in catalogue, snapshots, layouts |
LIVESESSION_CATALOG_DIR |
app data folder |
toolsets — groups to expose |
LIVESESSION_TOOLSETS |
all |
backup_before_destructive |
— | true |
host / port of the Remote Script |
ABLETON_HOST / ABLETON_PORT |
localhost / 9877 |
Tool groups: core, compose, arrange, sound, mix, audio, listen, studio, files, advanced.
What Live's API can't do (and what LiveSession does instead)
- Export: no API.
prepare_exportsets the range and opens the dialog;listen_latestanalyses the result. - Save, freeze, bounce, group: no API — run through Live's own menu. Grouping several tracks needs them selected by mouse first (the API selects one track).
- Third-party plug-in parameters: only those exposed in Live (Configure). The catalogue knows every
parameter, and
process_audio_with_pluginsrenders audio through any plug-in offline. - Arrangement automation and tempo automation: not reachable — use clip automation.
- Detaching a groove from a clip: not possible through the API; prefer
swing_clip. - Open dialogs in Live (including trial reminders) block the script until closed.
Privacy and security
Nothing leaves your computer: no usage data is collected (see TERMS.md). The Remote Script
listens on 127.0.0.1:9877 only and has no authentication — never forward that port. Your MCP client and
model provider handle your prompts under their own terms. See SECURITY.md.
Development
pip install -e ".[dev]"
pytest
ruff check .
python -m MCP_Server.remote_script_install --sync-bundle # after editing AbletonMCP_Remote_Script/
The Live-side studio_ext.py hot-reloads without restarting Live (copy it next to the installed script
and send ext_reload_studio). See CONTRIBUTING.md and CHANGELOG.md.
License
MIT — see LICENSE. Original work © Siddharth Ahuja; LiveSession MCP © Uri Rosen.
Metadata
Release files for livesession-mcp 2.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| livesession_mcp-2.0.0.tar.gz | 185.5 kB | With provenance | Details for livesession_mcp-2.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| livesession_mcp-2.0.0-py3-none-any.whl | Python 3 | none | any | Details for livesession_mcp-2.0.0-py3-none-any.whl |
Total release size: 374.4 kB
Release files / livesession_mcp-2.0.0.tar.gz
| Download URL | livesession_mcp-2.0.0.tar.gz |
|---|---|
| Size | 185.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
60c9121396d81fafc8e95f77349e6921c8702ee31c3fdb4a27d4881f97c94830
|
|
BLAKE2b-256 checksum How to use checksums |
fba0ee8205ce6da01350f2e3561761354fc13c0a6efd8844fc3ad0c6e1b0ac64
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 31, 2026.
Transparency logRelease files / livesession_mcp-2.0.0-py3-none-any.whl
| Download URL | livesession_mcp-2.0.0-py3-none-any.whl |
|---|---|
| Size | 188.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1679496605b2b0b0c13c2923a7e4bc0996bc69f4e16b6b97f70f15935ff27760
|
|
BLAKE2b-256 checksum How to use checksums |
b5d2381fb20e8f9dcfea0217db48849f7d3ed55d357732298b0105f944767f09
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 31, 2026.
Transparency logSecurity for livesession-mcp 2.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for livesession_mcp-2.0.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 31, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.