- Home
- MCP servers
- Carla
Carla
- python
8
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"agrathwohl-carla-mcp-server": {
"command": "python",
"args": [
"/path/to/carla-mcp-server/server.py"
],
"env": {
"CARLA_PATH": "/usr/share/carla",
"PYTHONPATH": "/usr/share/carla/source/frontend",
"LD_LIBRARY_PATH": "/usr/lib/carla"
}
}
}
}You can run a Carla MCP Server to gain natural language control over your audio production workflow. This server acts as a bridge between AI assistants and Carla, exposing a comprehensive set of tools to manage sessions, plugins, routing, automation, analysis, JACK integration, and hardware control in real time.
How to use
Connect an MCP client (such as Claude Desktop) to the Carla MCP Server using the stdio configuration. Start the server and load the client so you can issue natural language requests like loading a project, configuring a drum bus, or setting up live performance routing. You can ask for tasks across session management, plugin control, routing, automation, analysis, and hardware control. The system will perform actions in Carla and report back results or suggested adjustments.
How to install
# Prerequisites
python3 --version # should be 3.12 or higher
# Install Carla MCP Server dependencies
# (assumes you have Python and pip available)
pip install -r requirements.txt
# Optional: install development tools
pip install -e ".[dev]"
# Install Carla host and audio system prerequisites per your platform
# See system-specific setup for Carla and JACK integration
Configuration and usage notes
The server is designed to be started as a local stdio process. You will provide a Python command to run the server, along with the path to the server script. You will also configure environment variables that point to your Carla installation and frontend assets.
Example MCP client configuration (stdio)
{
"mcpServers": {
"carla_mcp": {
"type": "stdio",
"command": "python",
"args": ["/path/to/carla-mcp-server/server.py"],
"env": {
"CARLA_PATH": "/usr/share/carla",
"PYTHONPATH": "/usr/share/carla/source/frontend"
}
}
}
}
Running tests and development checks
If you want to verify the integration, run the test suite and perform a quick Carla integration test to ensure the MCP server talks to Carla correctly. Use the test harness to confirm routing, plugin control, and automation endpoints respond as expected.
Troubleshooting tips
- Ensure Python 3.12+ is in use and that Carla is installed and accessible via CARLA_PATH.
- Confirm JACK (or your chosen audio driver) is running if you rely on real-time routing and monitoring.
- Validate that environment variables are correctly exported in your shell before launching the MCP server.
- Check that the MCP client is configured to connect to the correct stdio command path and environment.
- If you encounter import or path errors, verify PYTHONPATH includes Carla frontend sources.
Notes
This server exposes a large set of tools across session management, plugin control, audio routing, parameter automation, real-time analysis, JACK integration, and hardware control. It is production-ready with error handling and type safety in mind and is designed to scale across complex audio production workflows.
Available tools
load_session
Load Carla project files into the MCP-managed session.
save_session
Save the current session state to disk for later restoration.
create_snapshot
Create an A/B snapshot of the current session for comparison.
switch_session
Hot-swap between sessions with crossfade or seamless transition.
list_sessions
List available sessions stored on disk or in the project space.
delete_session
Remove a saved session from storage.
export_session
Export the current session to common audio formats.
import_session
Import a session from external formats.
load_plugin
Load a plugin in supported formats (VST, LV2, AU, etc.).
scan_plugins
Scan plugin directories for available plugins.
control_plugin
Activate, bypass, solo, or remove plugins during playback.
batch_process
Apply a chain of plugins to a set of audio paths.
list_plugins
List all currently loaded plugins.
get_plugin_info
Retrieve detailed info about a plugin.
clone_plugin
Duplicate a plugin instance with its settings.
replace_plugin
Swap a plugin while preserving parameter mappings.
connect_audio
Create complex audio connections and routings.
create_bus
Create and manage audio buses for grouping.
setup_sidechain
Configure sidechain routing for dynamics processing.
get_routing_matrix
Inspect the current audio/MIDI routing matrix.
disconnect_audio
Remove audio connections.
create_send
Set up send/return effects routing.
set_connection_gain
Adjust connection levels in the routing graph.
automate_parameter
Create automation curves for plugin parameters.
map_midi_cc
Map MIDI CC to plugin parameters with ranges.
set_parameter
Set a plugin parameter value directly.
get_parameter
Retrieve parameter values and info from plugins.
create_macro
Create macros that control multiple parameters.
record_automation
Capture parameter changes over time.
randomize_parameters
Apply creative randomization to parameters.
morph_parameters
Smooth parameter transitions for dynamic changes.
analyze_spectrum
Perform FFT-based spectrum analysis.
measure_levels
Meter audio levels with Peak, RMS, LUFS options.
capture_plugin_parameters
Monitor plugin parameters over time.
detect_feedback
Detect potential feedback loops in routing.
analyze_latency
Measure system latency and identify bottlenecks.
list_jack_ports
Show available JACK ports.
connect_jack_ports
Connect JACK ports to routes.
disconnect_jack_ports
Disconnect JACK ports from routes.
get_jack_connections
View active JACK connections.
connect_system_to_plugin
Route system audio to plugins.
connect_plugin_to_system
Route plugins to system output.
configure_audio_interface
Configure the audio interface parameters.
list_audio_devices
Discover available audio devices.
map_control_surface
Map MIDI controllers to software controls.