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
Recommend MCP Servers 💡
discogs-mcp-server
MCP Server for Discogs
mcp-sticky
An MCP server for creating AI-generated memes and converting them into stickers for platforms like Telegram and WhatsApp, requiring no external APIs.
@kkjdaniel/bgg-mcp
BGG MCP provides access to BoardGameGeek and a variety of board game related data through the Model Context Protocol. Enabling retrieval and filtering of board game data, user collections, and profiles.
chesspal-mcp-engine
A Stockfish-powered chess engine exposed as an MCP server using FastMCP, providing chess move generation and game status via SSE or stdio transports.
mcp-unity
Model Context Protocol (MCP) plugin to connect with Unity Editor — designed for OpenAI, Gemini, Claude, Deepseek and Grok interoperability
podscan
MCP server for integrating with Podscan to provide podcast-related context