Ableton Live + OpenCode: Complete MCP Integration
Ableton Live is a MCP server that an MCP server to control Ableton Live..
When integrated with OpenCode, you can:
- Create, modify, and control audio/MIDI tracks
- Control live performance parameters and session view
- Send and receive OSC messages for real-time control
This guide provides step-by-step instructions to set up Ableton Live in OpenCode, including configuration, examples, and troubleshooting.
What You'll Achieve
After completing this setup:
- Ableton Live will be fully integrated and operational
- You can use Ableton Live tools directly in OpenCode
- All Ableton Live capabilities will be available for your workflows
- Access to 4 different tools
Prerequisites
Before starting, ensure you have:
- Python 3.8+
- Git
- Ableton Live installed
- OpenCode installed and configured
- Compatible operating system (macOS, Linux, Windows)
Installation
Step 1: Install Ableton Live
Manual installation steps:
- Install Python 3.8 or higher
- Install uv package manager
- Clone repository: git clone https://github.com/Simon-Kansara/ableton-live-mcp-server.git
- Navigate to project: cd mcp_ableton_server
- Install dependencies: uv sync
Configuration
Step 2: Configure OpenCode
-
Locate your configuration file:
-
Add server configuration:
Configure MCP servers in your `opencode.json` or `opencode.jsonc`:
```json
{
"mcp": {
"my-mcp": {
"type": "local",
"command": ["npx", "-y", "@modelcontextprotocol/server-everything"],
"environment": {
"API_KEY": "$API_KEY"
},
"timeout": 5000
},
"remote-server": {
"type": "remote",
"url": "https://mcp.example.com/sse",
"headers": {
"Authorization": "Bearer $API_TOKEN"
}
}
}
}
Disable a server temporarily:
{
"mcp": {
"my-mcp": {
"type": "local",
"command": ["npx", "-y", "mcp-server"],
"enabled": false
}
}
}
3. **Restart OpenCode**
Completely quit and restart OpenCode to load the new configuration.
## Examples
Once configured, you can use Ableton Live in OpenCode:
### Prepare Recording Setup
Set up tracks for recording a rock band
**Ask OpenCode:** "Prepare a set to record a rock band with drums, bass, guitar, and vocals"
**Expected Result:** Multiple audio tracks created with appropriate input routing and naming
### Configure Voice Track Routing
Set input routing for vocal tracks
**Ask OpenCode:** "Set the input routing channel of all tracks that have "voice" in their name to Ext. In 2"
**Expected Result:** All vocal tracks configured to receive input from external input 2
### Live Performance Setup
Configure session view for live performance
**Ask OpenCode:** "Set up a live performance session with 8 tracks and 16 scenes for electronic music"
**Expected Result:** Session view configured with tracks and scenes ready for live triggering
### Transport Control
Control playback and recording
**Ask OpenCode:** "Start recording on track 3 and set tempo to 120 BPM"
**Expected Result:** Recording initiated on specified track with tempo adjusted
## Testing Your Setup
1. Run opencode in terminal
2. Add "use the mcp_name tool" to your prompts
3. Verify tool execution and response
## Troubleshooting
### Common Issues
#### Ableton Live Not Responding
**Symptoms:** OSC messages not received, No communication with Live
**Cause:** OSC control surface not enabled or incorrect port configuration
**Solution:**
- Enable AbletonOSC control surface in Live preferences
- Verify OSC ports match configuration (11000/11001)
- Restart Ableton Live after configuration changes
- Check firewall settings allow OSC communication
#### Port Already in Use
**Symptoms:** Socket binding errors, Port conflict messages
**Cause:** Another application using configured ports
**Solution:**
- Check which process is using the port: netstat -tulpn | grep :65432
- Kill conflicting process or change port in osc_daemon.py
- Use alternative ports (e.g., 65433, 11002, 11003)
- Restart both server and Ableton Live
#### Python Dependencies Missing
**Symptoms:** Import errors, Module not found errors
**Cause:** Required packages not installed properly
**Solution:**
- Run uv sync to install all dependencies
- Verify Python 3.8+ is installed: python --version
- Check virtual environment is activated
- Install missing packages manually: pip install python-osc fastmcp
#### OSC Messages Not Routing
**Symptoms:** Commands not affecting Live, No response from controls
**Cause:** Incorrect OSC routing or message format
**Solution:**
- Verify OSC address patterns match Live expectations
- Check OSC message format and data types
- Test basic OSC connectivity with simple messages
- Review osc_daemon.py configuration for routing rules
#### MCP Server Not Loading
**Symptoms:** Server not appearing in tools, Timeout errors, Command not found
**Cause:** Invalid configuration, missing dependencies, or timeout too short
**Solution:**
- Verify command array is correct in opencode.json
- Check environment variables are set properly
- Increase timeout value if server takes longer to start
- Test MCP server command independently in terminal
#### Context Limit Exceeded
**Symptoms:** Context too large errors, Slow responses, Truncated output
**Cause:** Too many MCP servers adding to context
**Solution:**
- Disable unused MCP servers with enabled: false
- Use per-agent tool configuration to limit active MCPs
- Avoid MCP servers that add many tokens (e.g., GitHub MCP)
#### Remote Server Connection Failed
**Symptoms:** Cannot connect to remote MCP, Authentication errors
**Cause:** Invalid URL, missing headers, or network issues
**Solution:**
- Verify remote server URL is correct
- Check authorization headers are properly configured
- Ensure environment variables for tokens are set
#### Ableton Live not appearing in OpenCode
**Symptoms:** Server not listed, Tools not available
**Cause:** Configuration or installation issue
**Solution:**
- Verify configuration syntax
- Check Ableton Live installation
- Restart OpenCode
- Check logs for error messages
## Next Steps
Now that Ableton Live is integrated with OpenCode:
- Explore all Ableton Live capabilities through OpenCode
- Check out other MCP servers that work with OpenCode
- Join the MCP community for tips and support
- Consider contributing to Ableton Live development
## Need Help?
- Search for [Ableton Live documentation](https://www.mcpstack.org)
- Check the [OpenCode MCP guide](https://www.mcpstack.org/clients)
- Join the MCP community discussions