MCP
A DAW you can drive from Claude Code, over MCP
monody is a DAW that is also an MCP server. Claude Code and other MCP clients can read your session and edit it with the same commands the app's own buttons send, and every edit lands as one undoable step.
How it connects
Most music MCP servers are bridges: a script inside someone else's DAW, a socket or OSC link, and a separate MCP process in between. monody is the DAW, and it speaks MCP directly.
- The server runs inside the monody app, at
http://127.0.0.1:<port>/mcp(streamable HTTP, protocol 2025-06-18). - It listens only on your machine, and it needs a key that monody creates for you.
- Settings → Account → Use monody from Claude shows the line to paste. It looks like this:
claude mcp add --transport http monody http://127.0.0.1:8710/mcp \
--header "Authorization: Bearer <your key>"
Copy it from the app rather than from here: the port and the key are yours. You can make a new key there at any time.
The tools
| Tool | What it does |
|---|---|
get_project |
Reads the whole session: tempo, tracks, clips, notes, device chains, automation, routing, transport, and the schema of every device |
run_commands |
Applies a batch of monody commands as one labeled, undoable transaction; all or nothing |
transport |
Play, stop, seek, set the loop |
apply_sound_preset |
Puts one of monody's preset sounds (or a random one) on a MIDI track |
undo / redo |
Steps through history, yours and the AI's |
render_wav |
Renders the song to a WAV file |
analyze_mix |
Renders the song and measures it for release: LUFS, true peak, balance, masking, sections |
master_to_target |
Lands the song on a loudness target as one undoable step |
The command vocabulary ships with the server as MCP instructions, and get_project returns the schema of every device, so the model knows the commands and the parameters before it changes anything.
Why a DAW behind the commands matters
- It's a real session. Arrangement, piano roll, a deep synth, about 50 effects, mixer, automation, recording and stems. Everything the AI does, you can also do by hand, and see.
- Edits are checked. Commands are validated before anything changes. A bad payload comes back as a structured error, not a half-applied edit.
- Undo is exact. Each call is one step in the app's history, labeled and attributed to the AI.
- The engine is deterministic. Offline renders are bit-exact, and the test suite checks them against a golden render.
Good first requests
Start with chores, not songs:
- "Route the drums to a new bus and put a bus compressor on it."
- "Add a tempo-synced delay to the lead, dotted eighth, mostly dry."
- "Sit the hats back 3 dB and pan them a little left."
- "Analyze the mix for streaming and tell me the three biggest problems."
Limits
- macOS only for now.
- The server is local. A client on another machine can't reach it.
Questions
- Do I need to install a plugin or a remote script?
- No. monody serves MCP itself, over streamable HTTP on your own machine (127.0.0.1). You add it to your MCP client with one command, which monody shows you in Settings → Account.
- Which plan includes MCP?
- Pro and Studio. The Free plan includes the whole DAW and the built-in assistant, but not outside MCP clients.
- Does using monody from Claude Code spend monody's AI credits?
- No. With MCP the model runs in your client, on your own Claude plan. monody only carries out the tool calls and renders audio on your Mac.
- Can the AI break my project?
- Every run_commands call is one transaction. If any command in it fails validation, nothing is applied and the error comes back for the model to fix. Each successful call is a single labeled undo step, so ⌘Z in the app walks back exactly what it did.
- Does it work with the Claude website or apps other than Claude Code?
- monody's MCP server only listens on your own machine, so the client has to run there too. Claude Code works with the command monody gives you. Other clients that can reach a local streamable-HTTP MCP server with a bearer header should work too, but Claude Code is the client we test with.