cli-anything-musescore — Claude Code skill: notation and export
Skill wraps MuseScore 4's CLI for music notation work: transpose scores, export to PDF/MP3/MIDI, extract instrument parts, manage ensemble setup.
npx skills add HKUDS/CLI-Anything --skill cli-anything-musescore -a claude-codeWhat cli-anything-musescore does
The skill exposes the mscore command from MuseScore 4's backend. Transpose notes by key or semitone interval, extract individual parts (violin, piano, etc.), export to PDF, PNG, MP3, MIDI, MusicXML, and Braille. Handles .mscz, .mxl, .musicxml, and .midi files.
All commands use the --json flag for machine-readable output. Transposition is useful when adapting scores to an instrument's range or changing key. Batch export runs multiple formats in one call. Requires MuseScore 4 installed locally.
What it helps with
- Transpose a score to a different key or transposition interval
- Export a musical score to PDF, MP3, or MIDI in one command
- Extract a single instrument part from a full score
- Add or remove an instrument from an ensemble
- Inspect the structure and metadata of a music file
Example prompts for the agent
- Transpose score.mscz to C major and save the result
- Export a score to PDF at 300 DPI and MP3 at 192 kbps in a single batch
- Extract the piano part from a full orchestral score
How to install cli-anything-musescore
1Skills CLI (Vercel)
npx skills add HKUDS/CLI-Anything --skill cli-anything-musescore -a claude-code2Manually: put the files in place
~/.claude/skills/cli-anything-musescore/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/cli-anything-musescore/
1Skills CLI (Vercel)
npx skills add HKUDS/CLI-Anything --skill cli-anything-musescore -a codex2Manually: put the files in place
.agents/skills/cli-anything-musescore/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add HKUDS/CLI-Anything --skill cli-anything-musescore -a cursor2Manually: put the files in place
.cursor/skills/cli-anything-musescore/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install HKUDS/CLI-Anything cli-anything-musescore2Manually: put the files in place
.github/skills/cli-anything-musescore/SKILL.md1Skills CLI (Vercel)
npx skills add HKUDS/CLI-Anything --skill cli-anything-musescore -a gemini-cli2Platform CLI
gemini skills install https://github.com/HKUDS/CLI-Anything --path skills/cli-anything-musescoreManually: put the files in place
.devin/skills/cli-anything-musescore/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add HKUDS/CLI-Anything --skill cli-anything-musescore -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about cli-anything-musescore
How do I install cli-anything-musescore in Claude Code?
Run npx skills add HKUDS/CLI-Anything --skill cli-anything-musescore -a claude-code. The skill will be available at ~/.claude/skills/cli-anything-musescore/SKILL.md.
What does cli-anything-musescore do?
The skill lets your agent work with musical scores through MuseScore 4: transpose notes, export to multiple formats, extract parts for individual instruments, and manage ensembles.
Which file formats does the skill support?
It reads .mscz (MuseScore native), .mxl (compressed MusicXML), .musicxml/.xml, and .mid/.midi. You can export to PDF, PNG, MP3, MIDI, MusicXML, and Braille.
Source text
SKILL.md · Apache-2.0
--- name: "cli-anything-musescore" display_name: MuseScore version: 1.0.0 description: CLI for music notation — transpose, export PDF/audio/MIDI, extract parts, manage instruments requires: MuseScore 4 (musescore.org) entry_point: cli-anything-musescore category: music --- # MuseScore CLI Skill ## Overview Wraps MuseScore 4's `mscore` backend for music notation tasks: transposition, export to multiple formats (PDF, PNG, MP3, MIDI, MusicXML, Braille), part extraction, instrument management, and score analysis. ## Commands ### Project Management ```bash cli-anything-musescore --json project info -i score.mscz cli-anything-musescore --json project open -i score.mscz ``` ### Transposition ```bash # Transpose to a target key cli-anything-musescore --json transpose by-key -i score.mscz -o out.mscz --target-key "C major" --direction closest # Transpose by semitones cli-anything-musescore --json transpose by-interval -i score.mscz -o out.mscz --semitones 3 # Diatonic transposition cli-anything-musescore --json transpose diatonic -i score.mscz -o out.mscz --steps 2 ``` ### Part Extraction ```bash cli-anything-musescore --json parts list -i score.mscz cli-anything-musescore --json parts extract -i score.mscz -o piano.mscz --part "Piano" cli-anything-musescore --json parts generate -i score.mscz -d ./parts/ ``` ### Export ```bash cli-anything-musescore --json export pdf -i score.mscz -o score.pdf cli-anything-musescore --json export mp3 -i score.mscz -o score.mp3 --bitrate 192 cli-anything-musescore --json export png -i score.mscz -o score.png --dpi 300 cli-anything-musescore --json export midi -i score.mscz -o score.mid cli-anything-musescore --json export musicxml -i score.mscz -o score.musicxml cli-anything-musescore --json export braille -i score.mscz -o score.brf cli-anything-musescore --json export batch -i score.mscz -o score.pdf -o score.mid ``` ### Instrument Management ```bash cli-anything-musescore --json instruments list -i score.mscz cli-anything-musescore --json instruments add -i score.mscz -o out.mscz --id keyboard.piano --name "Piano" cli-anything-musescore --json instruments remove -i score.mscz -o out.mscz --name "Violin" ``` ### Score Analysis ```bash cli-anything-musescore --json media probe -i score.mscz cli-anything-musescore --json media stats -i score.mscz cli-anything-musescore --json media diff --reference a.mscz --compare b.mscz ``` ### Session ```bash cli-anything-musescore --json session status cli-anything-musescore --json session undo cli-anything-musescore --json session redo cli-anything-musescore --json session history ``` ## Supported Input Formats - `.mscz` (MuseScore native) - `.mxl` (compressed MusicXML) - `.musicxml` / `.xml` (MusicXML) - `.mid` / `.midi` (MIDI) ## Key Names for Transposition Major: Cb, Gb, Db, Ab, Eb, Bb, F, C, G, D, A, E, B, F#, C# Minor: Ab, Eb, Bb, F, C, G, D, A, E, B, F#, C#, G#, D#, A# Accepted formats: "C", "C major", "Am", "A minor", "Db major", "F# minor" ## Agent Guidance - Always use `--json` flag for machine-readable output - Verify exports with `export verify` after rendering - Use `media probe` to inspect an unknown score before operating on it - Transposition requires both `-i` (input) and `-o` (output) - Part names are case-insensitive for `parts extract`
© HKUDS · Apache-2.0 · HKUDS/CLI-Anything