Documentation Index
Fetch the complete documentation index at: https://docs.vibrai.com/llms.txt
Use this file to discover all available pages before exploring further.
vibrai can't reach the bridge
vibrai can't reach the bridge
Ensure Ableton Live is open with the Vibrai M4L device loaded, then retry. The CLI talks to the bridge at A healthy response looks like
http://localhost:3333 (override with --url or the VIBRAI_URL environment variable).Check the three most common causes:- Is Live open?
- Is
vibrai.amxdloaded on a track in the current Live set? - Is the device’s Active toggle on (the power button in the device header)?
{"is_playing":false,"tempo":120.0,...}. A connection refused means the device is not loaded or Live’s Max console has an error.MCP tools don't appear in Claude Desktop
MCP tools don't appear in Claude Desktop
Confirm the You should see a
command path in your config file is an absolute path to an executable binary, then restart Claude Desktop fully (the MCP server is launched at app start, not on demand).On macOS, check ~/Library/Logs/Claude/mcp*.log for startup errors.Smoke-test the binary directly in a terminal:tools/list response listing the Vibrai tools.generate fails with 'target tracks already contain clips'
generate fails with 'target tracks already contain clips'
vibrai generate is non-destructive by default. Add --force once you have reviewed the dry-run output:force: true on the generate tool.Automation write returns PYTHON_BRIDGE_UNAVAILABLE
Automation write returns PYTHON_BRIDGE_UNAVAILABLE
vibrai --version shows '(unreachable)' for the bridge
vibrai --version shows '(unreachable)' for the bridge
This is expected when Live is not open or the device is not loaded. The CLI version still printed, confirming the install is working. Commands that only read project files will work offline. Commands that talk to Live will return a clear
bridge unreachable error (exit code 2).Track IDs shifted after reordering tracks in Live
Track IDs shifted after reordering tracks in Live
Positional track IDs (
id in list_tracks) are 0-based indices that can shift when you reorder, add, or delete tracks. Re-run vibrai track list (or call list_tracks via MCP) after any reorder to get current IDs.For multi-step workflows that operate on the same track over time, use liveset_id (returned by list_tracks). It is stable within one Live session — it survives reorders, renames, and inserts. Pass it with --liveset-id on track rename and track delete, or as liveset_id on the MCP equivalents.Drum kit loads but produces no sound
Drum kit loads but produces no sound
load_device --part-type bd resolves to an empty Drum Rack. To get a kit with samples, browse for a kit preset file first:browse_devices("Drums") to see available kits, then load_device with the .adg path. Tonal part types (bass, pad, lead) load synthesizers that make sound immediately without this extra step.Log locations
| Source | Location |
|---|---|
CLI (with --log-file) | Path you specify |
MCP server (with VIBRAI_LOG_FILE) | Path you specify |
| Claude Desktop MCP wrapper | ~/Library/Logs/Claude/mcp*.log (macOS) |
| M4L device (Express server) | Live’s Max console |
--log-level Debug --log-file /tmp/vibrai.log to any command. For the MCP server, set VIBRAI_LOG_LEVEL=Debug and VIBRAI_LOG_FILE=/tmp/vibrai-mcp.log in the server config.