Two-mode MCP music studio: scored composition (ABC notation) and live performance (Strudel). Interactive ext-apps UI with sheet music rendering, 30+ instruments, style presets, and live coding REPL.
SaferSkills independently audited Mcp Music Studio (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
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.
Paste this URL into any MCP client that supports remote servers:
https://mcp-music-studio.linxule.workers.dev/mcpClaude 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/mcpThat's it — ask Claude to play a song or create a beat.
Write sheet music → see it rendered → hear it played with multi-instrument audio.
Write code → hear it play → edit in a live REPL.
.pianoroll() / .scope() / .spectrum() to animate behind the code (native strudel.cc overlay)The remote URL above works without any local setup. If you prefer running locally (offline use, lower latency), install via npm:
# 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<details> <summary>Claude Desktop — edit config file</summary>
| OS | Path |
|---|---|
| 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:
| Mode | Behavior |
|---|---|
auto (default) | Inline UI for Claude Desktop, VS Code |
browser | Saves HTML and opens in system browser |
html | Returns HTML as embedded resource |
{
"mcpServers": {
"music-studio": {
"command": "npx",
"args": ["-y", "mcp-music-studio", "--stdio", "--render-mode", "browser"]
}
}
}</details>
| Tool | Description |
|---|---|
play-sheet-music | ABC notation → visual sheet music + multi-instrument audio |
play-live-pattern | Strudel code → live-coded patterns with synthesis + effects |
get-music-guide | ABC reference (7 topics: instruments, drums, syntax, genres...) |
get-strudel-guide | Strudel reference (7 topics: sounds, effects, patterns, genres...) |
search-music-docs | Semantic search over strudel.cc and ABCJS docs |
Slash-command / menu entry points, in clients that surface MCP prompts:
| Prompt | What it does |
|---|---|
compose-beat | Generate + play a Strudel pattern in a genre (args: genre, mood?) |
harmonize-melody | Add chords/accompaniment to an ABC melody and play it (args: melody, style?) |
arrange-tune | Turn a melody/idea into a multi-voice arrangement (args: tune, instrumentation?) |
bun install
bun run dev # watch + serve (hot reload)
bun run build # production build
bun run test # run testsForked from the Sheet Music Server example from MCP ext-apps by Anthropic, licensed under MIT.
MIT
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.