音频插件控制服务

一个本地MCP服务器,使Claude能够通过编程方式与VST3/AU音频插件交互,包括加载插件、检查参数、处理音频、渲染MIDI、分析频谱内容、比较输出、生成预设以及编译JUCE项目。

  • by Vybecode-LTD
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 PromptMonster-Media-Ltd/AudioPlugInMCP

使用说明

音频插件MCP服务器

本地MCP服务器,使Claude能够以编程方式与VST3/AU音频插件交互。加载插件、检查参数、处理音频、通过乐器渲染MIDI、分析频谱内容、比较输出、生成预设和编译JUCE项目——所有这些都可以在Claude对话中完成。

安装

先决条件

你需要Python 3.10或更高版本 pip 安装在您的系统上。在Windows上,确保您使用的是本机Windows Python(不是WSL——WSL下无法加载VST3插件)。

步骤1:克隆或下载此目录

放置 mcp-audio-plugin-server 存放MCP服务器的文件夹。

步骤2:安装依赖项

cd mcp-audio-plugin-server
pip install -r requirements.txt

如果您还希望DawDreamer用于高级MIDI渲染(可选):

pip install dawdreamer>=0.8.3

步骤3:配置插件路径

编辑 config.yaml 以匹配您的系统。默认设置适用于标准目录中带有VST3插件的标准Windows 11安装(C:\Program Files\Common Files\VST3).

步骤4:添加到Claude桌面

将此块添加到您的 claude_desktop_config.json (通常在 %APPDATA%\Claude\claude_desktop_config.json 在Windows上):

{
  "mcpServers": {
    "audio-plugin-server": {
      "command": "python",
      "args": ["C:/path/to/mcp-audio-plugin-server/server.py"],
      "env": {}
    }
  }
}

用实际位置替换路径 server.py 在你的机器上。

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

当Claude Desktop启动时,服务器将自动启动。请克劳德运行 health_check 工具。

可用工具(29)

插件交互(5个工具)

工具 目的
health_check 验证服务器状态、依赖关系和配置
scan_plugins 在配置的目录中查找VST3/AU/CLAP插件
load_plugin 从文件路径加载插件,检查其类型和参数
list_plugin_parameters 获取包含值、范围和元数据的完整参数列表
set_plugin_parameters 在加载的插件上设置一个或多个参数

音频处理(4个工具)

工具 目的
render_audio 通过效果插件处理音频(文件输入或生成的测试信号)
render_midi_through_plugin 通过乐器插件渲染MIDI音符/和弦/音阶
create_chain 构建一个多插件串行链,并在一次调用中通过它渲染音频
batch_render 使用多个参数集进行渲染,用于A/B测试和数据集生成

音频文件操作(3个工具)

工具 目的
convert_audio 在格式、采样率、比特深度和单声道/立体声之间进行转换
trim_audio 在静音边界处剪切、淡入/淡出、归一化或分割音频
concatenate_audio 将文件端到端连接(使用可选的交叉效果)或将它们分层/混合在一起

分析和测量(6个工具)

工具 目的
analyze_audio 频谱分析、响度(LUFS)、动力学、音高、节奏、特征
compare_audio 比较两个音频文件(频谱相似性、响度差异、相关性)
extract_impulse_response 通过插件发送脉冲,捕获IR,估计RT60
measure_thd 每次谐波击穿的总谐波失真
detect_aliasing 检查具有严重性评级的光谱折叠伪影
measure_frequency_response 正弦扫描测量整个频谱的幅度响应

预设和状态管理(5个工具)

工具 目的
generate_preset 迭代优化参数以获得所描述的目标声音
save_plugin_state 将所有参数值导出到JSON文件
load_plugin_state 从保存的状态文件还原参数值
export_preset_bank 将多个命名预设保存为银行文件
interpolate_presets 通过混合因子在两个参数集之间变形
randomize_parameters 生成随机但具有音乐感的参数值

MIDI实用程序(2个工具)

工具 目的
generate_midi_file 根据音符描述(名称、速度、节拍计时)创建MIDI文件
analyze_midi 解析MIDI文件——音符计数、音程、速度统计、通道、持续时间

监控和测试(3个工具)

工具 目的
monitor_cpu_usage 以各种缓冲区大小和实时比率对插件CPU进行基准测试
stress_test_plugin 11点边缘电池(静音、最大电平、直流、非正常、极端参数)
compile_juce_project 通过CMake从源代码编译JUCE插件项目

插件信息(1个工具)

工具 目的
get_plugin_latency 报告延迟(以样本和毫秒为单位)

示例工作流

加载插件并探索其参数

扫描我的VST3文件夹,然后加载FabFilter Pro-Q 3并列出其所有参数

通过一系列效果处理音频

“加载我的压缩器和EQ插件,先用压缩器创建一个链,然后用EQ,并通过它处理我的鼓循环。”

测量插件质量

加载我的失真插件,测量1kHz的THD,检查混叠,并绘制频率响应图

生成并比较预设值

保存混响的当前状态,随机化参数,通过两者渲染我的声音,并比较输出

发布前的压力测试

加载我的新插件,运行压力测试,然后在64、128和256个样本缓冲区大小下对CPU使用率进行基准测试

创建MIDI文件并通过合成器渲染

以90 BPM的速度生成一个C小调和弦级数(Cm、Fm、Gm、Cm)的MIDI文件,然后通过我加载的合成器插件进行渲染

构建于

Python、FastMCP、Pedalboard(Spotify)、librosa、pyloudnorm、mido、scipy。在您的机器上本地运行——您的插件、音频、硬件。