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

MCP Patchwork

MCP Server

通过自然语言控制硬件合成器的MIDI控制平面,支持Arturia MicroFreak和Roland SE-02等多款合成器。

工具数

8

提示词数

0

GitHub Stars

3

资源数

0
TypeScriptClaude设计Claude

安装说明

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

作者 / 组织

truthanb

提供方

truthanb

最后核验

2026/5/17 20:21

快速接入

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

详细介绍

拼凑物

告诉你的合成器你想要什么

适用于合成器的LLM友好MIDI控制平面。自然语言→ 通过MCP(模型上下文协议)进行声音设计。

为什么存在补丁

补丁工作最初是一个个人的副项目。

我拥有一些硬件合成器,但我不会经常使用它们。每次我在休息后拿出一个,我都必须重新加载一个完全不同的心理模型:不同的布局、不同的调制方案、不同的参数名称。即使我大致知道我想要什么样的声音,到达那里也可能需要比预期更长的时间。

Patchwork背后的想法很简单:

与其记住合成器是如何工作的,不如描述你想要什么,让系统让你进入球场。

比如:

  • “柔软的进化垫”
  • “更深、更有力的低音”
  • “运动更多,亮度更低”

补丁使用模型上下文协议(MCP)作为LLM和真实硬件之间的控制层。该模型根据音乐意图进行推理,而特定于合成器的驱动程序将该意图转换为确定性MIDI(CC、NRPN、SysEx)消息。

这不是声音设计知识的替代品,也不是完美无瑕的。它不会完美地重现著名的补丁或保证特定的结果。它的优点是减少摩擦——靠得足够近,你可以开始玩和调整,而不是翻阅手册。

修补工作有意专注于:

  • 意图驱动控制
  • 的确定性行为
  • 真正的硬件集成
  • 对MIDI细节进行清晰的抽象

它没有 生成音频、自主表演或尝试“为你制作音乐”

特性

  • 8个MCP工具:完整的合成控制,包括预设检查和调制路由
  • 多合成支持:Arturia MicroFreak和Roland SE-02的司机
  • 高级参数控制:NRPN支持兼容合成器上的14位精度
  • 全调制矩阵:完整的mod路由控制(MicroFreak:5个源×7个目的地)
  • SysEx预设读数:转储并检查硬件预设(MicroFreak:4个存储体中的512个插槽)
  • 动态资源:作为MCP资源公开的Synth功能(参数映射、MIDI参考)
  • 类型安全:具有严格验证的完整TypeScript实现
  • 硬件优先:直接MIDI通信,无需DAW

安装

npm install -g mcp-patchwork
# or clone and build locally:
git clone https://github.com/truthanb/mcp-patchwork
cd patchwork
npm install
npm run build

MCP配置

在MCP客户端的设置文件中配置服务器:

克劳德桌面版

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "patchwork": {
      "command": "npx",
      "args": ["-y", "mcp-patchwork"]
    }
  }
}

或者,如果在本地安装:

{
  "mcpServers": {
    "patchwork": {
      "command": "node",
      "args": ["dist/mcp/server.js"],
      "cwd": "/path/to/patchwork"
    }
  }
}

VS代码(副本)

编辑 ~/Library/Application Support/Code/User/mcp.json (macOS)或 %APPDATA%\Code\User\mcp.json (Windows):

{
  "mcpServers": {
    "patchwork": {
      "command": "npx",
      "args": ["-y", "mcp-patchwork"]
    }
  }
}

其他MCP客户端

任何兼容MCP的客户端都可以使用stdio传输进行连接:

{
  "command": "npx",
  "args": ["-y", "mcp-patchwork"]
}

配置后,重新启动MCP客户端。连接MicroFreak后,拼接工具应自动出现。

快速开始

通过MIDI连接合成器,并使用自然语言通过任何MCP客户端进行控制:

"Create a warm bass sound with slow filter modulation"
"Make a plucky lead with fast decay"  
"Set up a pad with LFO on the filter"

或者直接使用工具:

// List connected synths
await list_synths();  // Returns available MicroFreak and/or SE-02

// Create a kick drum on MicroFreak
await init();  // Reset to clean state
await set_synth_feature("oscillatorType", "Modal");
await set_param("env.amp.decay", 0.15);
await set_param("filter.cutoff", 0.3);
await set_modulation("Envelope", "Pitch", -0.35);
await set_modulation("Envelope", "Cutoff", 0.5);

// Create a bass on SE-02
await set_param("osc1.waveform", 0.0);  // Sawtooth
await set_param("filter.cutoff", 0.3);
await set_param("filter.resonance", 0.6);
await set_param("env.amp.decay", 0.4);

支持的硬件

Arturia MicroFreak

  • 类型:带模拟滤波器的数字混合合成器
  • 振荡器:22种振荡器类型(波表、物理建模、模态、颗粒等)
  • 调制:5个来源×7个目的地=35个mod矩阵路由
  • 预设:4个存储体中有512个插槽(完全支持SysEx读/写)
  • 控制:MIDI CC+14位NRPN,用于平滑调制量
  • 特别功能:循环包络、混响模式、压力灵敏度

罗兰SE-02

  • 类型:精品模拟单合成(SH-101传承)
  • 振荡器:3个真正的模拟振荡器,具有多种波形
  • 过滤器:4极模拟低通滤波器
  • 调制:交叉调制、带延迟的LFO、综合路由
  • 控制:所有参数的MIDI CC
  • 特别功能:内置延迟、子振荡器、噪声发生器、振荡器同步

可扩展性

SynthAdapter 界面允许添加新的合成器。每位司机提供:

  • 参数映射(标准化0.0-1.0值到硬件MIDI)
  • Synth特定功能(振荡器类型、滤波器模式等)
  • 能力描述(可用参数、调制路由)
  • 可选SysEx协议实现(预设转储/加载)

MCP工具

工具用途MicroFreakSE-02
list_synths列出连接的合成器及其功能
describe_synth获取详细功能(振荡器、参数、模矩阵)
set_param设置归一化参数(0.0-1.0)
set_synth_feature设置振荡器/滤波器类型和模式
set_modulation路由mod源→ 目的地(-1.0到1.0)⚠️
init将合成器重置为基线(零模组,中性封套)
load_preset从插槽加载预设(MicroFreak为1-512)⚠️
dump_preset通过SysEx读取完整的预设数据⚠️

传说: ✅ 完全支持|⚠️ 有限/不适用|❌ 不支持

备注:

  • SE-02调制SE-02具有通过专用CC控制的固定调制路由,而不是灵活的调制矩阵
  • SE-02预设:SE-02支持128个预设的程序更改,但不支持与MicroFreak相同的SysEx预设转储

MCP资源

资源描述
synth:///params带有描述和提示的JSON参数映射
synth:///midi-reference完整的MIDI CC/NRPN参考示例

测试

npm test  # 20 tests: CC/NRPN conversion, normalization, clamping

建筑

拼凑物 =MCP服务器+合成适配器抽象+硬件MIDI

  • MCP层 (src/mcp/):8个工具+2个资源,stdio传输
  • 合成抽象 (src/synth/):通用参数接口,驱动程序-抽象API
  • MIDI层 (src/midi/):CC+NRPN+SysEx消息构建、硬件端口管理
  • 驾驶员 (src/drivers/):

- MicroFreak (microfreak/):22种振荡器类型,全模矩阵(5×7),NRPN参数映射,SysEx预设协议 - SE-02 (se02/):模拟架构建模、全面的CC映射、振荡器同步、交叉调制

添加新驱动程序

要添加对新合成器的支持:

  1. 实施 SynthAdapter 接口在 src/drivers/yoursynth/driver.ts
  2. 定义参数映射(规范参数→ 硬件MIDI CC/NRPN)
  3. 指定合成器的特定功能(振荡器类型、滤波器模式等)
  4. 可选地实现SysEx协议以进行预设转储/加载
  5. 在中注册驾驶员 src/synth/manager.ts

MicroFreak驱动程序SE-02驱动器 以供参考实施。

状态

  • ✅ MCP工具套件(8个工具,2个资源)
  • ✅ 支持全功能的MicroFreak驱动程序
  • ✅ SE-02驱动器,具有全面的参数控制
  • ✅ MicroFreak的SysEx预设读数(4个存储体512个预设)
  • ✅ SysEx响应的MIDI输入处理
  • ✅ 使用Zod验证进行类型安全参数处理
  • ✅ 热插拔合成检测
  • ✅ 多合成器支持(可以同时连接多个合成器)

出版

要将新版本发布到npm:

npm run build
npm test
npm version patch  # or minor/major
npm publish

文档

将军

MicroFreak

SE-02

目录标签

目录标签

TypeScriptClaude设计MIDI控制本地部署自然语言处理硬件合成器音乐制作声音设计

支持客户端

Claude

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

8

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP