@mcpcn/audio-source-separation-mcp
v1.0.14
Published
MCP服务器,用于火山引擎音源分离,支持人声/伴奏分离
Readme
音源分离 MCP 服务器
基于火山引擎的音源分离MCP服务器,提供人声/伴奏分离功能。
功能特性
- 🎵 人声提取: 专门的人声分离工具,去除背景音乐
- 🎸 伴奏提取: 专门的伴奏分离工具,去除人声
- 🎛️ 模型选择: 标准模型和降噪增强模型
- 📁 多格式支持: wav/mp3/aac等常见音频格式
- 🔧 灵活配置: 可自定义输出格式和路径
工具说明
extract_vocals - 提取人声
从音频中提取人声,去除背景音乐
参数:
audio_path(必需): 音频文件路径use_enhanced_model(可选): 是否使用降噪增强模型,默认falseoutput_format(可选): 输出音频格式 (wav/mp3/aac),默认wavoutput_path(可选): 输出文件路径
示例:
{
"audio_path": "/path/to/music.mp3",
"use_enhanced_model": true,
"output_format": "wav"
}extract_accompaniment - 提取伴奏
从音频中提取伴奏,去除人声
参数:
audio_path(必需): 音频文件路径use_enhanced_model(可选): 是否使用降噪增强模型,默认falseoutput_format(可选): 输出音频格式 (wav/mp3/aac),默认wavoutput_path(可选): 输出文件路径
示例:
{
"audio_path": "/path/to/music.mp3",
"use_enhanced_model": false,
"output_format": "wav"
}模型说明
- 标准模型 (
use_enhanced_model: false)2track_vocal: 标准人声提取2track_acc: 标准伴奏提取
- 降噪增强模型 (
use_enhanced_model: true)bs_4track_vocal: 降噪增强人声提取,效果更好但处理时间更长bs_4track_acc: 降噪增强伴奏提取,效果更好但处理时间更长
使用限制
- 音频时长: ≤10分钟 (建议 > 5秒)
- 文件大小: ≤100MB
- 仅支持音乐类音频
- 推荐: 采样率≥44.1kHz、双声道
- 支持格式: wav、mp3、aac、flac、m4a
安装
npm install
npm run build配置
需要配置火山引擎API凭证环境变量:
export VOLCENGINE_ACCESS_KEY_ID="your_access_key"
export VOLCENGINE_SECRET_KEY="your_secret_key"
export VOLCENGINE_APP_KEY="your_app_key"启动
不建议用 npx 直接启动 MCP 服务器,因为 npx 可能向 stdout 输出提示信息,干扰 MCP 的 stdio 握手,导致「MCP 显示失败」。
推荐方式:
- 直接运行构建后的入口:
node dist/index.js- 或使用包导出的可执行文件(bin):
./node_modules/.bin/audio-source-separation-mcp- 开发模式:
npm run devClaude Desktop 配置
在 claude_desktop_config.json 中添加:
{
"mcpServers": {
"audio-source-separation": {
"command": "node",
"args": ["/path/to/audio-source-separation-mcp/dist/index.js"],
"env": {
"VOLCENGINE_ACCESS_KEY_ID": "your_access_key",
"VOLCENGINE_SECRET_KEY": "your_secret_key",
"VOLCENGINE_APP_KEY": "your_app_key"
}
}
}
}技术架构
- 获取key 的方法是地址是:https://www.volcengine.com/docs/6489/71995 详细查看该文档。
- Node.js + TypeScript: 核心实现
- 火山引擎 OpenAPI SDK: API调用和鉴权
- MCP SDK: 符合MCP协议
- Base64编码: 音频数据传输
License
MIT License
