producer-pal
v2.3.0
Published
Stdio-to-HTTP bridge for Producer Pal MCP server
Downloads
1,453
Maintainers
Readme
Producer Pal
AI music production assistant for Ableton Live via the Model Context Protocol (MCP).
Quick Start
Run the Producer Pal MCP bridge to connect any MCP client to Ableton Live:
npx producer-pal@latestThis starts a stdio-to-HTTP bridge that enables MCP clients (Claude Desktop, Claude Code, Gemini CLI, Codex CLI, VS Code with Cline, LM Studio, etc.) to communicate with the Producer Pal Max for Live device running in Ableton Live.
Prerequisites
- Ableton Live 12.3+ with Max for Live (e.g., Ableton Live Suite)
- Producer Pal Max for Live device - Download
Producer_Pal.amxdand add it to a MIDI track in Ableton Live - Node.js 20+
Version Note: The npm package version is independent of the Max for Live device version. Always use the latest of both.
Configuration
Add Producer Pal to your MCP client's server configuration. The command is
npx producer-pal@latest with optional argument -y (for auto-install). Keep
the @latest — without it, npx runs any older global or project-local
producer-pal it finds instead of fetching the current one.
Configuration examples:
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"producer-pal": {
"command": "npx",
"args": ["-y", "producer-pal@latest"]
}
}
}claude mcp add producer-pal npx producer-pal@latestEdit ~/.gemini/settings.json:
{
"mcpServers": {
"producer-pal": {
"command": "npx",
"args": ["-y", "producer-pal@latest"]
}
}
}Edit ~/.codex/config.toml:
[mcp_servers.producer-pal]
command = "npx"
args = ["-y", "producer-pal@latest"]Edit Settings → Program → Integrations → mcp.json:
{
"mcpServers": {
"producer-pal": {
"command": "npx",
"args": ["-y", "producer-pal@latest", "--small-model-mode"]
}
}
}The --small-model-mode flag enables small model mode. See the
LM Studio guide for details.
Edit cline_mcp_settings.json:
{
"mcpServers": {
"producer-pal": {
"command": "npx",
"args": ["-y", "producer-pal@latest"]
}
}
}Use the command npx producer-pal@latest with optional argument -y for
auto-install. Consult your client's documentation for MCP server configuration
syntax.
CLI Flags
Full reference: https://producer-pal.org/guide/npx-cli
--tools <list>- Keep only these tools in this client, dropping the rest. Takes tool names (read-cliporppal-read-clip) and group names (core,clip,read-only, …), comma or space separated. Withholding a tool also drops the part of the skills that teaches it, so a narrow toolset makes every conversation cheaper. Per client — the chat UI and your other MCP clients keep the full toolset.--disable-tools <list>- The inverse: drop the tools you list, keep the rest.--list-tools- Print the group names and the tools available right now, then exit. Combine with the flags above to see what a session would really get.-s/--small-model-mode- Enable small model mode, which simplifies the tool interface for smaller LLMs.-n/--notation <barbeat|midi-json|stark>- Set the MIDI note notation the tools use (default:barbeat). When using a coding agent to script or build against Producer Pal (generating/parsing MIDI programmatically), pair--notation midi-json(notes as a JSON array) with--format json. For a normal music-making conversation, keep the default.-f/--format <json|compact>- Set the tool response format (default:compact, a token-optimized literal).--format jsonreturns standard JSON that coding agents can parse with JSON tooling; keep the defaultcompactfor normal conversations to save tokens.-l/--live-api- Enable the opt-in Direct Live API tool (ppal-live-api), a low-level escape hatch for scripting and debugging directly against the Live Object Model. Not recommended as a default — the specialized tools are tuned for reliable results. The flag only ever enables the tool.
Every setting rides along as a request header, so it applies to this bridge alone: the chat UI and your other MCP clients keep their own settings.
Environment Variables
Optional environment variables can be configured through your MCP client:
MCP_SERVER_ORIGIN- URL for the Max for Live device (default:http://localhost:3350)TOOLS/DISABLE_TOOLS- Env forms of the--tools/--disable-toolsflags.SMALL_MODEL_MODE- Enable small model mode. Env form of the--small-model-modeflag.NOTATION- MIDI note notation (barbeat,midi-json, orstark). Env form of the--notationflag.FORMAT- Tool response format (jsonorcompact). Env form of the--formatflag.JSON_OUTPUT- Boolean alias forFORMAT(true= json).LIVE_API- Enable the Direct Live API tool. Env form of the--live-apiflag.
Unlike the flags, the boolean variables are three-state:
SMALL_MODEL_MODE=false actively turns the setting off for this bridge, where
the flag can only turn it on. Leave one unset (or blank) to follow the device's
setting.
ENABLE_LOGGING- Enable file logging (default:false)VERBOSE_LOGGING- Detailed debug logs (default:false)
Example with environment variables:
{
"mcpServers": {
"producer-pal": {
"command": "npx",
"args": ["-y", "producer-pal@latest"],
"env": {
"MCP_SERVER_ORIGIN": "http://localhost:3350",
"ENABLE_LOGGING": "true"
}
}
}
}Note for Claude Desktop users: The
.mcpb extension bundle
provides an easier setup alternative to npx producer-pal.
Documentation
For complete documentation, setup guides, and usage examples, visit:
https://producer-pal.org
Source code and development:
https://github.com/adamjmurray/producer-pal
Support
License
GNU General Public License v3.0 or later (GPL-3.0-or-later) - see
LICENSE.
Upstream notices for the third-party code bundled into this package ship in its
licenses/ folder.
