mcpField
M
Melrose Mcp

Melrose Mcp

Local
github.com/emickleiMedia & Design12Updated 5w ago

About Melrose Mcp

melrose-mcp is an MCP server built on packages from melrōse, a tool for composing and playing music through programmed expressions. It is suited to LLM-driven music playback through a MIDI receiver.

Key features

  1. 01Play musical expressions
  2. 02Set playback tempo
  3. 03List MIDI devices
  4. 04Change output device

Use cases

  1. 01Play a composed note sequence
  2. 02Adjust music playback tempo
  3. 03Select a MIDI output device

MCP support

This stdio MCP server lets MCP clients control melrōse through tools including melrose_play, melrose_bpm, melrose_devices, and melrose_change_output_device.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

melrose-mcp

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.

melrose-mcp is an MCP server (STDIO) that uses the packages from the melrōse tool.

installation

This mcp server requires the Go SDK for installation. To produce music, you need to setup a MIDI receiver such as a DAW or a hardware synthesizer.

go install github.com/emicklei/melrose-mcp@latest

tools

  • melrose_play
  • melrose_bpm
  • melrose_devices
  • melrose_change_output_device

session

change the tempo in melrose to a lower value

melrose_bmp request:

{
  `bpm`: `80`
}

llm response:

I've reduced the tempo to 80 beats per minute from the default of 120 BPM. This creates a more relaxed and slower pace for any musical expressions we play.

play a tune from Claude Debussy

llm response:

I'll create a small segment inspired by Claude Debussy's impressionist style using the Melrose language at our current tempo of 80 BPM.

melrose_play request:

{
  `expression`: `sequence('(F4 A4 D5) 4(F4 A4 D5) (G4 B4 E5) 4(G4 B4 E5) (A4 C5 F5) 4(A4 C5 F5) (G4 B4 E5) 4(G4 B4 E5) (F4 A4 D5) 8= 8(E4 G4 C5) 4(F4 A4 D5)')`
}

melrose_play response:

12.749963417s

configuration in your client

Below an example to configure it in Claude Desktop.

{
    "mcpServers": {
        "melrōse": {
          "command": "<YOUR DIRECTORY TO THE BINARY>/melrose-mcp",
          "args": []
        }
    }
}

example prompts

  • play the music sequence C D E
  • play the first bar of fur elise
  • play the famous tune from Mike Oldfield called Tubular Bells
  • play the notes of Frere Jacques
  • play the C# chord

To help your LLM understand the Melrōse language better, you can use this context.

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.

Software is licensed under MIT. © 2025 ernestmicklei.com

Comments

Markdown supported

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.