Declarative multi-track audio engine for AI agents: YAML timelines to TTS speech, music beds and SFX with sidechain ducking, EBU R128 mastering and subtitles. CLI, MCP server, Agent Skill and Claude Code plugin.
接入配置
选择客户端,复制配置,再按项目文档补齐环境变量。
claude mcp add soniccraft --env ELEVENLABS_API_KEY='<ELEVENLABS_API_KEY>' --env OPENAI_API_KEY='<OPENAI_API_KEY>' --env CARTESIA_API_KEY='<CARTESIA_API_KEY>' -- docker run -i --rm -e ELEVENLABS_API_KEY -e OPENAI_API_KEY -e CARTESIA_API_KEY ghcr.io/user-github-me/soniccraft:0.1.0~/.codex/config.toml
[mcp_servers.soniccraft]
command = "docker"
args = ["run", "-i", "--rm", "-e", "ELEVENLABS_API_KEY", "-e", "OPENAI_API_KEY", "-e", "CARTESIA_API_KEY", "ghcr.io/user-github-me/soniccraft:0.1.0"]
env = { ELEVENLABS_API_KEY = "<ELEVENLABS_API_KEY>", OPENAI_API_KEY = "<OPENAI_API_KEY>", CARTESIA_API_KEY = "<CARTESIA_API_KEY>" }
# codex mcp add soniccraft --env ELEVENLABS_API_KEY='<ELEVENLABS_API_KEY>' --env OPENAI_API_KEY='<OPENAI_API_KEY>' --env CARTESIA_API_KEY='<CARTESIA_API_KEY>' -- docker run -i --rm -e ELEVENLABS_API_KEY -e OPENAI_API_KEY -e CARTESIA_API_KEY ghcr.io/user-github-me/soniccraft:0.1.0~/.cursor/mcp.json
{
"mcpServers": {
"soniccraft": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ELEVENLABS_API_KEY",
"-e",
"OPENAI_API_KEY",
"-e",
"CARTESIA_API_KEY",
"ghcr.io/user-github-me/soniccraft:0.1.0"
],
"env": {
"ELEVENLABS_API_KEY": "<ELEVENLABS_API_KEY>",
"OPENAI_API_KEY": "<OPENAI_API_KEY>",
"CARTESIA_API_KEY": "<CARTESIA_API_KEY>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"soniccraft": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ELEVENLABS_API_KEY",
"-e",
"OPENAI_API_KEY",
"-e",
"CARTESIA_API_KEY",
"ghcr.io/user-github-me/soniccraft:0.1.0"
],
"env": {
"ELEVENLABS_API_KEY": "<ELEVENLABS_API_KEY>",
"OPENAI_API_KEY": "<OPENAI_API_KEY>",
"CARTESIA_API_KEY": "<CARTESIA_API_KEY>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"soniccraft": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ELEVENLABS_API_KEY",
"-e",
"OPENAI_API_KEY",
"-e",
"CARTESIA_API_KEY",
"ghcr.io/user-github-me/soniccraft:0.1.0"
],
"env": {
"ELEVENLABS_API_KEY": "<ELEVENLABS_API_KEY>",
"OPENAI_API_KEY": "<OPENAI_API_KEY>",
"CARTESIA_API_KEY": "<CARTESIA_API_KEY>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"soniccraft": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ELEVENLABS_API_KEY",
"-e",
"OPENAI_API_KEY",
"-e",
"CARTESIA_API_KEY",
"ghcr.io/user-github-me/soniccraft:0.1.0"
],
"env": {
"ELEVENLABS_API_KEY": "<ELEVENLABS_API_KEY>",
"OPENAI_API_KEY": "<OPENAI_API_KEY>",
"CARTESIA_API_KEY": "<CARTESIA_API_KEY>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"soniccraft": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ELEVENLABS_API_KEY",
"-e",
"OPENAI_API_KEY",
"-e",
"CARTESIA_API_KEY",
"ghcr.io/user-github-me/soniccraft:0.1.0"
],
"env": {
"ELEVENLABS_API_KEY": "<ELEVENLABS_API_KEY>",
"OPENAI_API_KEY": "<OPENAI_API_KEY>",
"CARTESIA_API_KEY": "<CARTESIA_API_KEY>"
}
}
}
}需要的环境变量
ELEVENLABS_API_KEYOPENAI_API_KEYCARTESIA_API_KEY
把占位值换成你自己的密钥;不要把密钥提交到代码仓库。