Token导航 LogoToken导航TokenDH.com
Midi MCP Server logo
设计创作stdio官方级别未说明来源级核验

Midi MCP Server

MCP Server

一个基于模型上下文协议(MCP)的服务器,用于AI驱动的MIDI文件生成,支持从结构化JSON数据创建MIDI文件,提供交互式钢琴卷预览UI和多种部署模式。

工具数

2

提示词数

0

GitHub Stars

41

资源数

0
TypeScriptClaude设计Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

tubone24

提供方

tubone24

最后核验

2026/5/17 20:20

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npm install && npm run build\"

详细介绍

](https://mseep.ai/app/tubone24-midi-mcp-server)

![Verified on MseeP](https://mseep.ai/app/74175d16-e83a-4509-b7ab-31ff1c59cef8)

MIDI MCP服务器

A. 模型上下文协议(MCP) 用于AI驱动的MIDI作曲的服务器。从结构化JSON数据生成MIDI文件,支持和弦名称、交互式钢琴滚动预览UI和多种部署模式。

demo

寻找代理技能方法? 它用更少的上下文创作出更好的歌曲: 大号24/midi代理技能

______________________________________________________________________

特性

  • 两个MCP工具: create_midi (带交互式预览UI)和 parse_chord
  • 丰富的音调输入:MIDI数字、音符名称字符串("C4")、音高数组或和弦名称("Cmaj7")
  • 和弦库:25+和弦品质——大调、小调、小调、8月、7日、maj7、m7、sus2、sus4、power等
  • 灵活的持续时间:数字节拍,标准字符串('4', '8'),点缀('d4'),三胞胎('T8')
  • 音乐理论资源:7个内置参考文件可作为MCP资源访问
  • 三种运输方式:stdio、HTTP或Cloudflare Workers(远程)
  • MCP应用程序用户界面:对话中直接呈现的钢琴滚动可视化和音频播放

______________________________________________________________________

部署选项

选项A——远程(Cloudflare Workers)

预部署的远程服务器可用:

https://midi-mcp-server.tubone24.workers.dev/mcp

将其添加到任何支持流式HTTP的MCP客户端(例如Claude.ai):

{
  "mcpServers": {
    "midi": {
      "type": "http",
      "url": "https://midi-mcp-server.tubone24.workers.dev/mcp"
    }
  }
}

选项B——本地stdio(建议用于桌面客户端)

构建并配置为本地stdio服务器:

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

选项C——本地HTTP

作为本地Streamable HTTP服务器运行:

node build/index.js --http
# or with a custom port:
node build/index.js --http --port=8080

服务器公开:

  • POST /mcp --MCP可流式HTTP端点
  • GET /health --健康检查({"status":"ok","version":"0.2.0"})

______________________________________________________________________

工具

create_midi

从结构化作曲数据生成MIDI文件。返回base64编码的MIDI,并在支持的MCP客户端(MCP App)中呈现交互式钢琴滚动预览和音频播放。

mid

输入

字段类型必填描述
titlestring作文标题
compositionobject成分数据(见下图)

输出 (结构化内容)

字段类型描述
midiBase64stringBase64编码的MIDI文件数据
titlestring作文标题
bpmnumber使用的温度
trackCountnumber生成的曲目数量

______________________________________________________________________

parse_chord

解析和弦名称并返回其分量MIDI音高和音符名称。有助于在写作前理解语音。

输入

字段类型必填描述
chordstring和弦名称,例如。 "Cmaj7", "F#m7", "G7sus4"
octavenumber--根倍频程(默认值: 4)

输出示例

{
  "chord": "Cmaj7",
  "octave": 4,
  "midiNumbers": [60, 64, 67, 71],
  "noteNames": ["C4", "E4", "G4", "B4"]
}

______________________________________________________________________

组合模式

{
  "bpm": 120,                              // tempo (also accepted: "tempo")
  "timeSignature": { "numerator": 4, "denominator": 4 },  // optional, default 4/4
  "tracks": [
    {
      "name": "Piano",                     // optional
      "instrument": 0,                     // GM program number 0–127 (optional)
      "notes": [
        {
          "pitch": 60,                     // MIDI number, note name "C4", or array [60, 64, 67]
          "chord": "Cmaj7",                // OR use chord name (overrides pitch)
          "beat": 1,                       // beat position (1-based); OR use startTime
          "startTime": 0,                  // tick offset (alias: "time")
          "duration": "4",                 // see Duration Reference below
          "velocity": 100,                 // 0–127 (optional, default 100)
          "channel": 0                     // MIDI channel 0–15 (optional)
        }
      ]
    }
  ]
}

音高输入格式

格式示例说明
MIDI编号60标准MIDI音符编号(0–127)
备注名称"C4"字母+可选意外+八度音阶
俯仰阵列[60, 64, 67]多个投球同时进行
和弦场chord: "Cmaj7"和弦名称自动展开

支持的事故: # (尖锐), b (平坦)。示例: "F#5", "Bb3".

持续时间参考

描述
'1'整篇笔记
'2'半音符
'4'季度报告
'8'第八条注释
'16'第十六条注释
'32'第三十二条注释
'd1' 'd2' 'd4' 'd8' 'd16'点状变体
'dd4'双点四分之一
'T4' 'T8'三胞胎变体
4 (数字)基于节拍: 1一刻钟 2=一半, 4=整体, 0.5=第八名

支持的和弦质量

质量示例描述
_(无)_ / majC, Cmaj专业
m / minDm未成年人
dimBdim减少
augEaug增强型
7G7统治第七
maj7 / M7Cmaj7大七
m7 / min7Am7小七
dim7Bdim7缩小第七
m7b5Bm7b5减少一半
aug7Eaug7增强7
6 / m6C6, Am6第六名
9 / maj9 / m9G9第9变体
add9Cadd9添加第9个
11 / 13C11扩展
sus2 / sus4Gsus4暂停
7sus4 / 7sus2G7sus4第七次暂停
power / 5G5电源弦

______________________________________________________________________

MCP资源

服务器公开7个音乐理论参考文献作为MCP资源:

URI描述
music-theory://harmony音程、和弦类型、全音阶和弦、节奏、语音引导
music-theory://chord-progressions按情绪/流派、替换、调制的常见进展
music-theory://counterpoint物种对位规则、协和/不协和、运动类型
music-theory://modes-scales双声调式、小调变奏曲、五声/蓝调、流派指南
music-theory://orchestration仪器范围、GM程序编号、纹理类型
music-theory://rhythm-patterns时间签名、MIDI持续时间参考、流派凹槽
music-theory://voice-leading禁止的平行音、发声策略、非和弦音调

支持资源读取的MCP客户端可以将这些作为上下文传递给AI,从而实现理论感知的组合。

______________________________________________________________________

示例组成

const composition = {
  bpm: 120,
  timeSignature: { numerator: 4, denominator: 4 },
  tracks: [
    {
      name: "Piano",
      instrument: 0,
      notes: [
        { chord: "Cmaj7", beat: 1, duration: "2", velocity: 90 },
        { chord: "Am7",   beat: 3, duration: "2", velocity: 90 },
        { chord: "Fmaj7", beat: 5, duration: "2", velocity: 90 },
        { chord: "G7",    beat: 7, duration: "2", velocity: 90 }
      ]
    },
    {
      name: "Melody",
      instrument: 0,
      notes: [
        { pitch: "E4", beat: 1, duration: "4", velocity: 100 },
        { pitch: "G4", beat: 2, duration: "4", velocity: 100 },
        { pitch: "A4", beat: 3, duration: "2", velocity: 110 }
      ]
    }
  ]
};

______________________________________________________________________

演示

下面的提示生成了一首8小节旋律小调合唱曲:

Create an 8-bar choral piece in a slightly minor, melodic scale.

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

旋律_小调_合唱.mid

______________________________________________________________________

构建与开发

npm install

# Full build (UI + server)
npm run build

# Build steps individually
npm run build:ui     # Vite — builds the MCP App preview HTML
npm run build:server # tsc — compiles TypeScript server

# Deploy to Cloudflare Workers
npm run deploy

# Run tests
npm test
npm run test:coverage

______________________________________________________________________

依赖项

包装用途
@modelcontextprotocol/sdkMCP服务器实现(stdio和HTTP传输)
@modelcontextprotocol/ext-appsMCP Apps扩展——对话中的交互式UI
midi-writer-jsMIDI文件生成
@tonejs/midiMIDI解析(预览UI)
soundfont-player预览UI中的音频播放
zod输入模式验证

目录标签

目录标签

TypeScriptClaude设计MIDI生成本地部署音乐创作AI驱动JSON转MIDI交互式预览

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP