MCP server for controlling Ableton Live via OSC
Project description
A Rust MCP server that enables AI assistants to control Ableton Live via OSC.
Features
- 266 tools for comprehensive Ableton Live control
- Real-time OSC via AbletonOSC
- Auto-installer for the AbletonOSC Remote Script
- Cross-platform (macOS, Windows, Linux)
Quick Start
1. Install remix-mcp
Via uv (recommended, requires uv):
uvx remix-mcp install
Download binary from Releases
Build from source:
git clone --recursive https://github.com/christopherwxyz/remix-mcp
cd remix-mcp
cargo build --release
2. Install AbletonOSC
remix-mcp install
Then in Ableton Live:
- Restart Ableton Live
- Open Preferences (Cmd+, / Ctrl+,)
- Go to Link/Tempo/MIDI
- Under Control Surface, select AbletonOSC
You should see: AbletonOSC: Listening for OSC on port 11000
3. Add MCP Server
Claude Desktop:
- Open Claude Desktop Settings > Developer
- Click Edit Config to open
claude_desktop_config.json - Add the server configuration:
{
"mcpServers": {
"ableton": {
"command": "uvx",
"args": ["remix-mcp"]
}
}
}
- Restart Claude Desktop
Claude Code:
claude mcp add ableton -- uvx remix-mcp
Usage
Ask Claude things like:
- "Create a MIDI track with Drift and add reverb"
- "Set the tempo to 128 BPM"
- "Create a 4-bar drum pattern"
- "Add an arpeggiator to the selected track"
- "Search the browser for bass sounds"
See docs/examples.md for more examples.
Tools
| Category | Count | Examples |
|---|---|---|
| Transport | 10 | play, stop, record, set_tempo |
| Tracks | 59 | create_midi_track, set_track_volume, arm_track |
| Clips | 65 | fire_clip, create_clip, add_midi_notes |
| Scenes | 19 | fire_scene, create_scene, duplicate_scene |
| Devices | 10 | list_devices, set_device_parameter |
| Song | 56 | undo, redo, set_loop, get_quantization |
| View | 8 | select_track, select_clip, select_device |
| Cue Points | 5 | list_cue_points, jump_to_cue_point |
| Browser | 29 | load_instrument, load_audio_effect, search_browser |
| Application | 4 | get_version, get_application_view |
| MIDI Map | 1 | get_midi_map_addresses |
Architecture
Claude/Client <--stdio/JSON-RPC--> remix-mcp <--UDP/OSC--> AbletonOSC <--> Ableton Live
CLI
remix-mcp serve # Start MCP server (default)
remix-mcp install # Install AbletonOSC Remote Script
remix-mcp install --force # Reinstall
remix-mcp status # Check installation
Troubleshooting
No sound from MIDI tracks?
Samplers need samples loaded. Use load_default_instrument to load Drift (a synth that works immediately).
Connection timeout?
- Check Ableton Live is running
- Verify AbletonOSC is enabled in Preferences > Link/Tempo/MIDI
- Ensure ports 11000/11001 are free
AbletonOSC not in Control Surface list?
- Run
remix-mcp install - Restart Ableton Live
Development
See CLAUDE.md for development guidelines.
License
MIT
Acknowledgments
- AbletonOSC by Daniel Jones
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file remix_mcp-0.1.0-py3-none-win_amd64.whl.
File metadata
- Download URL: remix_mcp-0.1.0-py3-none-win_amd64.whl
- Upload date:
- Size: 2.0 MB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e895130a2a23676114167abf2977bb6990ba867d28c9b117e41ec89d4aba5d59
|
|
| MD5 |
99258321f1552f170440cfa4717fcad0
|
|
| BLAKE2b-256 |
16557fc9c4c557ffac46540bf5d158c89debbca675809dab2d18436d56b7a6da
|
Provenance
The following attestation bundles were made for remix_mcp-0.1.0-py3-none-win_amd64.whl:
Publisher:
pypi.yml on christopherwxyz/remix-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
remix_mcp-0.1.0-py3-none-win_amd64.whl -
Subject digest:
e895130a2a23676114167abf2977bb6990ba867d28c9b117e41ec89d4aba5d59 - Sigstore transparency entry: 896521893
- Sigstore integration time:
-
Permalink:
christopherwxyz/remix-mcp@bd7ef0240bbabe912ed6344d2a76af94608ea381 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/christopherwxyz
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@bd7ef0240bbabe912ed6344d2a76af94608ea381 -
Trigger Event:
push
-
Statement type:
File details
Details for the file remix_mcp-0.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: remix_mcp-0.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 2.0 MB
- Tags: Python 3, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1233fe98732da3b36ba739d0951da04e29e6f05ea8fd9f9e300c0f75d02c2fa7
|
|
| MD5 |
94fcdfaaa856c02567f81a06f755b3ad
|
|
| BLAKE2b-256 |
b6412dcf6097aaf0da31787b928808d0916dd4b5fdb14783a5e4410ca2dd6096
|
Provenance
The following attestation bundles were made for remix_mcp-0.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
pypi.yml on christopherwxyz/remix-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
remix_mcp-0.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
1233fe98732da3b36ba739d0951da04e29e6f05ea8fd9f9e300c0f75d02c2fa7 - Sigstore transparency entry: 896521810
- Sigstore integration time:
-
Permalink:
christopherwxyz/remix-mcp@bd7ef0240bbabe912ed6344d2a76af94608ea381 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/christopherwxyz
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@bd7ef0240bbabe912ed6344d2a76af94608ea381 -
Trigger Event:
push
-
Statement type:
File details
Details for the file remix_mcp-0.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: remix_mcp-0.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.9 MB
- Tags: Python 3, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3bfc5e67499580767a93bfb663e8c8221bd1d44d87bae6254d770270afe179d3
|
|
| MD5 |
a70e4b359c7ec4ec97b27109aa1e5789
|
|
| BLAKE2b-256 |
b24c19f9f329dc479553e7184f83dc1bb6e0afc4dafebb99d0ec32acdd7f93d3
|
Provenance
The following attestation bundles were made for remix_mcp-0.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
pypi.yml on christopherwxyz/remix-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
remix_mcp-0.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
3bfc5e67499580767a93bfb663e8c8221bd1d44d87bae6254d770270afe179d3 - Sigstore transparency entry: 896521848
- Sigstore integration time:
-
Permalink:
christopherwxyz/remix-mcp@bd7ef0240bbabe912ed6344d2a76af94608ea381 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/christopherwxyz
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@bd7ef0240bbabe912ed6344d2a76af94608ea381 -
Trigger Event:
push
-
Statement type:
File details
Details for the file remix_mcp-0.1.0-py3-none-macosx_11_0_arm64.whl.
File metadata
- Download URL: remix_mcp-0.1.0-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 1.8 MB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
623ebabf933e0af8bb258a27d32ee65df27998a18b5c6218eca83e377fd1fcee
|
|
| MD5 |
5e476f83b6873b27994a18f2894815d5
|
|
| BLAKE2b-256 |
610bff61d84608f80b4c001386efc0665e4a4ae8a5deb542e6e4319aedbf8589
|
Provenance
The following attestation bundles were made for remix_mcp-0.1.0-py3-none-macosx_11_0_arm64.whl:
Publisher:
pypi.yml on christopherwxyz/remix-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
remix_mcp-0.1.0-py3-none-macosx_11_0_arm64.whl -
Subject digest:
623ebabf933e0af8bb258a27d32ee65df27998a18b5c6218eca83e377fd1fcee - Sigstore transparency entry: 896521993
- Sigstore integration time:
-
Permalink:
christopherwxyz/remix-mcp@bd7ef0240bbabe912ed6344d2a76af94608ea381 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/christopherwxyz
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@bd7ef0240bbabe912ed6344d2a76af94608ea381 -
Trigger Event:
push
-
Statement type:
File details
Details for the file remix_mcp-0.1.0-py3-none-macosx_10_12_x86_64.whl.
File metadata
- Download URL: remix_mcp-0.1.0-py3-none-macosx_10_12_x86_64.whl
- Upload date:
- Size: 2.0 MB
- Tags: Python 3, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
de7f6f62fade0ce96cb337e1707a5854d2be6cf6bb0306e585b279f1485226c2
|
|
| MD5 |
00445089710acdf4fdf1293011ea901f
|
|
| BLAKE2b-256 |
ef7be3ca077dd08fb78d0cd6410bb6714ed719ad25a552f71d8fc25bac59ea67
|
Provenance
The following attestation bundles were made for remix_mcp-0.1.0-py3-none-macosx_10_12_x86_64.whl:
Publisher:
pypi.yml on christopherwxyz/remix-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
remix_mcp-0.1.0-py3-none-macosx_10_12_x86_64.whl -
Subject digest:
de7f6f62fade0ce96cb337e1707a5854d2be6cf6bb0306e585b279f1485226c2 - Sigstore transparency entry: 896521731
- Sigstore integration time:
-
Permalink:
christopherwxyz/remix-mcp@bd7ef0240bbabe912ed6344d2a76af94608ea381 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/christopherwxyz
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@bd7ef0240bbabe912ed6344d2a76af94608ea381 -
Trigger Event:
push
-
Statement type: