使用说明
CDP MCP服务器
一种模型上下文协议(MCP)服务器,提供对作曲家桌面项目(CDP)声音转换程序的直接访问。该服务器提供了一个超严格的工作流程,没有解释,通过简单可靠的工具暴露了CDP的原始功能。
概述
CDP MCP Server v7实现了CDP集成的最小化方法:
- 直接执行 -无命令解析或解释
- 原始使用文本 -查看CDP显示的内容
- 简单的工具 -只有6个核心功能
- 数据文件支持 -为复杂操作创建参数文件
特性
- 🎵 完全CDP访问权限 -完全控制执行任何CDP程序
- 📚 程序发现 -按类别列出所有可用的CDP计划
- 📖 用法信息 -直接从CDP获取原始使用文本
- 📄 数据文件创建 -创建CDP程序所需的参数文件
- 🎛️ 光谱准备 -PVOC分析助手
- 📊 声音分析 -获取音频文件的基本属性
需求
系统要求
- macOS、Linux或Windows
- Python 3.8或更高版本
- 已安装CDP(作曲家桌面项目)
Python依赖关系
mcp
soundfile
numpy
CDP安装
- 从下载CDP 官方网站
- 按照特定于平台的说明安装CDP
- 设置
CDP_PATH环境变量到CDP程序目录:export CDP_PATH="/path/to/cdp/programs"
安装
1.克隆存储库
git clone https://github.com/DavidPiazza/CDP_MCP.git
cd CDP_MCP
2.安装依赖项
pip install -r requirements.txt
或单独安装:
pip install mcp soundfile numpy
3.配置CDP路径
设置CDP安装路径:
export CDP_PATH="/Users/yourname/cdpr8/_cdp/_cdprogs" # macOS example
4.运行服务器
python CDP_MCP_v7.py
MCP客户端配置
要将此服务器与MCP客户端(如Claude Desktop)一起使用,请添加到您的配置中:
{
"mcpServers": {
"cdp": {
"command": "python",
"args": ["/path/to/CDP_MCP_v7.py"],
"env": {
"CDP_PATH": "/path/to/cdp/programs"
}
}
}
}
用法
基本工作流程
-
列出可用程序
list_cdp_programs() # Returns categorized list of all CDP programs -
获取程序使用情况
get_cdp_usage('blur') # Returns exact CDP usage text -
执行命令
execute_cdp(['blur', 'blur', 'input.ana', 'output.ana', '50']) # Direct execution with no interpretation
示例操作
时间拉伸
# Check usage
get_cdp_usage('stretch')
# Execute
execute_cdp(['stretch', 'time', '1', 'input.ana', 'output.ana', '2.0'])
光谱模糊
# Note the double syntax for blur
execute_cdp(['blur', 'blur', 'input.ana', 'output.ana', '50'])
颗粒合成
execute_cdp(['modify', 'brassage', '4', 'input.wav', 'output.wav', '0.02', '-0.5', '-r200'])
使用数据文件
# Create data file for tesselate
create_data_file('tess_data.txt', '5 5 5 5\n0.0 0.1 0.2 0.3')
# Execute with data file
execute_cdp(['tesselate', 'tesselate', '1', 'in1.wav', 'in2.wav', 'in3.wav', 'in4.wav', 'output.wav', '0.5', 'tess_data.txt'])
工具参考
list_cdp_programs()
按类别(频谱处理、时域、合成等)列出所有可用的CDP程序
get_cdp_usage(program, subprogram=None)
通过不带参数运行CDP程序,返回其原始使用信息。
execute_cdp(command)
执行以字符串数组形式给出的CDP命令。没有解析或解释。
create_data_file(filepath, content)
创建某些CDP程序所需的文本数据文件。
prepare_spectral(input_file, output_file, window_size=2048)
辅助功能,用于执行光谱处理的PVOC分析。
analyze_sound(filepath)
返回声音文件的基本属性(持续时间、采样率、通道等)
建筑
服务器遵循超刚性的设计理念:
- 无命令解析 -命令是数组,不是字符串
- 无参数验证 -CDP处理所有验证
- 无输出解释 -返回原始CDP输出
- 最小抽象 -仅限直接CDP访问
提示
- 始终检查使用情况
get_cdp_usage()执行前 - 即使成功,CDP也可能返回非零退出代码
- 检查输出文件是否存在,以验证执行是否成功
- 使用精确的命令数组-服务器不进行解释
- 当CDP使用提到DATAFILE要求时创建数据文件
故障排除
未找到CDP
确保 CDP_PATH 环境变量指向您的CDP程序目录。
苹果硅问题
服务器使用以下命令自动处理Apple Silicon Mac上的x86_64仿真 arch -x86_64.
命令失败
- 检查确切的用法
get_cdp_usage() - 验证所有文件路径是否存在
- 确保命令数组格式正确
- 检查CDP的stderr输出是否存在特定错误
许可证
MIT许可证-有关详细信息,请参阅许可证文件
