Atlas / MCP servers / xdarkzx / SongForge-MCP

SongForge-MCPBLOCK

mcp/xdarkzx/songforge-mcp

Generate original AI music tracks via Claude Desktop — MCP server powered by ACE-Step 1.5, with vocal/instrumental stem splitting and reference-style matching. No music software or AI/ML knowledge needed.

Verdict
BLOCK
Grade
D
Trust score
69 /100
Exposed tools
14 10r · 3w · 1d
Transport
stdio
License
Apache-2.0
Stars
12
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

SongForge-MCP

Generate original AI music through Claude, powered by ACE-Step 1.5

Quick Start • Features • Tools Reference • Architecture • Changelog • Contributing • Troubleshooting

Ask Claude for a song in plain English — "an upbeat pop track about road trips, with lyrics about freedom" — and get back a real, finished audio file. No music software, no AI/ML knowledge, and no account or subscription required. Everything runs on your own computer.

**If this is useful to you

Read from source at commit 3378e4d38fd3OBSERVED · 2026-10-14
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.

claude-code
claude mcp add songforge-mcp -- uvx songforge-mcp
claude-desktop
{
  "mcpServers": {
    "songforge-mcp": {
      "command": "uvx",
      "args": [
        "songforge-mcp"
      ]
    }
  }
}
03

Exposed tools (14)

10 read · 3 write · 1 destructive. Blast radius: 1 tool can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.

ToolRiskDescription
analyze_reference_audioreadStarts measuring real BPM and musical key from an audio file
check_vocal_track_statusreadPoll a job started by any job-based tool on this server
delete_generated_trackdestructiveMoves a file this server previously produced (a full-mix
edit_audio_trackwriteStarts trimming and/or fading a file this server previously
generate_vocal_trackwriteStart generating a full EDM/vocal track (music + vocals
generate_vocal_track_takesreadStarts generating multiple independent takes of the same song
get_midi_noteswriteReturns the actual note data (pitch, start, end, velocity) from
list_generated_tracksreadLists finished tracks sitting in this server
list_recent_jobsreadLists recent background jobs (from generate_vocal_track,
list_separator_modelsreadList audio-separator
play_audioreadPlays a file this server previously produced, on demand.
prepare_voice_referencereadChecks whether reference vocal clips already exist for a named
split_vocal_stemsreadOnly call this when the user
transcribe_instrumental_to_midireadStarts converting an instrumental audio file into MIDI via
04

Trust audit

BLOCKgrade D · trust 69/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeWARN
L2Instruction surface (what it tells the agent)FAIL
L3Class-specific surfaceWARN
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (5 observation(s))
Network
declared (1 observation(s))
Shell
declared (1 observation(s))
Dependencies
pinned
Secrets in source
none-found

Findings (4)

HIGHPrompt injection · prompt.hide_from_user · CWE-94, CWE-1427
songforge_mcp/instructions/00_core.md:402
OS's own default media player — you don't need to tell the user to go
Why it matters. asks the agent to act without the user's knowledge
MEDIUMCode injection · code.dynamic_import · CWE-78, CWE-94, CWE-95
songforge_mcp/tool_registry.py:39
module = importlib.import_module(f"songforge_mcp.tools.{name}")
MEDIUMFilesystem / path · mcp.destructive_tools · CWE-22, CWE-59
delete_generated_track
Why it matters. 1 tool(s) can delete or overwrite
Fix. prefer a read-only mode or scoped tokens; the page states the blast radius
LOWCode injection · code.dynamic_import · CWE-78, CWE-94, CWE-95
tests/test_tool_registry.py:12
module = __import__(f"songforge_mcp.tools.{name}", fromlist=["register"])

Gates applied: instruction_override, no_behavioural_pass.

Audited 2026-10-14 · audit v0.4.1 · source sha 3378e4d38fd3full audit observations/trust-audit/mcp-server/xdarkzx__songforge-mcp.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-143378e4d38fd3BLOCKD69first audit
06

Questions

What is the SongForge-MCP MCP server?

Generate original AI music tracks via Claude Desktop — MCP server powered by ACE-Step 1.5, with vocal/instrumental stem splitting and reference-style matching. No music software or AI/ML knowledge needed.

What tools does SongForge-MCP expose?

14 in total: 10 read-only, 3 that write, and 1 that can delete or overwrite (delete_generated_track). Every one is listed on this page with its risk.

Is SongForge-MCP safe to connect to an agent?

No — not without reading the findings first. The audit graded it D (69/100) and found 1 critical or high issue in the source. Each one is listed on this page with the file and line it is on. Separately from the audit: 1 of its tools can destroy data, so scope the token you give it to what you actually need.

What credentials does SongForge-MCP need?

No credential environment variables were found in its source, so it appears to need none.

How does SongForge-MCP run?

It speaks stdio, so it runs as a local process your client starts. It is published on PyPI as songforge-mcp.

How current is this page?

The grade is for one exact copy of the source (3378e4d38fd3), read on 2026-10-14. The repository is watched and re-audited when it changes.

Advertisement