ACE Music MCP Server

November 14, 2026

Independent third-party service, see Legal

Table of contents

  1. Endpoint and authorization
  2. Setup
  3. Use it in the Claude app or ChatGPT
  4. Tools
  5. Long-running work
  6. Example prompts
  7. Limits and notes

The useapi.net ACE Music MCP server lets an AI assistant such as the Claude app, ChatGPT, Claude Code, Cursor or VS Code Copilot make music with ACE Music on your own ACE Music accounts. It is a hosted Model Context Protocol server with 15 tools: make two songs from an idea or from your own style and lyrics on ACE Music v1, v1.1 or the free ACE-Step v1.5 XL, cover, remix, edit and mash up songs, split them into stems, read their score, download WAV, MIDI and MusicXML, write lyrics and styles, and upload audio and images as references. Each tool calls the ACE Music API, so the same rules and limits apply. Nothing needs to be installed or hosted.

Is there an ACE Music MCP server? Yes. useapi.net, a third-party service not affiliated with ACE Music, hosts one at https://api.useapi.net/v1/acemusic/mcp with 15 tools for ACE Music songs, covers, stems and scores, on your own ACE Music account, nothing to install. ACE Music offers no public MCP integration of its own (as of November 2026).

See all useapi.net MCP servers on Model Matrix & MCP.

Endpoint and authorization

https://api.useapi.net/v1/acemusic/mcp
  • Transport: Streamable HTTP.
  • Listed in the official MCP Registry as net.useapi/acemusic, so MCP clients and directories that read the registry can find it by that name.
  • Authorization: your useapi.net API token in the Authorization: Bearer … header, see Setup useapi.net. The Claude app and ChatGPT sign in with OAuth instead, see Use it in the Claude app or ChatGPT.
  • You need at least one ACE Music account added with Setup ACE Music. Adding and removing accounts is not available over MCP: use POST /accounts or the setup page.

Setup

Replace YOUR_API_TOKEN with your useapi.net API token.

Claude Code

claude mcp add --transport http useapi-acemusic https://api.useapi.net/v1/acemusic/mcp --header "Authorization: Bearer YOUR_API_TOKEN"

Cursor

In ~/.cursor/mcp.json:

{
  "mcpServers": {
    "useapi-acemusic": {
      "url": "https://api.useapi.net/v1/acemusic/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

VS Code

In .vscode/mcp.json:

{
  "servers": {
    "useapi-acemusic": {
      "type": "http",
      "url": "https://api.useapi.net/v1/acemusic/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Windsurf and other clients

Any client that supports remote MCP servers over HTTP with custom headers works. The usual JSON shape:

{
  "mcpServers": {
    "useapi-acemusic": {
      "serverUrl": "https://api.useapi.net/v1/acemusic/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Some clients name the address field url instead of serverUrl.

Test it with curl

curl -s https://api.useapi.net/v1/acemusic/mcp \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}}'

curl -s https://api.useapi.net/v1/acemusic/mcp \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'

The first call answers with the server’s name useapi-acemusic and its instructions for the assistant, the second with the 15 tools.

Use it in the Claude app or ChatGPT

The Claude app (claude.ai and Claude Desktop) and ChatGPT can add this server as a custom connector. They sign in with OAuth: you give the app the URL, it opens a useapi.net page, and you paste your useapi.net API token there once. Both work on their Free plans. The API-token setups above for Claude Code, Cursor, VS Code and other clients keep working as before.

https://api.useapi.net/v1/acemusic/mcp

Claude app

  1. Open Settings → Connectors and click Add custom connector.
  2. Enter a name, for example useapi ACE Music, and the URL above, then click Add.
  3. Click Connect. Claude opens the useapi.net sign-in page.
  4. Paste your useapi.net API token and click Allow.

Claude asks before each tool call unless you choose Always allow. The Free plan allows one custom connector.

ChatGPT

  1. Open Plugins, click Add and choose Add custom MCP server.
  2. Enter a name and the URL above, and set Authentication to OAuth.
  3. Tick ChatGPT’s “I understand and want to continue” box, then click Create as a plugin.
  4. Click Connect. ChatGPT opens the useapi.net sign-in page.
  5. Paste your useapi.net API token and click Allow.

ChatGPT asks you to confirm each tool call that creates or changes something. The Free plan works without developer mode (as of October 25, 2026).

How the sign-in works

  • Your API token is in your welcome email, see Setup useapi.net. The useapi.net page links there too.
  • Each connection is for one MCP server. Connect each server you want to use on its own.
  • The app gets an access token that lasts 1 hour and renews it on its own. A connection you don’t use for 90 days lapses, and you connect again.
  • Resetting your API token disconnects every app connected with it.
  • Every song’s mp3 link is public and permanent, and its play link is a direct link that works for about an hour, for players that refuse the mp3 link’s redirect. Stem tracks and WAV files are signed links that work for 24 hours. MIDI and MusicXML files come back as download links that work in your browser without sign-in for 1 hour.

Tools

Songs, uploads and jobs are named by the ids the tools return, and each id carries its account, so a cover, a split or a download runs on the account that holds the song. Tools that start something new take an optional email to pick the account.

Accounts

Tool What it does Main parameters
acemusic_list_accounts Lists your accounts with their plan, maxJobs and health, as stored.  
acemusic_get_account Reads one account live: plan, credits left, the models with their text limits, and credit costs. email
acemusic_update_account Sets maxJobs, the requests an account runs at once, 1 to 4. email, maxJobs

Songs

Tool What it does Main parameters
acemusic_create_song Makes two songs from an idea, or from your own style and lyrics with a mode: generate, cover, remix, edit or mashup. prompt, images or style, lyrics, instrumental, title, mode, references, model, the options, email
acemusic_get_job Reads a song or stem-split job, and with wait: true waits for it to finish. jobid, wait
acemusic_list_jobs Lists the jobs running now on each account.  
acemusic_list_songs Lists an account’s Library, newest first, page by page. email, limit, after
acemusic_get_song Reads one song with fresh links and its stems. songId
acemusic_delete_song Moves a song to the account’s ACE Music trash. Cannot be undone through the API. songId

The parameters match POST /music, including the options and model switching.

Stems, scores and downloads

Tool What it does Main parameters
acemusic_split_stems Splits a song into vocal and instrumental (5 credits) or every stem (60 credits), on paid plans. songId, mode
acemusic_get_score Returns a song’s score in ABC notation. songId
acemusic_download_song Returns a song’s mp3 link with its play link, a signed WAV link (paid plans), or the MIDI or MusicXML download address (paid plans). songId, format

Writing and uploads

Tool What it does Main parameters
acemusic_write_lyrics Writes or rewrites lyrics and a title, without making a song. prompt, style, lyrics, title, model, email
acemusic_improve_style Improves a style description, or invents one. style, lyrics, model, email
acemusic_upload_file Uploads audio (MP3, WAV, FLAC, OGG, M4A or AAC, up to 8 minutes) as a Library song to use as a reference, or an image (JPEG, PNG or WebP, up to 10 MB) for a prompt, from a public https URL or sent as contentBase64. url or contentBase64, mimeType, title, email

A file sent by URL is read into memory first, up to 60 MB (25 MB when its server sends no size). Larger audio goes through POST /files directly. The full input schema of every tool comes from tools/list.

Long-running work

MCP clients usually give up on a tool call after about a minute, so a tool waits up to about 50 seconds:

  • An ACE-Step request usually takes 20 to 50 seconds, ACE Music v1.1 Preview about 35 to 75 and ACE Music v1 about 80 to 105. If the songs aren’t done in time, acemusic_create_song returns the jobid, and acemusic_get_job with wait: true picks it up. Ask the assistant to keep checking until it is done.
  • A stem split takes about a minute and a half, and works the same way.
  • acemusic_write_lyrics, acemusic_improve_style, acemusic_get_score and acemusic_download_song answer within about 55 seconds. When ACE Music is still making a score or a file, call the tool again a minute later.

Clients that ask for progress notifications get one about every 10 seconds while a tool waits.

Each song comes back with its songId, a public mp3 link to keep and a play link (playUrl, valid about an hour) to play now: some browsers (Brave) block the redirect behind the mp3 link. A song deleted since shows as deleted. Stem tracks and WAV files come back as signed links that work for 24 hours. MIDI and MusicXML come back as the address of GET /music/download, fetched with your API token in the Authorization header, or, in an app signed in with OAuth, as a download link that works without sign-in for 1 hour.

Example prompts

  • “Make an upbeat synth-pop song about catching the last train home, with ACE-Step.”
  • “Write lyrics about a cat who loves rainy days, then sing them as acoustic indie folk on ACE Music v1.”
  • “Cover my last song as a slow jazz ballad.”
  • “Mash up these two songs into one.”
  • “Split that song into stems and give me the drums.”
  • “Show me the score of the first song.”
  • “How many ACE Music credits are left on my accounts?”

Limits and notes

  • The tools use your ACE Music accounts and the same rules as the REST API, such as maxJobs. ACE Music v1 and v1.1 requests use 4 of the account’s credits, ACE-Step v1.5 XL none, see Pricing.
  • A client may send up to 20 JSON-RPC requests in one batch.
  • If the client sends an MCP-Protocol-Version header, it must be one of the supported versions: 2025-11-25, 2025-06-18, 2025-03-26 or 2024-11-05.
  • Tool calls show in your usage stats (bot=acemusic) through the REST call each tool makes, the same rows a direct API request writes.