
MCP MIDI Server

2025.04.16
2
Python音乐制作MIDI 控制娱乐功能
MCP MIDI Server 是一个 FastMCP 服务,允许 LLM 向任何支持 MIDI 输入的软件发送 MIDI 序列。它通过创建虚拟 MIDI 输出端口,支持发送 MIDI Note On/Off 消息、Control Change (CC) 消息,并能够以精确的时间序列发送 MIDI 事件。该服务器可以作为 MIDI 输入设备用于任何支持 MIDI 的应用程序,如数字音频工作站(DAW)、硬件合成器或其他虚拟乐器。
View on GitHub
Overview
基本能力
产品定位
MCP MIDI Server 是一个专为音乐制作和 MIDI 控制设计的服务,允许用户通过 LLM 生成 MIDI 序列并发送到支持 MIDI 的应用程序中。
核心功能
- 创建虚拟 MIDI 输出端口
- 发送 MIDI Note On/Off 消息
- 发送 Control Change (CC) 消息
- 以精确的时间序列发送 MIDI 事件
- 作为 MIDI 输入设备用于任何支持 MIDI 的应用程序
适用场景
- 音乐制作:与数字音频工作站(DAW)如 Ableton Live、Logic Pro 或 FL Studio 集成
- 硬件控制:通过计算机的 MIDI 接口控制硬件合成器
- 虚拟乐器:连接其他支持 MIDI 输入的虚拟乐器或灯光控制器
工具列表
rtmidi
: 用于 MIDI 输入/输出的 Python 库fastmcp
: FastMCP 框架的核心库python-dotenv
: 用于加载环境变量asyncio
: 用于异步编程
常见问题解答
- 如何配置 MIDI 端口?
在
.env
文件中设置PORT=8123
。 - 如何连接到 DAW? 在 DAW 中选择 "MCP MIDI Out" 作为 MIDI 输入设备。
使用教程
使用依赖
安装以下依赖:
pip install rtmidi fastmcp python-dotenv asyncio
安装教程
- 克隆仓库:
git clone <repository-url> cd mcp-server-midi
- 创建虚拟环境并激活:
python -m venv .venv source .venv/bin/activate
- 安装依赖:
pip install -r requirements.txt
- 创建
.env
文件:PORT=8123
调试方式
运行服务器:
python mcp_midi_server.py
检查 MIDI 端口是否成功创建,并在 DAW 中测试 MIDI 输入。