Token导航 LogoToken导航TokenDH.com
DAW MIDI Generator MCP logo
音视频stdio官方级别未说明来源级核验

DAW MIDI Generator MCP

MCP Server

一个通过MCP服务器让Claude AI生成专业MIDI文件的服务,适用于任何数字音频工作站(DAW)。

工具数

0

提示词数

0

GitHub Stars

5

资源数

0
PythonClaude语音音频Claude DesktopClaude

安装说明

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

作者 / 组织

s2d01

提供方

s2d01

最后核验

2026/5/17 20:21

运行时

Python

快速接入

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

命令预览

python3 midi_generator_server.py

详细介绍

DAW MIDI生成器MCP🎵

MCP(模型上下文协议)服务器,使Claude AI能够为以下对象生成专业MIDI文件 任何DAW.

![License: MIT](https://opensource.org/licenses/MIT) ![Python 3.10+](https://www.python.org/downloads/)

______________________________________________________________________

🎹 它做什么

此MCP服务器使Claude能够生成完整的、可用于制作的MIDI文件:

  • 和弦进行 -任何键,任何进度(I-V-vi-IV,ii-V-I,自定义)
  • 鼓图案 -House、Techno、Trap,具有精确的通用MIDI映射
  • 低音线 -稳定、切分、行走模式
  • 旋律 -大调、小调、五音阶
  • 完整安排 -和弦+鼓+低音在一个命令

所有文件都是 标准MIDI 1.0 与每个DAW兼容。

______________________________________________________________________

✅ 兼容DAW

  • Logic Pro X
  • Ableton Live
  • FL工作室
  • Cubase
  • 专业工具
  • 收割者
  • Bitwig工作室
  • 工作室一
  • 库乐队
  • 任何MIDI兼容软件

______________________________________________________________________

📋 需求

  • macOS (在红杉15.7.2+上测试)或 Linux
  • Python 3.10+
  • 克劳德桌面版 (在这里下载)
  • 任何支持MIDI导入的DAW

______________________________________________________________________

🚀 安装

步骤1:克隆存储库

git clone https://github.com/s2d01/daw-midi-generator-mcp.git
cd daw-midi-generator-mcp

步骤2:安装Python依赖项

pip3 install -r requirements.txt

这将安装:

  • mcp -模型上下文协议库
  • mido -MIDI文件生成库

步骤3:获取绝对路径

pwd

复制输出(例如。, /Users/yourname/daw-midi-generator-mcp)

步骤4:配置Claude桌面

打开Claude Desktop的配置文件:

macOS:

nano ~/Library/Application\ Support/Claude/claude_desktop_config.json

Linux:

nano ~/.config/Claude/claude_desktop_config.json

添加此配置(替换 YOUR_USERNAME 使用您的实际用户名):

{
  "mcpServers": {
    "daw-midi": {
      "command": "python3",
      "args": ["/Users/YOUR_USERNAME/daw-midi-generator-mcp/midi_generator_server.py"]
    }
  }
}

⚠️ 关键: 使用 绝对路径 从步骤3开始。相对路径不起作用。

保存文件:

  • 纳米级: Ctrl+O, Enter, Ctrl+X

步骤5:重新启动克劳德桌面

完全退出 克劳德桌面:

  • macOS: Cmd+Q
  • Linux:关闭应用程序

等待3秒,然后重新打开Claude Desktop。

步骤6:验证安装

打开克劳德桌面,键入:

Create a chord progression in C major

Claude应该生成一个MIDI文件并显示路径。

______________________________________________________________________

📂 项目结构

daw-midi-generator-mcp/
├── README.md                    # This file
├── midi_generator_server.py     # MCP server (runs automatically)
├── requirements.txt             # Python dependencies
├── LICENSE                      # MIT License
└── .gitignore                  # Git ignore rules

输出目录

MIDI文件保存到:

~/Music/DAW/Claude_MIDI/

此目录是 自动创建 服务器首次运行时。您不需要手动创建它。

______________________________________________________________________

🎼 运作原理

建筑

┌─────────────────┐
│   You ask       │
│   Claude        │
└────────┬────────┘
         │
         ▼
┌─────────────────────────┐
│   Claude Desktop        │
│   (MCP Client)          │
└────────┬────────────────┘
         │ JSON-RPC over stdio
         ▼
┌─────────────────────────────┐
│   midi_generator_server.py  │
│   (MCP Server - Python)     │
│                             │
│   • Receives tool calls     │
│   • Generates MIDI events   │
│   • Creates .mid files      │
└────────┬────────────────────┘
         │
         ▼
┌─────────────────────────┐
│   ~/Music/DAW/          │
│   Claude_MIDI/          │
│   • chords_*.mid        │
│   • drums_*.mid         │
│   • bass_*.mid          │
└─────────────────────────┘

分步示例

1.你问克劳德:

Generate a house drum pattern at 128 BPM

2.Claude调用MCP服务器:

{
  "method": "tools/call",
  "params": {
    "name": "generate_drum_pattern",
    "arguments": {
      "pattern_type": "house",
      "tempo": 128,
      "bars": 4
    }
  }
}

3.Python服务器执行:

def create_drum_pattern_midi(pattern_type="house", tempo=128, bars=4):
    # Create MIDI file
    mid = MidiFile()
    track = MidiTrack()
    
    # Add tempo and time signature
    track.append(MetaMessage('set_tempo', tempo=...))
    
    # Generate drum events
    # Kick (MIDI 36) on beats 1, 2, 3, 4
    # Snare (MIDI 38) on beats 2, 4
    # Hi-hat (MIDI 42) on eighth notes
    
    # Save to ~/Music/DAW/Claude_MIDI/drums_house_20241130_154523.mid
    return filepath

4.克劳德回答说:

🥁 Drum pattern created!

📁 File: /Users/yourname/Music/DAW/Claude_MIDI/drums_house_20241130_154523.mid
🎶 Style: house
⏱️ Tempo: 128 BPM
📏 Bars: 4

💡 Import into your DAW and assign to a drum kit!

5.将文件导入DAW

服务器什么时候运行?

服务器正在运行 自动在后台:

  • 开始: 打开Claude Desktop时
  • 跑: 当克劳德桌面打开时
  • 停止: 当您退出Claude Desktop时

切勿手动运行它克劳德桌面处理一切。

五种工具

服务器向Claude公开了5个工具:

工具名称功能参数
generate_chord_progression创建和弦MIDI文件键、级数、节奏、小节
generate_drum_pattern创建鼓模式pattern_type(house/techno/trap)、节奏、小节
generate_bass_line创建低音线键、模式(稳定/切分音/行走)、节奏、小节
generate_melody创建旋律音阶(大调/小调/五声音阶)、调性、节奏、小节
create_full_arrangement创建以上所有3个键、流派、节奏、小节

______________________________________________________________________

💬 使用示例

和弦进行

Create a chord progression in D minor
Generate a I-V-vi-IV progression in G major at 140 BPM
Make me 8 bars of C - F - Am - G chords
Create a jazz progression in Bb major

输出: 带有和弦声音的单个MIDI文件

鼓图案

Generate a house pattern at 128 BPM
Create 16 bars of techno drums at 135 BPM
Make me a trap beat
Generate a 4-bar house groove

样式:

  • 房子 -四个落地球,2-4个圈套,八个高帽
  • 科技舞曲 -驾驶踢腿模式,紧身高帽,偶尔打开帽子
  • 陷阱 -切分踢腿、16音高帽、硬圈套

低音线

Create a steady bass in A minor
Generate a syncopated bass in C at 125 BPM
Make me 8 bars of walking bass in F
Create a bass line in E minor

模式:

  • 稳定的 -每拍根音(4/4次)
  • 切分 -带休息区的另类凹槽
  • 行走 -爵士风格的上升/下降模式

旋律

Generate a pentatonic melody in A minor
Create a melody in C major scale
Make me a lead line in E minor
Generate an 8-bar melody

规模:

  • 主要的 -欢快明亮的旋律
  • 较小的 -悲伤、黑暗的旋律
  • 五声音阶 -简单、朗朗上口的旋律(非常适合主角)

完整安排

Create a complete house arrangement in C major at 128 BPM
Generate a techno base in A minor at 135 BPM
Make me 16 bars of trap in G major at 140 BPM
Create a full track arrangement

输出: 3个MIDI文件(和弦+鼓+低音)

______________________________________________________________________

📥 导入DAW

Logic Pro X/GarageBand

  1. File → 导入→ MIDI文件
  2. 导航至 ~/Music/DAW/Claude_MIDI/
  3. 选择一个或多个MIDI文件
  4. 点击 打开

拖放 文件直接进入时间线。

Ableton Live

  1. 将MIDI文件从Finder拖动到会话或排列视图中
  2. Ableton自动创建新曲目
  3. 指定仪器

FL工作室

  1. File → 导入→ MIDI文件
  2. 导航至 ~/Music/DAW/Claude_MIDI/
  3. 选择文件并导入

Cubase/Pro工具/收割机/Bitwig

将MIDI文件拖放到时间线中。

______________________________________________________________________

🔧 技术细节

MIDI规范

  • 格式: MIDI 1.0标准
  • 时间: 480 PPQ(每季度脉冲数)
  • 鼓: 通用MIDI通道10映射

- 踢球:MIDI 36 - 铃声:MIDI 38 - 封闭式耳机:MIDI 42 - 打开嗨帽子:MIDI 46

  • 速度: 动态(50-100)
  • 时间签名: 4/4(目前)

Python架构

主要部件:

# MIDI Utilities
note_to_midi()        # Convert "C4" → MIDI 60
get_chord_notes()     # Generate chord voicings

# MIDI Generators
create_chord_progression_midi()  # Chords
create_drum_pattern_midi()       # Drums
create_bass_line_midi()          # Bass
create_melody_midi()             # Melodies

# MCP Protocol Handlers
@app.list_tools()     # Exposes tools to Claude
@app.call_tool()      # Executes tool calls

关键库:

  • mido -MIDI文件创建和操作
  • mcp -模型上下文协议服务器实现
  • asyncio -MCP通信的异步I/O

______________________________________________________________________

🐛 故障排除

服务器无法启动

错误: ModuleNotFoundError: No module named 'mcp'

解决方案:

pip3 install --upgrade mcp mido

克劳德没有看到服务器

问题: 克劳德说:“我无法使用那个工具”

解决:

  1. 检查配置路径是否为绝对路径:
cat ~/Library/Application\ Support/Claude/claude_desktop_config.json

应显示: /Users/yourname/daw-midi-generator-mcp/midi_generator_server.py

不是: ~/daw-midi-generator-mcp/...

  1. 检查日志:
tail -f ~/Library/Logs/Claude/mcp*.log

寻找:

[daw-midi] [info] Server started and connected successfully
  1. 完全重新启动克劳德桌面:
  • Cmd+Q (不仅仅是关闭窗口)
  • 等待5秒
  • 重新开放

手动测试服务器

cd ~/daw-midi-generator-mcp
python3 midi_generator_server.py

应输出:

🎵 DAW MIDI Generator - MCP Server started!
📁 MIDI files will be saved to: /Users/yourname/Music/DAW/Claude_MIDI

Ctrl+C 停止。

MIDI文件为空或无法播放

检查:

  • ✅ 为赛道分配了一个乐器
  • ✅ 轨道交通量不为零
  • ✅ 曲目未静音
  • ✅ 使用正确的MIDI通道(鼓=通道10)

未创建输出目录

目录 ~/Music/DAW/Claude_MIDI/ 由以下行自动创建:

MIDI_OUTPUT_DIR.mkdir(parents=True, exist_ok=True)

如果它不存在:

  • 服务器尚未运行
  • 检查上的文件权限 ~/Music/

______________________________________________________________________

🛠️ 定制

更改输出目录

编辑 midi_generator_server.py:

# Line ~25
MIDI_OUTPUT_DIR = Path.home() / "Music" / "YOUR_FOLDER" / "MIDI"

添加新鼓图案

编辑 patterns dict in create_drum_pattern_midi():

patterns = {
    "house": [...],
    "techno": [...],
    "trap": [...],
    "your_style": [...]  # Add here
}

添加新比例

编辑 scales dict in create_melody_midi():

scales = {
    "major": [0, 2, 4, 5, 7, 9, 11, 12],
    "minor": [0, 2, 3, 5, 7, 8, 10, 12],
    "pentatonic": [0, 2, 4, 7, 9, 12],
    "blues": [0, 3, 5, 6, 7, 10, 12],  # Add here
}

添加新工具

  1. 创建新的生成器函数
  2. 在中注册 @app.list_tools()
  3. 处理它 @app.call_tool()

更改后: 重新启动克劳德桌面

______________________________________________________________________

🗺️ 路线图

  • \[\]支持交替时间签名(3/4、6/8、7/8)
  • \[\]更多鼓型(breakbeat、dnb、funk)
  • \[\]高级和弦发声(9、11、13)
  • \[ \] 捕捉器
  • \[\]摆动/凹槽量化
  • \[\]MusicXML导出
  • \[\]与AI音乐生成模型集成

______________________________________________________________________

🤝 贡献

欢迎拉取请求!对于重大更改,请先打开一个问题。

  1. 复刻仓库
  2. 创建功能分支(git checkout -b feature/AmazingFeature)
  3. 提交您的更改(git commit -m 'Add AmazingFeature')
  4. 推到分支(git push origin feature/AmazingFeature)
  5. 打开拉取请求

贡献想法:

  • 更多鼓形图案
  • 其他比例和模式
  • 和弦变音
  • 时间签名支持
  • 人性化/随机化
  • MIDI效果(摇摆、速度曲线)

______________________________________________________________________

📄 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

______________________________________________________________________

👤 作者

S2D01

______________________________________________________________________

🙏 致谢

______________________________________________________________________

⭐ 支持

如果你觉得这个项目有用:

  • 标记此存储库
  • 🐛 报告错误问题
  • 💡 建议功能问题
  • 🔧 贡献代码 通过Pull请求

______________________________________________________________________

🎵 快乐的音乐制作!

目录标签

目录标签

PythonClaude语音音频音乐制作本地部署MIDI生成AI辅助创作数字音频工作站和弦生成

支持客户端

Claude DesktopClaude

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Python

部署方式(deploymentType,部署类型)

local-only

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdiononelocal-only

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

安装前确认

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

来源信息

继续浏览同类 MCP