How the connection works
The core request path is a three-layer stack:vibrai.amxd— a Max for Live device you load on any track. Inside it, a Node.js script runs an Express HTTP server onlocalhost:3333and translates REST calls into Live’s LOM via the Maxjsobject.Vibrai.Mcp— a C# process that communicates with your MCP client over stdio using JSON-RPC. Every tool call is proxied to the M4L device via HTTP.- Your MCP client — Claude Desktop, Claude Code, Cursor, or any other MCP-capable host. It sees the tools via the standard
tools/list/tools/callprotocol.
localhost:3334, installed separately via install_vibrai_remote_script / vibrai install remote-script. get_version reports it as the python_bridge field. See Installation and Troubleshooting.
Connecting Claude Desktop
Edit~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
How tools map to engine operations
Each MCP tool corresponds directly to a method on the underlying engine or bridge. Tools are grouped by domain: transport, tracks, clips, notes, drum maps, automation, devices, instruments, scenes, arrangement, scales, project, genre, generation, capture, sessions, license, install, update, uninstall, and version. See the Reference section for every tool, its parameters, and the matching CLI command.snake_case parameter convention
All MCP tool parameters usesnake_case. This is enforced at the wire level:
track_id,scene_index,start_beat,source_scene_index,part_type
trackId instead of track_id), the server’s binding filter catches the failure and returns a clear error message pointing at the correct snake_case form.
First-song wizard
The fastest way to hear Vibrai in action through MCP is the first-song wizard:start_first_song(vibe="lofi-house", length="medium"), which returns a step-by-step recipe. It then executes the recipe: Claude assembles a complete project and saves it, then loads instruments, generates the parts, and starts playback. A full arrangement appears in Live in about 30–60 seconds.
Supported vibes: ambient-techno (default), lofi-house, deep-house, ambient-downtempo, minimal-techno.