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.
Setup
Choose your client, copy the config, then fill in any required environment variables.
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>"
}
}
}
}Environment variables
ELEVENLABS_API_KEYOPENAI_API_KEYCARTESIA_API_KEY
Replace the placeholders with your own credentials and keep them out of version control.