Cover image
Try Now
2025-04-07

El servidor MIDI MCP es un servidor de protocolo de contexto modelo (MCP) que permite a los modelos AI generar archivos MIDI a partir de datos de música basados ​​en texto. Esta herramienta permite la creación programática de composiciones musicales a través de una interfaz estandarizada.

3 years

Works with Finder

1

Github Watches

0

Github Forks

7

Github Stars

MIDI MCP Server

Overview

MIDI MCP Server is a Model Context Protocol (MCP) server that enables AI models to generate MIDI files from text-based music data. This tool allows for programmatic creation of musical compositions through a standardized interface.

mid

Installation

npm install
npm run build

Usage with MCP Clients (e.g., Cline)

After building the project, simply add the server to your MCP client configuration:

"mcpServers": {
    "musicComposer": {
        "command": "node",
        "args": ["/path/to/midi-mcp-server/build/index.js"]
    }
}

Replace /path/to/ with the actual path to your project directory.

Features

  • Generate MIDI files from structured JSON music data
  • Support for multiple tracks and instruments
  • Customizable tempo, time signature, and note properties
  • Save MIDI files to specified locations

Tool: create_midi

The server provides a tool called create_midi that generates MIDI files from structured music data.

Input Parameters

  • title: String - The title of the composition
  • composition: String - A JSON string representing the music data
  • output_path: String - Path where the MIDI file will be saved

Composition Format

The composition should follow this structure:

{
  "bpm": number,
  "timeSignature": { "numerator": number, "denominator": number },
  "tracks": [
    {
      "name": string,
      "instrument": number,
      "notes": [
        { "pitch": number, "startTime": number, "duration": number, "velocity": number }
      ]
    }
  ]
}

Properties

  • bpm: Tempo in beats per minute
  • timeSignature: Time signature (e.g., {numerator: 4, denominator: 4} for 4/4 time)
  • tracks: Array of instrument tracks
    • name: Track name
    • instrument: MIDI program number (0-127)
    • notes: Array of note objects
      • pitch: MIDI note number (0-127)
      • startTime: Start time in beats
      • duration: Note duration in beats
      • velocity: Note velocity/volume (0-127)

Example

const composition = {
  "bpm": 120,
  "timeSignature": { "numerator": 4, "denominator": 4 },
  "tracks": [
    {
      "name": "Piano",
      "instrument": 0,
      "notes": [
        { "pitch": 60, "startTime": 0, "duration": 1, "velocity": 100 },
        { "pitch": 64, "startTime": 1, "duration": 1, "velocity": 100 },
        { "pitch": 67, "startTime": 2, "duration": 1, "velocity": 100 }
      ]
    }
  ]
};

Dependencies

  • @modelcontextprotocol/sdk: MCP server implementation
  • midi-writer-js: Library for creating MIDI files

Demo

For example, the prompt below, which is a request to create a minor scale 8-bar choral piece, can be processed by the server:

8小節の合唱曲を作って。
若干マイナー調で、メロディックな音階を作ってほしい

https://github.com/user-attachments/assets/e20ebef0-fdbf-4e72-910d-41b94183f9d9

melodic_minor_chorus.mid

Note on Local Execution

This MCP server runs locally and communicates via standard input/output (stdio). No network configuration is required as the MCP client will automatically start the server process and establish communication.

相关推荐

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • lumpenspace
  • Take an adjectivised noun, and create images making it progressively more adjective!

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • https://zenepic.net
  • Embark on a thrilling diplomatic quest across a galaxy on the brink of war. Navigate complex politics and alien cultures to forge peace and avert catastrophe in this immersive interstellar adventure.

  • tomoyoshi hirata
  • Sony α7IIIマニュアルアシスタント

  • apappascs
  • Descubra la colección más completa y actualizada de servidores MCP en el mercado. Este repositorio sirve como un centro centralizado, que ofrece un extenso catálogo de servidores MCP de código abierto y propietarios, completos con características, enlaces de documentación y colaboradores.

  • ShrimpingIt
  • Manipulación basada en Micrypthon I2C del expansor GPIO de la serie MCP, derivada de AdaFruit_MCP230xx

  • jae-jae
  • Servidor MCP para obtener contenido de la página web con el navegador sin cabeza de dramaturgo.

  • ravitemer
  • Un poderoso complemento Neovim para administrar servidores MCP (protocolo de contexto del modelo)

  • patruff
  • Puente entre los servidores Ollama y MCP, lo que permite a LLM locales utilizar herramientas de protocolo de contexto del modelo

  • pontusab
  • La comunidad de cursor y windsurf, encontrar reglas y MCP

  • av
  • Ejecute sin esfuerzo LLM Backends, API, frontends y servicios con un solo comando.

  • Mintplex-Labs
  • La aplicación AI de escritorio todo en uno y Docker con trapo incorporado, agentes de IA, creador de agentes sin código, compatibilidad de MCP y más.

  • chongdashu
  • Habilite clientes asistentes de IA como Cursor, Windsurf y Claude Desktop para controlar el motor irreal a través del lenguaje natural utilizando el Protocolo de contexto del modelo (MCP).

    Reviews

    2 (1)
    Avatar
    user_Fl0Viqy0
    2025-04-17

    The midi-mcp-server by tubone24 is an excellent tool for any MCP application enthusiast. It offers seamless integration and efficient MIDI management, enhancing productivity and control. The repository's clear documentation and user-friendly interface make it accessible and easy to implement. Highly recommended for anyone looking to simplify and improve their MCP workflows!