Simon Kansara/ableton-live-mcp-server
Built by Metorial, the integration platform for agentic AI.
Simon Kansara/ableton-live-mcp-server
Server Summary
Send OSC messages to Ableton Live
Receive OSC messages from Ableton Live
Automate music production tasks
Integrate AI models with Ableton Live
Control Ableton Live with LLMs
The Ableton Live MCP Server is a server implementing the Model Context Protocol (MCP) to facilitate communication between LLMs and Ableton Live. It uses OSC (Open Sound Control) to send and receive messages to/from Ableton Live. It is based on AbletonOSC implementation and exhaustively maps available OSC adresses to tools accessible to MCP clients.
This project consists of two main components:
mcp_ableton_server.py
: The MCP server handling the communication between
clients and the OSC daemon.osc_daemon.py
: The OSC daemon responsible for relaying commands to Ableton
Live and processing responses.python-osc
(for OSC communication)fastmcp
(for MCP support)uv
(recommended Python package installer)Install uv
(https://docs.astral.sh/uv/getting-started/installation):
curl -LsSf https://astral.sh/uv/install.sh | sh
Clone the repository:
git clone https://github.com/your-username/mcp_ableton_server.git
cd mcp_ableton_server
Install the project and its dependencies:
uv sync
Install AbletonOSC Follow the instructions at AbletonOSC
The OSC daemon will handle OSC communication between the MCP server and Ableton Live:
uv run osc_daemon.py
This will:
In Claude desktop, ask Claude:
By default, the server and daemon run on localhost (127.0.0.1) with the following ports:
To modify these, edit the AbletonOSCDaemon
class in osc_daemon.py
:
self.socket_host = '127.0.0.1'
self.socket_port = 65432
self.ableton_host = '127.0.0.1'
self.ableton_port = 11000
self.receive_port = 11001
To use this server with Claude Desktop, you need to configure it in your Claude Desktop settings. The configuration file location varies by operating system:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%/Claude/claude_desktop_config.json
Add the following configuration to your mcpServers
section:
{
"mcpServers": {
"Ableton Live Controller": {
"command": "/path/to/your/project/.venv/bin/python",
"args": ["/path/to/your/project/mcp_ableton_server.py"]
}
}
This configuration ensures that:
Feel free to submit issues, feature requests, or pull requests to improve this project.
This project is licensed under the MIT License. See the LICENSE
file for
details.