§ Guide · For developers & agents

GarageBand MCP server: what an agent can actually do

Published October 2026

GarageBand has no scripting API, so no agent operates it the way ReaScript operates REAPER. What an agent can reach is the project file. Doseedo runs a hosted MCP server at https://api.doseedo.com/mcp that opens a .band (GarageBand 10 saves the same project document Logic Pro does), converts it to Ableton Live, FL Studio, Pro Tools, REAPER, Cubase, Dorico or a clean Logic project, and gets its MIDI out, which GarageBand itself cannot export. GarageBand is a source here: projects leave it, nothing is written back as a .band.

Why "GarageBand MCP" is a file question

Every other DAW in this cluster has some live surface an MCP server can sit on: ReaScript, a Python controller API, a Controller API, a MIDI Remote API. GarageBand has none. It has no plugin scripting, no OSC, no control-surface SDK, and no scripting dictionary that reaches tracks or regions, so a server that wants to drive it live is left with macOS UI scripting through Accessibility, which breaks whenever a window moves. The one community GarageBand MCP project we found says as much, and treats the .band as a hand-off point rather than something to automate.

The file is the stable part. A GarageBand 10 project is a package laid out exactly like a Logic Pro project, and the same reader opens both, which is what makes everything below possible with GarageBand closed, and on a machine that is not a Mac.

Setup

claude mcp add --transport http --scope user doseedo https://api.doseedo.com/mcp

That is the Claude Code line, and the first call opens a browser to sign in. ChatGPT, Cursor, VS Code, Gemini CLI and Codex register the same URL; a client with no browser sends X-API-Key: dsk_live_… from Settings → API keys. The full list of 43 tools is in the reference.

A .band is a folder that Finder shows as one file, so it is compressed before upload (right-click → Compress, or the agent does it). The directions, from the enum of doseedo_convert_project, all starting from GarageBand:

garageband2ableton   garageband2fl
garageband2protools  garageband2reaper
garageband2cubase    garageband2dorico
garageband2logic

One real conversion, and what its report said

A seven-track GarageBand 10 project (software-instrument tracks, most of them Drum Kit Designer kits, and no audio recordings) went through garageband2ableton on 26 October 2026. The report, which the agent relays, said:

7 tracks, 240 MIDI notes and 13 plugins reached the
Ableton Live project.

7 regions carry a GarageBand loop length (dragged-out
repeats) this converter does not read yet: each is placed
once at its recorded length.

1 plugin (Drum Kit) has no equivalent in Ableton Live and
was not mapped.

It also flagged that all seven tracks play Apple instruments whose sounds live in GarageBand's library, so in Ableton the notes arrive on tracks that need an instrument of your choosing. That is the honest shape of a GarageBand conversion: the notes, regions, tempo and structure come across, Apple's sounds do not, and anything the converter could not carry is listed rather than silently dropped.

What the agent can do with a .band

> Here's a GarageBand project from my phone. Get me the MIDI
  of every track, named the way they are in GarageBand.

> Convert this .band for my friend who uses FL Studio, and
  tell me which instruments she'll need to replace.

What it does not do

Scope, stated once. Writing an agent's edits into a project on your Mac (Dø Desktop saves the project, closes it, writes the edits in and reopens it) and the offline bounce target Logic Pro on macOS, through the Dø Desktop bridge. Reading, building, converting and downloading projects cover Logic Pro, Ableton Live, FL Studio, Pro Tools and REAPER, and conversion covers ten DAW formats (those five plus Cubase, Dorico, Studio One, Bitwig, and GarageBand in) in all 75 directions. Nothing here drives a transport or moves a playhead: the agent edits the session, not the console.

Send one project through it

Add the server, give your agent a compressed .band, and ask for the MIDI or an Ableton set, with the report.

The Doseedo MCP server →

FAQ

Is there an MCP server for GarageBand?

Not one that drives the app dependably: GarageBand has no scripting API, so live control is limited to macOS UI scripting. For the project file, Doseedo runs a hosted MCP server at api.doseedo.com/mcp that reads a .band, exports its MIDI, and converts it to Ableton Live, FL Studio, Pro Tools, REAPER, Cubase, Dorico or Logic Pro.

Can an AI agent export MIDI from GarageBand?

Yes, from the project file. GarageBand has no MIDI export, but a .band stores its software-instrument regions as notes, and the agent reads them into a standard MIDI file with track names. Drummer regions are performance settings, not notes, so they are not in it.

Can Claude convert a GarageBand project to Ableton Live?

Yes. The agent compresses the .band, uploads it, calls convert_project with garageband2ableton and returns a native .als with the tracks, MIDI and tempo, plus a report naming what did not carry, such as Apple instruments and looped regions.

Can it write a GarageBand project?

No. GarageBand is a source only. GarageBand imports MIDI files and audio, so work comes back into it as MIDI and stems; Logic Pro opens GarageBand projects directly for the move up.

How do I install it?

In Claude Code: claude mcp add --transport http --scope user doseedo https://api.doseedo.com/mcp. In ChatGPT, Cursor, Gemini CLI, Codex, VS Code or the Claude apps, add the same URL as a custom MCP server. OAuth signs you in on the first call.

The Doseedo MCP server · one URL, every client

By DAW
By AI client
By capability

Related