Melrōse - programming of music melodies
LocalAbout Melrōse - programming of music melodies
Melrōse is a text-based music programming tool for composing and playing melodies through MIDI. It supports live edits during playback, with browser, terminal REPL, and Visual Studio Code workflows.
Key features
- 01Compose melodies with a custom language
- 02Create loops and tracks
- 03Play through MIDI devices or music apps
- 04Edit sequences during playback
- 05Use browser, terminal REPL, or Visual Studio Code
Use cases
- 01Compose note patterns as text expressions
- 02Adjust melodies while hearing playback
- 03Play music through a connected MIDI device
MCP support
The related `melrose-mcp` server receives expressions for playback; this project is the music programming tool it uses.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEMelrōse - programming of music melodies
Introduction
melrōse is a tool to create and play music by programming melodies.
It uses a custom language to compose notes and create loops and tracks to play.
Write note patterns as short text expressions, then play them through a MIDI device or music app.
MIDI (Musical Instrument Digital Interface) is a digital communication language that sends musical instructions—like which note to play, how long to hold it, and how hard it is struck—between electronic instruments and computers.
This is an example of a simple major scale C.
sequence('c d e f g a b c5') // or use the alias "seq"
Note sequences in your program can be changed while playing giving you direct audible feedback.
See also Blog post
Choose your setup
- Try it in your browser: Open the Melrōse Playground, enter the scale example above, connect a MIDI receiver such as GarageBand, and use the play control.
- Work locally with music files and MIDI devices: Install Melrōse to use its terminal REPL and connect to MIDI devices. A local installation can connect to multiple devices, with up to 16 MIDI channels available per device.
- Compose in Visual Studio Code: Install the Melrōse VS Code extension to manage music files and play music from the editor.
Read the Documentation on how to use melrōse.
Showcase
MIDI setup
Contributions
Fixes, suggestions, documentation improvements are all welcome. Fork this project and submit small Pull requests. Discuss larger ones in the Issues list. You can also sponsor Melrōse via Github Sponsors.
Related tools
melrose-mcp
is a (server) tool that uses the MCP protocol to receive expressions to play. See melrose-mcp for details how to install and use it.midicyles
is a tool that visualizes MIDI events using polar coordinates (notes move around in circles).See midicyles for details how to install and use it.keymidi
is a tool that provides an interactive OS Keyboard to send MIDI events. This can be used to control the playing of music inmelrōse.See keymidi for details how to install and use it.slidermidi
is a tool that provides an interactive UI Sliders to send MIDI change event. This can be used to control the playing of music inmelrōse.See slidermidi for details how to install and use it.
Software is licensed under MIT.
© 2026 ernestmicklei.com
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.