PluginBench
MCP Server
Maintained
MIT

Music Studio MCP Server

io.github.linxule/mcp-music-studio

ABC sheet music and Strudel live-coding studio for AI-assisted music composition and performance.

What is the Music Studio MCP server?

The Music Studio MCP server is a two-mode creative music environment that lets you compose scored music using ABC notation with rendered sheet music, or live-code patterns with Strudel and TidalCycles synthesis. It provides interactive UI rendering in Claude Desktop and other MCP clients, with multi-instrument audio playback, effects chains, and WAV export.

Music Studio gives AI agents tools to create, arrange, and perform music in two complementary modes: scored composition with ABC notation (8 style presets, 30 instruments, visual sheet music) and live performance with Strudel code (72 drum banks, 128 GM instruments, full effects). Use it to generate beats, harmonize melodies, create arrangements, or explore music composition interactively with instant audio feedback.

How to install Music Studio

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "mcp-music-studio": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-music-studio"
      ]
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • play-sheet-music — Convert ABC notation to visual sheet music with multi-instrument audio playback, style presets, and WAV export.
  • play-live-pattern — Execute Strudel/TidalCycles code for live-coded patterns with synthesis, effects, and real-time editing.
  • get-music-guide — Reference guide covering ABC notation, instruments, drums, arrangements, genres, styles, and MIDI directives.
  • get-strudel-guide — Reference guide for Strudel mini-notation, sounds, effects, patterns, genres, and advanced techniques.
  • search-music-docs — Semantic search across Strudel and ABCJS documentation.

Use cases

  • Generate and play drum patterns and beats in various genres using live Strudel coding
  • Compose melodies in ABC notation and hear them rendered with multi-instrument accompaniment and style presets
  • Create multi-voice arrangements by adding chords and instrumentation to existing melodies
  • Explore music theory interactively with harmony tools and real-time audio feedback
  • Export composed music and live performances as WAV files for use in other projects

Music Studio MCP server FAQ

What is the Music Studio MCP server?

It's a creative music tool for AI that supports both scored composition (ABC notation with sheet music) and live performance (Strudel live coding). It renders interactive UI inline in Claude Desktop and other MCP clients, with multi-instrument audio, effects, and export.

Is it free?

Yes. The server is open-source (MIT license) and can be used via a free remote URL or installed locally via npm.

How do I install it in Claude Desktop?

Go to Settings → Connectors → Add Connector and paste https://mcp-music-studio.linxule.workers.dev/mcp, or edit your claude_desktop_config.json to add the npx command.

How do I install it in Cursor?

Edit ~/.cursor/mcp.json and add the music-studio entry with command 'npx' and args ['-y', 'mcp-music-studio', '--stdio'].

Do I need any authentication or API keys?

No authentication required. The server works out of the box with no API keys or credentials needed.

What instruments and sounds are available?

ABC mode offers 30 instruments (piano, strings, brass, woodwinds, synths) with 8 style presets. Strudel mode includes 72 drum machine banks, 128 GM instruments, and built-in synths with full effects chains.

README (reference)

Source of truth, from the repository.

MCP Music Studio

smithery badge

Two-mode creative music studio for AI: scored composition (ABC notation with sheet music) and live performance (Strudel live coding with TidalCycles). Interactive UI renders inline in Claude Desktop, claude.ai, and other MCP clients.

Quick Start — No Install Required

Paste this URL into any MCP client that supports remote servers:

https://mcp-music-studio.linxule.workers.dev/mcp

Claude Desktop / claude.ai: Settings → Connectors → Add Connector → paste the URL above → done.

Claude Code:

claude mcp add --transport http music-studio https://mcp-music-studio.linxule.workers.dev/mcp

That's it — ask Claude to play a song or create a beat.


What You Get

Scored Composition (ABC Notation)

Write sheet music → see it rendered → hear it played with multi-instrument audio.

  • 8 style presets — rock, jazz, bossa, waltz, march, reggae, folk, classical — one parameter adds drums + bass + chord accompaniment
  • 30 instruments — piano, strings, brass, woodwinds, synths — selectable by name
  • Visual sheet music — notes highlight as they play
  • Streaming render — sheet music appears as the AI types
  • WAV download — export audio as WAV files directly from the UI
  • get-music-guide — 7 reference topics (instruments, drums, ABC syntax, arrangements, genres, styles, MIDI directives)

Live Performance (Strudel)

Write code → hear it play → edit in a live REPL.

  • TidalCycles mini-notation in JavaScript
  • 72 drum machine banks + 128 GM instruments + built-in synths
  • Full effects chain — filters, reverb, delay, FM synthesis
  • Editable REPL — users can tweak the code and hear changes instantly
  • Live visuals — add .pianoroll() / .scope() / .spectrum() to animate behind the code (native strudel.cc overlay)
  • Record & download — capture live audio and export as WAV
  • get-strudel-guide — 7 reference topics (mini-notation, sounds, effects, patterns, genres, tips, advanced)

Shared

  • search-music-docs — semantic search over strudel.cc and ABCJS documentation

Local Install (Optional)

The remote URL above works without any local setup. If you prefer running locally (offline use, lower latency), install via npm:

CLI One-Liners

# Claude Code
claude mcp add music-studio -- npx -y mcp-music-studio --stdio

# Codex CLI
codex mcp add -- npx -y mcp-music-studio --stdio

# Gemini CLI
gemini mcp add -- npx -y mcp-music-studio --stdio

# OpenCode
opencode mcp add music-studio -- npx -y mcp-music-studio --stdio

JSON Config (Claude Desktop, Cursor, Windsurf, etc.)

<details> <summary>Claude Desktop — edit config file</summary>
OSPath
macOS~/Library/Application Support/Claude/claude_desktop_config.json
Windows%APPDATA%\Claude\claude_desktop_config.json
Linux~/.config/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "music-studio": {
      "command": "npx",
      "args": ["-y", "mcp-music-studio", "--stdio"]
    }
  }
}
</details> <details> <summary>VS Code / Trae / PearAI</summary>

Add to .vscode/mcp.json — note: uses "servers" not "mcpServers":

{
  "servers": {
    "music-studio": {
      "command": "npx",
      "args": ["-y", "mcp-music-studio", "--stdio"]
    }
  }
}
</details> <details> <summary>Cursor</summary>

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "music-studio": {
      "command": "npx",
      "args": ["-y", "mcp-music-studio", "--stdio"]
    }
  }
}
</details> <details> <summary>Windsurf</summary>

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "music-studio": {
      "command": "npx",
      "args": ["-y", "mcp-music-studio", "--stdio"]
    }
  }
}
</details> <details> <summary>Windows</summary>

On Windows, npx is a .cmd file and requires a shell wrapper:

{
  "mcpServers": {
    "music-studio": {
      "command": "cmd",
      "args": ["/c", "npx", "-y", "mcp-music-studio", "--stdio"]
    }
  }
}
</details> <details> <summary>Render modes (for non-ext-apps clients)</summary>

Clients that support ext-apps render the interactive UI inline automatically (auto mode). For clients that don't (Cherry Studio, CLI environments), use --render-mode:

ModeBehavior
auto (default)Inline UI for Claude Desktop, VS Code
browserSaves HTML and opens in system browser
htmlReturns HTML as embedded resource
{
  "mcpServers": {
    "music-studio": {
      "command": "npx",
      "args": ["-y", "mcp-music-studio", "--stdio", "--render-mode", "browser"]
    }
  }
}
</details>

Tools

ToolDescription
play-sheet-musicABC notation → visual sheet music + multi-instrument audio
play-live-patternStrudel code → live-coded patterns with synthesis + effects
get-music-guideABC reference (7 topics: instruments, drums, syntax, genres...)
get-strudel-guideStrudel reference (7 topics: sounds, effects, patterns, genres...)
search-music-docsSemantic search over strudel.cc and ABCJS docs

Prompts

Slash-command / menu entry points, in clients that surface MCP prompts:

PromptWhat it does
compose-beatGenerate + play a Strudel pattern in a genre (args: genre, mood?)
harmonize-melodyAdd chords/accompaniment to an ABC melody and play it (args: melody, style?)
arrange-tuneTurn a melody/idea into a multi-voice arrangement (args: tune, instrumentation?)

Development

bun install
bun run dev      # watch + serve (hot reload)
bun run build    # production build
bun run test     # run tests

Attribution

Forked from the Sheet Music Server example from MCP ext-apps by Anthropic, licensed under MIT.

License

MIT

Related MCP servers

MIMinerU logo

MinerU

Active

Parse PDFs, images, DOCX, PPTX with VLM/pipeline models, OCR, and batch processing via MinerU API.

9
JavaScript
MIT
View repository →

Shared living surface where AI agents leave short traces and weave lineages

VOVox MCP logo

Vox MCP

Maintained

Multi-model AI gateway — 10 providers including Cloudflare and Vercel, with conversation memory.

0
Python
Apache-2.0
View repository →
DEDeepThonk logo

DeepThonk

Active

Provider-neutral OpenDeepThink reasoning server: generate, judge, rank, mutate.

0
TypeScript
MIT
View repository →
WHWhat2Watch logo

Real-time TV schedules, streaming availability, and personalized recommendations.

4
MIT
View repository →
LIliquefy-ui logo

Answers questions about liquefy-ui from its real API surface, so an agent stops inventing props.

1
TypeScript
MIT
View repository →