Skip to main content
Glama

SunoMCP

PyPI version PyPI downloads Python 3.10+ License: MIT MCP

A Model Context Protocol (MCP) server for AI music generation using Suno through the AceDataCloud API.

Generate AI music, lyrics, and manage audio projects directly from Claude, VS Code, or any MCP-compatible client.

Features

  • Music Generation - Create AI-generated songs from text prompts

  • Custom Lyrics & Style - Full control over lyrics, title, and music style

  • Song Extension - Continue existing songs from any timestamp

  • Cover/Remix - Create cover versions with different styles

  • Lyrics Generation - Generate structured lyrics from descriptions

  • Persona Management - Save and reuse voice styles

  • Task Tracking - Monitor generation progress and retrieve results

Related MCP server: MusicMCP.AI

Tool Reference

Tool

Description

suno_generate_music

Generate AI music from a text prompt using Suno's Inspiration Mode.

suno_generate_custom_music

Generate AI music with full control over lyrics, title, and style (Custom Mode).

suno_extend_music

Extend an existing song from a specific timestamp with new lyrics.

suno_cover_music

Create a cover or remix version of an existing song in a different style.

suno_concat_music

Concatenate extended song segments into a single complete audio file.

suno_generate_with_persona

Generate music using a saved artist persona for consistent vocal style.

suno_remaster_music

Remaster an existing song; v5/v5.5 require a variation category.

suno_stems_music

Separate a song into individual stems (vocals and instruments).

suno_replace_section

Replace a specific time range in a song with new generated content.

suno_upload_extend

Extend an uploaded audio (your own music) with new AI-generated content.

suno_upload_cover

Create an AI cover of an uploaded audio (your own music).

suno_mashup_music

Blend exactly two songs using a required creative-direction prompt.

suno_all_stems_music

Return two distinct 12-stem candidate sets, labeled stem_set 1 and 2 in task results.

suno_generate_lyrics

Generate song lyrics from a text prompt.

suno_get_mp4

Get an MP4 video version of a generated song.

suno_get_timing

Get timing and subtitle data for a generated song.

suno_extract_vocals

Extract a required vocal interval shorter than 30 seconds.

suno_get_wav

Get the lossless WAV format of a generated song.

suno_get_mp3

Get the compressed MP3 format of a generated song.

suno_get_midi

Get MIDI data extracted from a generated song.

suno_create_persona

Create a new artist persona from an existing audio's vocal style.

suno_optimize_style

Optimize a music style description for better generation results.

suno_mashup_lyrics

Generate mashup lyrics by combining two sets of lyrics.

suno_upload_audio

Upload an external audio file to Suno for use in subsequent operations.

suno_get_task

Query the status and result of a music generation task.

suno_get_tasks_batch

Query multiple music generation tasks at once.

suno_list_models

List all available Suno models and their capabilities.

suno_list_actions

List all available Suno API actions and corresponding tools.

suno_get_lyric_format_guide

Get guidance on formatting lyrics for Suno music generation.

Quick Start

1. Get Your API Token

  1. Sign up at AceDataCloud Platform

  2. Go to the API documentation page

  3. Click "Acquire" to get your API token

  4. Copy the token for use below

AceDataCloud hosts a managed MCP server — no local installation required.

Endpoint: https://suno.mcp.acedata.cloud/mcp

All requests require a Bearer token. Use the API token from Step 1.

Claude.ai

Connect directly on Claude.ai with OAuth — no API token needed:

  1. Go to Claude.ai Settings → Integrations → Add More

  2. Enter the server URL: https://suno.mcp.acedata.cloud/mcp

  3. Complete the OAuth login flow

  4. Start using the tools in your conversation

Claude Desktop

Add to your config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "suno": {
      "type": "streamable-http",
      "url": "https://suno.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Cursor / Windsurf

Add to your MCP config (.cursor/mcp.json or .windsurf/mcp.json):

{
  "mcpServers": {
    "suno": {
      "type": "streamable-http",
      "url": "https://suno.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

VS Code (Copilot)

Add to your VS Code MCP config (.vscode/mcp.json):

{
  "servers": {
    "suno": {
      "type": "streamable-http",
      "url": "https://suno.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Or install the Ace Data Cloud MCP extension for VS Code, which registers the hosted MCP servers with one-click setup.

JetBrains IDEs

  1. Go to Settings → Tools → AI Assistant → Model Context Protocol (MCP)

  2. Click AddHTTP

  3. Paste:

{
  "mcpServers": {
    "suno": {
      "url": "https://suno.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Claude Code

Claude Code supports MCP servers natively:

claude mcp add suno --transport http https://suno.mcp.acedata.cloud/mcp \
  -h "Authorization: Bearer YOUR_API_TOKEN"

Or add to your project's .mcp.json:

{
  "mcpServers": {
    "suno": {
      "type": "streamable-http",
      "url": "https://suno.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Cline

Add to Cline's MCP settings (.cline/mcp_settings.json):

{
  "mcpServers": {
    "suno": {
      "type": "streamable-http",
      "url": "https://suno.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Amazon Q Developer

Add to your MCP configuration:

{
  "mcpServers": {
    "suno": {
      "type": "streamable-http",
      "url": "https://suno.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Roo Code

Add to Roo Code MCP settings:

{
  "mcpServers": {
    "suno": {
      "type": "streamable-http",
      "url": "https://suno.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Continue.dev

Add to .continue/config.yaml:

mcpServers:
  - name: suno
    type: streamable-http
    url: https://suno.mcp.acedata.cloud/mcp
    headers:
      Authorization: "Bearer YOUR_API_TOKEN"

Zed

Add to Zed's settings (~/.config/zed/settings.json):

{
  "language_models": {
    "mcp_servers": {
      "suno": {
        "url": "https://suno.mcp.acedata.cloud/mcp",
        "headers": {
          "Authorization": "Bearer YOUR_API_TOKEN"
        }
      }
    }
  }
}

cURL Test

# Health check (no auth required)
curl https://suno.mcp.acedata.cloud/health

# MCP initialize
curl -X POST https://suno.mcp.acedata.cloud/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'

3. Or Run Locally (Alternative)

If you prefer to run the server on your own machine:

# Install from PyPI
pip install mcp-suno
# or
uvx mcp-suno

# Set your API token
export ACEDATACLOUD_API_TOKEN="your_token_here"

# Run (stdio mode for Claude Desktop / local clients)
mcp-suno

# Run (HTTP mode for remote access)
mcp-suno --transport http --port 8000

Claude Desktop (Local)

{
  "mcpServers": {
    "suno": {
      "command": "uvx",
      "args": ["mcp-suno"],
      "env": {
        "ACEDATACLOUD_API_TOKEN": "your_token_here"
      }
    }
  }
}

Docker (Self-Hosting)

docker pull ghcr.io/acedatacloud/mcp-suno:latest
docker run -p 8000:8000 ghcr.io/acedatacloud/mcp-suno:latest

Clients connect with their own Bearer token — the server extracts the token from each request's Authorization header.

Available Tools

Music Generation

Tool

Description

generate_music

Generate music from a text prompt (Inspiration Mode)

generate_custom_music

Generate with custom lyrics, title, and style

extend_music

Extend an existing song from a timestamp

cover_music

Create a cover/remix version

concat_music

Merge extended segments into complete audio

generate_with_persona

Generate using a saved voice style

remaster_music

Remaster an existing song to improve audio quality

stems_music

Separate a song into individual stems (vocals/instruments)

replace_section

Replace a specific time range with new generated content

upload_extend

Extend uploaded audio with new AI-generated content

upload_cover

Create an AI cover of uploaded audio

mashup_music

Create a mashup by blending multiple songs together

Lyrics

Tool

Description

generate_lyrics

Generate song lyrics from a prompt

mashup_lyrics

Generate mashup lyrics by combining two sets of lyrics

optimize_style

Optimize a style description for better generation results

Media Conversion

Tool

Description

get_mp4

Get an MP4 video version of a generated song

get_wav

Get lossless WAV format of a generated song

get_mp3

Get compressed MP3 format of a generated song

get_midi

Get MIDI data extracted from a generated song

get_timing

Get timing and subtitle data for a generated song

extract_vocals

Extract the vocal track from a generated song

Persona

Tool

Description

create_persona

Save a voice style for reuse

Upload

Tool

Description

upload_audio

Upload an external audio file for use in subsequent operations

Tasks

Tool

Description

get_task

Query a single task status

get_tasks_batch

Query multiple tasks at once

Information

Tool

Description

list_models

List available Suno models

list_actions

List available API actions

get_lyric_format_guide

Get lyrics formatting guide

Usage Examples

Generate Music from Prompt

User: Create a happy birthday song

Claude: I'll generate a birthday song for you.
[Calls generate_music with prompt="A happy birthday celebration song"]

Generate with Custom Lyrics

User: Create a rock song with these lyrics:
[Verse]
Thunder in the night
Electric soul ignite
[Chorus]
We are the storm

Claude: I'll create a rock song with your lyrics.
[Calls generate_custom_music with lyrics, title="Storm", style="rock, powerful"]

Extend a Song

User: Continue this song from the 2-minute mark with a bridge section

Claude: I'll extend the song with a bridge.
[Calls extend_music with audio_id, continue_at=120, lyric="[Bridge]..."]

Available Models

Model

Version

Max Duration

Features

chirp-v5-5

V5.5

8 minutes

Latest, best quality

chirp-v5

V5

8 minutes

High quality

chirp-v4-5-plus

V4.5+

8 minutes

Enhanced quality

chirp-v4-5

V4.5

4 minutes

Vocal gender control

chirp-v4

V4

150 seconds

Stable

chirp-v3-5

V3.5

120 seconds

Fast

chirp-v3-0

V3

120 seconds

Legacy

Vocal Gender Control (v4.5+ only):

  • f - Female vocals

  • m - Male vocals

Configuration

Environment Variables

Variable

Description

Default

ACEDATACLOUD_API_TOKEN

API token from AceDataCloud

Required

ACEDATACLOUD_API_BASE_URL

API base URL

https://api.acedata.cloud

ACEDATACLOUD_OAUTH_CLIENT_ID

OAuth client ID (hosted mode)

ACEDATACLOUD_PLATFORM_BASE_URL

Platform base URL

https://platform.acedata.cloud

SUNO_DEFAULT_MODEL

Default model for generation

chirp-v5-5

SUNO_REQUEST_TIMEOUT

Request timeout in seconds

1800

LOG_LEVEL

Logging level

INFO

Command Line Options

mcp-suno --help

Options:
  --version          Show version
  --transport        Transport mode: stdio (default) or http
  --port             Port for HTTP transport (default: 8000)

Development

Setup Development Environment

# Clone repository
git clone https://github.com/AceDataCloud/SunoMCP.git
cd SunoMCP

# Create virtual environment
python -m venv .venv
source .venv/bin/activate  # or `.venv\Scripts\activate` on Windows

# Install with dev dependencies
pip install -e ".[dev,test]"

Run Tests

# Run unit tests
pytest

# Run with coverage
pytest --cov=core --cov=tools

# Run integration tests (requires API token)
pytest tests/test_integration.py -m integration

Code Quality

# Format code
ruff format .

# Lint code
ruff check .

# Type check
mypy core tools

Build & Publish

# Install build dependencies
pip install -e ".[release]"

# Build package
python -m build

# Upload to PyPI
twine upload dist/*

Project Structure

SunoMCP/
├── core/                   # Core modules
│   ├── __init__.py
│   ├── client.py          # HTTP client for Suno API
│   ├── config.py          # Configuration management
│   ├── exceptions.py      # Custom exceptions
│   ├── server.py          # MCP server initialization
│   └── utils.py           # Utility functions
├── tools/                  # MCP tool definitions
│   ├── __init__.py
│   ├── audio_tools.py     # Audio generation tools
│   ├── info_tools.py      # Information tools
│   ├── lyrics_tools.py    # Lyrics generation tools
│   ├── media_tools.py     # Media conversion tools
│   ├── persona_tools.py   # Persona management tools
│   └── task_tools.py      # Task query tools
├── tests/                  # Test suite
│   ├── conftest.py
│   ├── test_client.py
│   ├── test_config.py
│   ├── test_integration.py
│   └── test_utils.py
├── deploy/                 # Deployment configs
│   └── production/
│       ├── deployment.yaml
│       ├── ingress.yaml
│       └── service.yaml
├── .env.example           # Environment template
├── .gitignore
├── CHANGELOG.md
├── Dockerfile             # Docker image for HTTP mode
├── docker-compose.yaml    # Docker Compose config
├── LICENSE
├── main.py                # Entry point
├── pyproject.toml         # Project configuration
└── README.md

API Reference

This server wraps the AceDataCloud Suno API:

Contributing

Contributions are welcome! Please:

  1. Fork the repository

  2. Create a feature branch (git checkout -b feature/amazing)

  3. Commit your changes (git commit -m 'Add amazing feature')

  4. Push to the branch (git push origin feature/amazing)

  5. Open a Pull Request

Documentation

Documentation

License

MIT License - see LICENSE for details.


Made with love by AceDataCloud

Available Tools

36 tools
suno_all_stems_musicAInspect

Separate a song into all individual stems (vocals, bass, drums, other instruments).

Splits the audio into multiple separate tracks for all components,
providing more granular stem separation than suno_stems_music. The service may
return two same-named sets of 12 stems without metadata that distinguishes the sets;
both sets are preserved so no audio is silently discarded.

Use this when:
- You need full multi-track stem separation
- You want individual instrument tracks for remixing
- You need bass, drums, and other instrument tracks separately

Returns:
    Task ID and all stem separation results with individual track URLs.
ParametersJSON Schema
NameRequiredDescriptionDefault
audio_idYesID of the audio to separate into all individual stems.
callback_urlNoWebhook callback URL for asynchronous notifications.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses a specific behavioral quirk: two same-named sets may be returned without metadata, and both are preserved to avoid data loss. Since annotations are absent, this adds valuable transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections, front-loads the purpose, and includes usage guidance and return info. Slightly verbose with the 'Returns' section but focused and useful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is straightforward with 2 params and high schema coverage interesting for asynchronous behavior, but the behavioral quirk is disclosed. It sufficiently covers the key decision points and usage context, though it could mention callback_url usage more explicitly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for both parameters (audio_id and callback_url), so the schema already explains them. The description adds minimal extra semantics, but baseline 3 applies given high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description specifies the exact purpose: separating audio into all individual stems (vocals, bass, drums, other instruments). It clearly differentiates from the sibling tool suno_stems_music by noting it provides more granular separation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly lists 'Use this when' scenarios: full multi-track separation, remixing, needing individual instrument tracks. It also implicitly contrasts with suno_stems_music, aiding tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_concat_musicAInspect

Concatenate extended song segments into a single complete audio file.

After extending a song multiple times with suno_extend_music, use this tool
to merge all the segments into one continuous audio file.

Use this when:
- You've extended a song one or more times
- You want a single audio file instead of multiple segments
- You're ready to finalize a long-form composition

Returns:
    Task ID and the concatenated audio information with the full song.
ParametersJSON Schema
NameRequiredDescriptionDefault
audio_idYesID of the LAST segment of an extended song chain. Suno will automatically find and merge all connected segments.
callback_urlNoWebhook callback URL for asynchronous notifications. When provided, the API will call this URL when the concatenation is complete.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It explains that the tool merges all connected segments and returns task ID and audio info, but does not disclose potential side effects, authorization needs, or rate limits. Behavior is straightforward but lacks depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise three-paragraph structure: purpose, usage guidance, and return value. Every sentence adds value with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers main aspects: what it does, when to use, and what it returns. Has output schema, so return description is sufficient. Lacks explicit mention of async behavior (implied by callback_url) and error handling, but adequate for a simple tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with both parameters having descriptions. The tool description does not add additional parameter insights beyond the schema, meeting the baseline for high coverage but not exceeding it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool concatenates extended song segments into a single audio file. It specifically references the sibling tool suno_extend_music, distinguishing this tool's purpose from others.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly describes when to use: after extending a song multiple times and wanting a single file. Includes clear use cases. No explicit when-not conditions, but the context is sufficient for a specialized utility tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_cover_musicAInspect

Create a cover or remix version of an existing song in a different style.

This generates a new version of a song with a different arrangement, genre,
or mood while keeping the core melody and lyrics.

Use this when:
- You want to hear a song in a different genre
- You want an acoustic/unplugged version of an electronic song
- You want to remix a song with a different vibe

Returns:
    Task ID and the cover audio information.
ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel version to use for the cover.chirp-v5-5
styleNoTarget music style for the cover. Examples: 'jazz, smooth, saxophone', 'acoustic folk, gentle guitar', 'electronic dance, high energy'
promptNoDescription of how you want the cover to sound. Examples: 'acoustic unplugged version', 'jazz lounge style', '80s synthwave remix'
audio_idYesID of the audio to create a cover of. This is the 'id' field from a previous generation.
audio_weightNoAdvanced parameter for cover operations. Controls how much the original audio influences the cover generation.
callback_urlNoWebhook callback URL for asynchronous notifications. When provided, the API will call this URL when the cover is complete.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It describes the high-level function but omits behavioral details such as asynchronous nature (implied by callback_url parameter), idempotency, costs, or side effects. The return value is mentioned minimally.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise at five sentences, including a structured 'Use this when:' section with three bullets and a 'Returns:' line. Every sentence adds value, and the key information is front-loaded in the first sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (6 parameters, 1 required, output schema present), the description covers the main purpose, usage scenarios, and return format. It is mostly complete, though it could mention the asynchronous nature of the task for better completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema description coverage, the baseline is 3. The main description adds overall context by mentioning 'core melody and lyrics' and different styles, but does not elaborate on individual parameters beyond what the schema already provides. No additional meaning is added.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool creates a cover or remix of an existing song in a different style, with a specific verb ('Create') and resource. It distinguishes from sibling tools like suno_remaster_music and suno_generate_music by focusing on altering style while keeping melody/lyrics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'Use this when:' section with three detailed bullet points provides clear context for when to use the tool, such as wanting a different genre or acoustic version. However, it does not explicitly mention when not to use it or suggest alternatives among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_create_personaBInspect

Create a new artist persona from an existing audio's vocal style.

This saves the vocal characteristics from a generated song so you can reuse
that same voice style in future generations. Great for maintaining consistency
across multiple songs.

Use this when:
- You generated a song and love the voice
- You want to create multiple songs with the same vocalist
- You're building an album with consistent vocal style
- You want to save a unique voice for future use

After creating a persona, use suno_generate_with_persona with the returned
persona_id to generate new songs with that voice.

Returns:
    Persona ID that can be used with suno_generate_with_persona tool.
ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for this persona. Use a descriptive name that helps you remember the voice style. Examples: 'My Rock Voice', 'Soft Female Singer', 'Deep Male Baritone', 'Energetic Pop Vocalist'
audio_idYesID of the audio to use as the persona reference. This should be a previously generated song whose vocal style you want to save and reuse.
vocal_endNoEnd time in seconds of the vocal segment to use from the audio.
descriptionNoDescription of the singer's style. Examples: 'Warm and breathy female voice with jazz influences', 'Powerful male rock vocalist with raspy tone'
vocal_startNoStart time in seconds of the vocal segment to use from the audio. Useful for isolating a specific vocal section.
vox_audio_idNoOptional audio ID used to generate a new singer's style by combining with the main audio. Useful for creating hybrid vocal personas.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It indicates a mutation (creation) but does not disclose side effects, prerequisites (e.g., existing audio), error conditions, or limitations. Basic transparency but lacking depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with purpose. The bullet list of use cases is clear and efficient, though slightly redundant with the prior sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers purpose, usage, workflow, and return value, but lacks behavioral details, error handling, and differentiation from related tools. Given no annotations, it is adequate but has gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description does not add significant parameter context beyond what the schema already provides; it only mentions 'vocal characteristics' generically.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it creates an artist persona from existing audio's vocal style for reuse. It explains the purpose and workflow (using with suno_generate_with_persona) but does not explicitly differentiate from the similar sibling suno_create_voice.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description lists specific use cases (love a voice, multiple songs, album consistency) and provides a clear workflow for subsequent generation. However, it lacks guidance on when not to use the tool or alternatives like suno_create_voice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_create_voiceAInspect

Create a custom voice persona from an external audio URL.

Creates a voice persona directly from a publicly accessible audio URL
(MP3 or WAV format). The audio must contain clear vocals from a single
speaker and be at least 10 seconds long.

This is different from suno_create_persona which creates a persona from
a previously generated Suno audio. Use this to create a persona from
your own voice recordings or external audio files.

Use this when:
- You have an external audio file with clear vocals
- You want to create a voice persona from your own recordings
- You want to use a specific real-world voice as a persona

Returns:
    Persona ID that can be used with suno_generate_with_persona tool.
ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoOptional name for the custom voice persona.
audio_urlYesPublicly accessible URL of the audio file to create a voice from. Must be MP3 or WAV format, at least 10 seconds long, containing clear vocals from a single speaker without background noise or music.
descriptionNoDescription of the custom voice persona (optional).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full disclosure burden — and it handles this well by specifying hard input constraints (MP3/WAV, ≥10 seconds, single clear speaker, no background noise) and stating the output contract ('Persona ID that can be used with suno_generate_with_persona'). It does not cover failure modes or what happens when requirements are unmet, but for a persona-creation tool this is above-average disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured and front-loaded with a one-line purpose statement, followed by requirement clarification, sibling differentiation, a use-case bullet list, and a Returns note. Every section earns its place with no filler; only slightly longer than strictly necessary given the schema already covers parameter syntax.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a moderate-complexity tool (3 params, 1 required, output schema present), the description is thorough: it covers purpose, input requirements, the key sibling distinction (suno_create_persona vs suno_create_voice), appropriate use cases, and the returned value's downstream usage. The main ambiguity in a 35-tool sibling space is the persona-creation path, and that is fully resolved.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% — the audio_url parameter's schema entry already carries the detailed constraints (format, duration, single-speaker requirement). The description echoes the audio requirements but adds little beyond the schema for name and description, which are self-explanatory optional fields. Baseline 3 is appropriate; the heavy lifting is correctly done by the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource+scope ('Create a custom voice persona from an external audio URL') and immediately distinguishes itself from the closest sibling: 'This is different from suno_create_persona which creates a persona from a previously generated Suno audio.' This explicit differentiation against the most confusable sibling makes the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides an explicit 'Use this when:' bulleted list with three concrete scenarios, and implicitly states when NOT to use it by contrasting with suno_create_persona. It names the alternative tool directly and clarifies the external-vs-Suno-seed distinction, giving the agent clear decision guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_delete_personaAInspect

Delete a saved artist persona.

Permanently removes a previously created persona. This action cannot be undone.

Use this when:
- You want to remove an unused voice persona
- You need to clean up old personas
- You want to delete a persona you no longer need

Returns:
    Confirmation of the deletion.
ParametersJSON Schema
NameRequiredDescriptionDefault
user_idNoThe user ID for ownership verification (optional).
persona_idYesThe persona ID to delete.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but description explicitly states 'This action cannot be undone' and 'Permanently removes', disclosing destructive behavior. Also mentions return value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with bullet points for usage and returns. Efficiently covers purpose, irreversibility, and output without extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple delete tool, description covers what, when, effect, and return value. Lacks prerequisites or error cases, but is adequate given low complexity and existing output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. Description does not add meaning beyond schema; only restates persona_id and mentions return value, not parameter details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states 'Delete a saved artist persona' and 'permanently removes a previously created persona'. Distinct from siblings like create and list personas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly lists three use cases (remove unused, clean up old, delete no longer needed). Does not mention alternatives or when not to use, but provides clear context for a destructive tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_extend_musicAInspect

Extend an existing song from a specific timestamp with new lyrics.

This allows you to continue a previously generated song, adding new sections
like additional verses, a bridge, or an outro.

Use this when:
- A generated song is too short and you want to add more
- You want to add a bridge or outro to an existing song
- You're building a longer song piece by piece

After extending multiple times, use suno_concat_music to merge all segments.

Returns:
    Task ID and the extended audio information.
ParametersJSON Schema
NameRequiredDescriptionDefault
lyricYesLyrics for the extended section. Use section markers like [Verse], [Chorus], [Bridge], [Outro]. The extension will continue from where the original song left off.
modelNoModel version to use for the extension.chirp-v5-5
styleNoMusic style for the extension. Leave empty to maintain the original style, or specify to change the style mid-song.
audio_idYesID of the audio to extend. This is the 'id' field from a previous generation result.
continue_atYesTimestamp in seconds where to start the extension. For example, 120.5 means continue from 2 minutes and 0.5 seconds into the song.
callback_urlNoWebhook callback URL for asynchronous notifications. When provided, the API will call this URL when the extension is complete.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description bears full burden. It states the tool returns Task ID and audio info, and maintains style if empty, but lacks details on limitations (e.g., max extension length), side effects, or authentication needs. Adequate but could be more comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Delivers core action in the first sentence, then bullet lists usage cases, workflow hint, and return info. No unnecessary words; well organized and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, usage, parameter hints, follow-up step (concat), and return value. Could mention output schema structure or extension length limits, but output schema exists so completeness is strong. Minor gaps prevent a 5.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers all 6 parameters with descriptions. The description adds context about using section markers for lyrics and timestamp format, but does not significantly enhance understanding beyond the schema. Baseline of 3 is appropriate given high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the verb 'extend' and resource 'existing song from a specific timestamp with new lyrics'. Lists specific uses like adding verses, bridge, outro, and distinguishes from sibling tool suno_concat_music by mentioning it for merging segments after multiple extensions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use scenarios (too short, add bridge/outro, build piece by piece) and tells when to use the sibling tool suno_concat_music. The bullet list gives clear context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_extract_vocalsAInspect

Extract the vocal track from a generated song (stem separation).

Isolates the vocals from a song, removing instrumental background.
Useful for remixing, creating acapella versions, or persona creation.

Use this when:
- You want an isolated vocal track
- You need vocals for a remix or mashup
- You want to create a persona from specific vocal segments

Returns:
    Task ID and extracted vocal audio information.
ParametersJSON Schema
NameRequiredDescriptionDefault
audio_idYesThe song ID to extract vocals from.
vocal_endYesRequired extraction end time in seconds. It must be greater than vocal_start, with a range shorter than 30 seconds.
vocal_startYesRequired extraction start time in seconds. The selected range must be shorter than 30 seconds.
callback_urlNoWebhook callback URL for asynchronous notifications.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses the core behavior (isolating vocals, removing instrumental background) and that it returns a Task ID and vocal info, but it does not explain the asynchronous nature, whether the original song is modified, or how the extracted audio is delivered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a clear opening, a 'Use this when' list, and a Returns section. It is concise enough but could be tightened by merging the first two sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists, the description need not detail return values, but it should mention that this is an asynchronous task (Task ID implies it) and that the audio must be Suno-generated. The description covers use cases and return info but misses operational nuances.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description does not add any parameter-specific meaning beyond the schema; it only implies time-based extraction without elaborating on the parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool extracts the vocal track from a song (stem separation), using specific verb 'Extract' and resource 'vocal track'. It distinguishes from siblings like suno_all_stems_music by specifying it isolates only vocals.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit 'Use this when' bullet points covering isolated vocals, remix/mashup needs, and persona creation. However, it does not mention when not to use it or alternatives like suno_stems_music for full stem separation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_generate_custom_musicAInspect

Generate AI music with full control over lyrics, title, and style (Custom Mode).

This gives you complete creative control over the song. You provide the lyrics
with section markers, and Suno generates the melody and arrangement.

Use this when:
- You have specific lyrics you want to use
- You want precise control over the music style
- You need a specific song title
- You want to specify vocal gender (v4.5+ models)
- You want the API to auto-generate lyrics from a prompt (use lyric_prompt)
- You need a specific track length (use duration)

For quick generation without writing lyrics, use suno_generate_music instead.

Returns:
    Task ID and generated audio information including URLs, title, lyrics, and duration.
ParametersJSON Schema
NameRequiredDescriptionDefault
lyricNoSong lyrics with section markers. Use [Verse], [Chorus], [Pre-Chorus], [Bridge], [Outro], [Intro] to structure the song. Example: [Verse 1] Walking down the empty street Rain is falling at my feet [Chorus] But I keep moving on Until the break of dawn. Leave empty when using lyric_prompt to auto-generate lyrics.
modelNoSuno model version. 'chirp-v5-5' or 'chirp-v5' recommended for best quality.chirp-v5-5
styleNoMusic style description. Be specific about genre, mood, tempo, and instruments. Examples: 'upbeat pop rock, energetic drums, electric guitar', 'acoustic folk, gentle, fingerpicking', 'dark electronic, synthwave, 80s retro'
titleNoTitle of the song. Keep it concise and memorable.
durationNoTarget length of the generated track in seconds, an integer between 10 and 360. Only takes effect for the 'generate' action in custom mode with model 'chirp-v5-5'; other combinations return a 400 error. The finished track lands near this value but is not guaranteed to match it exactly.
weirdnessNoAdvanced parameter for custom mode. Controls how unusual/experimental the generation is.
callback_urlNoWebhook callback URL for asynchronous notifications. When provided, the API will call this URL when the audio is generated.
instrumentalNoIf true, generate instrumental version (lyrics will be ignored). Default is false.
lyric_promptNoPrompt text for auto-generating lyrics. Only used when custom is true and lyric is empty.
vocal_genderNoPreferred vocal gender. 'f' for female, 'm' for male, empty string for AI to decide. Only works with v4.5+ models.
negative_tagsNoStyles or genres to explicitly exclude from custom generation. Examples: 'heavy metal, screaming', 'autotune, electronic'
style_influenceNoAdvanced parameter for custom mode. Controls how strongly the style prompt influences the generation.
variation_categoryNoVariation intensity for v5+ models. 'high' for maximum variation, 'normal' for balanced, 'subtle' for minimal changes. Only supported in chirp-v5 and above.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It discloses return values (Task ID and generated audio info), notes vocal gender requires v4.5+, and mentions duration only works for specific model/action combos. It could add more about async behavior or errors but covers the most important operational details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately long but well-structured: intro line, bullet-style 'Use this when' list, sibling comparison, and return info. No filler or repetition; each line contributes distinct value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 13 parameters, all schema-covered, and an output schema, the description covers the core decision points and key constraints. It does not enumerate every parameter (unnecessary) but gives enough context to call the tool correctly. Minor gaps remain around advanced parameters like weirdness or style_influence, but these are secondary.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters. The description adds meaningful examples for lyrics and style, but does not substantially elevate the semantics beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states a specific verb ('Generate'), resource ('AI music'), and explicit scope ('full control over lyrics, title, and style (Custom Mode)'). It clearly differentiates from sibling by naming the alternative for quick generation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides an explicit 'Use this when' list enumerating concrete conditions (specific lyrics, precise style, vocal gender, etc.) and explicitly states the alternative: 'For quick generation without writing lyrics, use suno_generate_music instead.' This is exemplary routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_generate_inspoAInspect

Generate brand-new music inspired by 1 to 4 reference audios (Suno Inspo / 灵感创作).

Unlike a cover, inspo does not reproduce the source tracks - it draws stylistic
inspiration from them and composes a fresh song guided by your prompt and style tags.

Use this when:
- You have reference tracks whose vibe you want to riff on
- You want a new song "in the style of" some audio you provide

Returns:
    Task ID and generated audio information including URLs, title, lyrics, and duration.
ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoSuno model version to use for the inspired generation.chirp-v5-5
styleNoOptional music style tags. Examples: 'acoustic, folk, warm', 'lo-fi, chill, instrumental'
titleNoOptional title of the song.
promptNoOptional lyrics or creative brief for the new song. Leave empty to let Suno write its own lyrics.
audio_urlsYes1 to 4 publicly accessible reference audio URLs used as inspiration. Suno extracts stylistic ideas from these tracks (rather than copying them) to create a brand-new song. Tip: avoid well-known catalog recordings, which may be rejected by Suno's copyright check.
audio_weightNoHow strongly the reference audios influence the result, 0 to 1. Higher means closer to the references' vibe.
callback_urlNoWebhook callback URL for asynchronous notifications. When provided, the API will call this URL when generation completes.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses that inspo draws stylistic inspiration rather than copying, and includes a copyright tip about avoiding well-known catalog recordings. It also states the return includes Task ID and generated audio info. This provides meaningful behavioral context beyond the schema, though more details on auth or rate limits would be beneficial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: first paragraph defines the tool, second gives usage scenarios, third states returns. Every sentence adds value with no redundancy. Front-loaded with the key distinction from covers.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Considering the parameter count (7), full schema coverage, and presence of output schema, the description covers the essentials: purpose, usage, and return values. It could mention error handling or generation duration, but overall it is sufficiently complete for an agent to understand the tool's role and invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each parameter is individually documented. The description adds overall context (e.g., the tip about audio_urls and copyright) but doesn't significantly enhance understanding of individual parameters beyond the schema. Baseline score of 3 is appropriate since the schema does most of the work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates brand-new music inspired by 1-4 reference audios, distinguishing it from cover tools ('Unlike a cover, inspo does not reproduce the source tracks'). It specifies the action ('Generate brand-new music') and the resource ('inspired by reference audios'), effectively differentiating it from siblings like suno_cover_music.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit 'Use this when' bullet points: having reference tracks to riff on or wanting a new song 'in the style of' provided audio. While it doesn't explicitly state when not to use or list alternatives, the sibling tool list implies options like suno_cover_music or suno_generate_music, offering sufficient guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_generate_lyricsAInspect

Generate song lyrics from a text prompt.

Creates structured lyrics with proper song sections (Verse, Chorus, Bridge, etc.)
based on your description. The generated lyrics are formatted and ready to use
with suno_generate_custom_music.

Use this when:
- You need lyrics but don't want to write them yourself
- You want AI-generated lyrics for a specific theme or mood
- You need properly structured lyrics with section markers

The output includes section markers like [Verse], [Chorus], [Bridge] that
Suno's music generation understands.

Returns:
    Generated lyrics with title, status, and formatted text with section markers.
ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel version for lyrics generation. 'default' works well for most lyrics. 'remi-v1' offers an alternative style.default
promptYesDescription of the lyrics you want. Include theme, mood, genre, and any specific elements. Examples: 'A romantic ballad about lost love and rainy nights', 'An upbeat pop song about summer vacation', 'A motivational hip-hop track about overcoming obstacles'

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses that lyrics include section markers and are formatted for Suno's music generation, and mentions output fields (title, status, formatted text). However, it omits behavioral traits like error handling, rate limits, or cost implications, which are important for a generation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is approximately 100 words, front-loaded with the key action, followed by usage bullets and output summary. Every sentence serves a purpose with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has only 2 parameters, and the description covers purpose, usage scenarios, and output format. Given the existence of an output schema (not shown), it appropriately defers return value details. However, it lacks information on potential errors or limits, preventing a full 5.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds minimal extra semantic value beyond the schema, just confirming that the prompt is a description and that 'default' is recommended for the model parameter. It does not clarify parameter constraints or format requirements.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it generates song lyrics from a text prompt with structured sections like Verse and Chorus. It differentiates from sibling tools by mentioning integration with suno_generate_custom_music, but does not explicitly contrast with other lyrics-related tools like suno_mashup_lyrics, hence not a full 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides three bullet-point use cases ('Use this when:') covering common scenarios. However, it lacks guidance on when NOT to use this tool (e.g., if you already have lyrics or need to mashup) and does not compare against alternative sibling tools, limiting its decision-making utility.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_generate_musicAInspect

Generate AI music from a text prompt using Suno's Inspiration Mode.

This is the simplest way to create music - just describe what you want and Suno
will automatically generate appropriate lyrics, melody, style, and arrangement.

Use this when:
- You want quick music generation with minimal input
- You don't have specific lyrics in mind
- You want Suno to be creative with the arrangement

For full control over lyrics and style, use suno_generate_custom_music instead.

Returns:
    Task ID and generated audio information including URLs, title, lyrics, and duration.
ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoSuno model version. 'chirp-v5-5' is the latest and recommended for best quality with 8-minute max duration. 'chirp-v4-5' is a reliable choice for most use cases. Older models (v3, v3-5, v4) have shorter duration limits.chirp-v5-5
promptYesDescription of the music to generate. Be descriptive about genre, mood, instruments, and theme. Examples: 'A happy birthday song with acoustic guitar', 'Epic orchestral battle music with dramatic choir', 'Chill lo-fi hip hop beat for studying'
callback_urlNoWebhook callback URL for asynchronous notifications. When provided, the API will call this URL when the audio is generated.
instrumentalNoIf true, generate instrumental music without vocals. Default is false (with vocals).
variation_categoryNoVariation intensity for v5+ models. 'high' for maximum variation, 'normal' for balanced, 'subtle' for minimal changes. Only supported in chirp-v5 and above.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses that it auto-generates lyrics, melody, style, and arrangement, and specifies return values (Task ID, audio info). However, it does not mention async behavior, rate limits, or potential costs, which would improve transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise: a brief introductory sentence, three bullet points for usage, a sibling mention, and a return value line. No redundant or rambling content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool complexity (5 params, output schema exists), the description covers purpose, usage guidelines, behavior, and return format succinctly. It references the sibling tool for advanced needs, making it complete for the intended use case.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with detailed descriptions, examples, and enums for each parameter. The description does not add additional meaning beyond the schema, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates AI music from a text prompt using Suno's Inspiration Mode, and explicitly distinguishes it from sibling suno_generate_custom_music, which offers full control over lyrics and style.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes a 'Use this when:' section with three specific scenarios (quick generation, no specific lyrics, want creative arrangement) and directs users to an alternative for full control, providing clear when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_generate_with_personaAInspect

Generate music using a saved artist persona for consistent vocal style.

This allows you to maintain a consistent voice/singing style across multiple
songs by using a previously saved persona.

Use this when:
- You want multiple songs with the same vocal style
- You're creating an album or series with consistent vocals
- You found a voice you like and want to reuse it

First create a persona with suno_create_persona, then use its ID here.

Returns:
    Task ID and generated audio information with the persona's voice applied.
ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel version to use.chirp-v5-5
promptYesDescription of the music to generate. The persona's voice will be applied to this new song.
audio_idYesID of a reference audio to base the generation on.
persona_idYesID of the persona to use. Get this from suno_create_persona tool. The persona defines the vocal style and characteristics.
callback_urlNoWebhook callback URL for asynchronous notifications. When provided, the API will call this URL when the audio is generated.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions the return value (Task ID and generated audio information) but does not disclose other behavioral traits such as whether the operation is synchronous or asynchronous, rate limits, or if it has any side effects. The callback_url parameter suggests async support, but the description does not elaborate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a clear opening sentence and bullet-style use cases. It is not overly verbose but could be slightly more concise. However, it effectively communicates the key points without unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description appropriately mentions the return value. All parameters are covered by the schema, and the description explains the tool's niche relative to sibling tools. The context is complete for an agent to understand when and how to use this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters. The description adds some context (e.g., 'use its ID here' for persona_id) but does not significantly enhance understanding beyond what is in the schema. Baseline for high coverage is 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: to generate music using a saved persona for consistent vocal style. It distinguishes from sibling tools like suno_generate_music by emphasizing persona reuse, and mentions the prerequisite of using suno_create_persona.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly lists when to use this tool (multiple songs with same style, album/series, reusing a voice) and provides a clear prerequisite: create a persona first with suno_create_persona. This gives definitive guidance on when this tool is appropriate and how to prepare.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_generate_with_persona_voxAInspect

Generate music using a saved artist persona with VOX-specific consistency.

Similar to suno_generate_with_persona but uses the artist_consistency_vox action,
which is optimized for vocal consistency with a persona.

Use this when:
- You want multiple songs with the same vocal style using VOX mode
- You need stricter vocal consistency than suno_generate_with_persona provides
- You're creating content with a specific voice persona

First create a persona with suno_create_persona or suno_create_voice, then use its ID here.

Returns:
    Task ID and generated audio information with the persona's voice applied.
ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel version to use.chirp-v5-5
promptYesDescription of the music to generate. The persona's voice will be applied to this new song.
audio_idYesID of a reference audio to base the generation on.
persona_idYesID of the persona to use for the VOX generation. Get this from suno_create_persona or suno_create_voice tool.
callback_urlNoWebhook callback URL for asynchronous notifications.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden. It explains the tool uses a VOX action for vocal consistency and returns Task ID and audio info. While it doesn't cover auth or rate limits, the behavioral description is adequate for a generation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections: main action, similarity, usage conditions, prerequisite, and returns. Every sentence is necessary and front-loaded with the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 5 parameters and an output schema, the description covers the key aspects: action, when to use, prerequisite, and return type. It could mention any limitations or queuing behavior, but is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining how persona_id relates to other tools and that the prompt's voice will be applied, going beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates music using a saved artist persona with VOX-specific consistency, and explicitly distinguishes it from the sibling suno_generate_with_persona by noting it uses the artist_consistency_vox action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit usage conditions in a 'Use this when:' list, including three specific scenarios and a prerequisite (create persona first). This gives clear when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_get_lyric_format_guideAInspect

Get guidance on formatting lyrics for Suno music generation.

Shows how to structure lyrics with section markers for best results.
Following this format helps Suno understand the song structure and
generate appropriate melodies for each section.

Returns:
    Complete guide with section markers, examples, and tips.
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden of behavioral disclosure. It describes the tool as returning a guide, which implies a safe, read-only operation, but does not explicitly state it has no side effects or is idempotent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with four sentences including the Returns line. It is front-loaded and clear, though it could be slightly more efficient without losing clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (no parameters, has output schema), the description completely covers its purpose and return value. It explains the output format and benefits.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so no parameter explanations are needed. The description adds value by explaining the return value: 'Complete guide with section markers, examples, and tips.' Baseline 4 is appropriate for a no-parameter tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool provides guidance on formatting lyrics for Suno music generation, specifically with section markers. It is distinct from sibling tools like suno_generate_lyrics which actually generate lyrics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not explicitly state when to use this tool versus alternatives. It is implied that it should be used before generating lyrics or custom music, but no explicit when-not-to-use or alternative guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_get_midiAInspect

Get MIDI data extracted from a generated song.

Converts the song's melodic and rhythmic information into MIDI format,
which can be used in digital audio workstations (DAWs) for further editing.

Use this when:
- You want to edit the melody in a DAW
- You need note-level data from the song
- You want to recreate the song with different instruments

Returns:
    Task ID and MIDI data information.
ParametersJSON Schema
NameRequiredDescriptionDefault
audio_idYesThe song ID to get MIDI data for.
callback_urlNoWebhook callback URL for asynchronous notifications.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions the return type ('Task ID and MIDI data information'), but does not disclose whether the operation is synchronous or asynchronous, how long it might take, or any side effects. The callback_url parameter suggests async behavior, but this is not explained.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with a one-liner, an explanatory paragraph, a bullet list for usage, and a returns line. It is relatively concise, but the explanatory paragraph could be merged with the usage list. Every sentence earns its place, but some redundancy exists (e.g., converting to MIDI for DAWs is stated twice).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (2 params, no enums, simple return) and the presence of an output schema, the description is fairly complete. It covers purpose, usage scenarios, and return type. Minor gaps include lack of error/async handling details, but for a retrieval tool this is acceptable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters. The description adds 'song ID' for audio_id and 'MIDI data information' for the return, but does not meaningfully extend understanding beyond the schema's 'The song ID' and 'Webhook callback URL for asynchronous notifications.' Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Get MIDI data extracted from a generated song.' The verb 'Get' and resource 'MIDI data' are specific. Among 32 sibling tools, none duplicate this exact function (e.g., suno_get_wav, suno_get_mp4 are different formats), so it distinguishes well.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'Use this when:' section provides three explicit scenarios (editing melody in DAW, need note-level data, recreate with different instruments). It gives clear context for when to use, though it does not explicitly state when not to use or mention alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_get_mp4AInspect

Get an MP4 video version of a generated song.

Converts a generated audio into an MP4 video file with visualizations.
Useful for sharing on social media or video platforms.

Use this when:
- You want a video version of a generated song
- You need to share the song on video platforms
- You want a visual representation of the audio

Returns:
    Task ID and MP4 video information.
ParametersJSON Schema
NameRequiredDescriptionDefault
audio_idYesThe song ID to get the MP4 video for. This is the 'id' field from a previous audio generation result.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries full burden. It explains the conversion to video and mentions the return type (Task ID and MP4 info). However, it does not disclose potential asynchronous behavior, processing time, or failure conditions, leaving some behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, with a clear opening sentence, followed by bullet points for usage scenarios. Every sentence adds value, and the structure is front-loaded with the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and an output schema, the description adequately covers purpose, usage, and return type. It lacks details on potential constraints or async processing, but these are minor given the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter audio_id is already well-documented in the input schema, including its source. The description adds no additional semantic meaning beyond the schema, so a baseline score of 3 is appropriate given 100% schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the resource 'MP4 video version of a generated song'. It differentiates from siblings like suno_get_wav and suno_get_midi by specifying the MP4 format, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit 'Use this when:' bullet points listing three usage scenarios. Does not include when not to use or directly name alternatives, but the context is clear enough for an AI to select this tool for video needs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_get_taskAInspect

Query the status and result of a music generation task.

Use this to check if a generation is complete and retrieve the resulting
audio URLs, titles, lyrics, and other metadata.

Use this when:
- You want to check if a generation has completed
- You need to retrieve audio URLs from a previous generation
- You want to get the full details of a generated song

Task states:
- 'pending': Generation is still in progress — KEEP POLLING
- 'processing': Generation is being processed — KEEP POLLING
- 'complete': Generation finished successfully
- 'failed': Generation failed (check error message)

The API may omit its top-level state. The MCP normalizes response.success=true to
complete and response.success=false to failed; responses without a success field
remain pending.

Returns:
    Task status and generated audio information including URLs, title, lyrics, and task timing metadata.
ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYesThe task ID returned from a generation request. This is the 'task_id' field from any suno_generate_*, suno_extend_*, suno_cover_*, or suno_concat_* tool response.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden and excels: it documents task states, clarifies polling behavior, and explains the MCP's normalization of omitted success fields. This gives agents a detailed model of the tool's runtime behavior beyond the basic read/edit nature.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a leading purpose sentence, 'Use this when' bullets, task state definitions, and a returns summary. It is front-loaded, scannable, and every sentence contributes value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simple polling nature and the presence of an output schema, the description covers all necessary context: when to use, states to expect, normalization behavior, and what results are returned. It fully equips an agent to correctly invoke and interpret the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% parameter coverage and a detailed description of task_id, including its source from generation tools. The description adds minimal extra parameter nuance, mostly reiterating 'previous generation' and 'task_id' provenance, so it meets the baseline without significantly enhancing schema semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Query') and resource ('a music generation task'), and clearly distinguishes it from sibling generation/composition tools by focusing on status polling and result retrieval. The opening line and subsequent details unambiguously identify the tool's function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit 'Use this when' bullets covering polling and result retrieval, which gives clear contextual signals. However, it does not mention when not to use it or alternative tools (e.g., suno_get_tasks_batch for batch queries), so it lacks exclusionary guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_get_tasks_batchAInspect

Query multiple music generation tasks at once.

Efficiently check the status of multiple tasks in a single request.
More efficient than calling suno_get_task multiple times.

Use this when:
- You have multiple pending generations to check
- You want to get status of several songs at once
- You're tracking a batch of generations

The MCP treats response.success=true as complete and response.success=false as
failed when the API omits its top-level state.

Returns:
    Status and audio information for all queried tasks.
ParametersJSON Schema
NameRequiredDescriptionDefault
task_idsYesList of task IDs to query. Maximum recommended batch size is 50 tasks.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden of behavioral disclosure. It adds meaningful context about how the MCP interprets response.success=true as complete and response.success=false as failed when the API omits its top-level state, which is useful beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a purpose statement, usage bullets, a behavioral note, and a returns summary. However, the opening phrases are somewhat redundant: 'Query multiple...', 'Efficiently check...', and 'More efficient than...' all convey similar information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple one-parameter query tool with an output schema, and the description covers the purpose, batching context, special status interpretation, and return content. It provides enough information for an agent to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the only parameter, task_ids, is already described with its purpose and maximum recommended batch size. The description adds little beyond what the schema provides, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses a specific verb and resource ('Query multiple music generation tasks') and clearly distinguishes this tool from the sibling suno_get_task by noting it is more efficient than calling the single-task version multiple times.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides an explicit 'Use this when' section with concrete scenarios (multiple pending generations, several songs at once, tracking a batch) and names suno_get_task as the less efficient alternative. It does not explicitly state when not to use it, such as for a single task.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_get_timingAInspect

Get timing and subtitle data for a generated song.

Returns word-level timing information that can be used for
synchronized lyrics display, karaoke, or subtitle generation.

Use this when:
- You need synchronized lyrics/subtitles
- You want to create karaoke-style displays
- You need word-level timing for video editing

Returns:
    Timing data with word-level timestamps.
ParametersJSON Schema
NameRequiredDescriptionDefault
audio_idYesThe song ID to get timing/subtitle data for.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so description carries full burden. Discloses that it returns word-level timing data, but does not specify the structure or format of the output. For a read-only tool, this is adequate but not thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise, well-structured with a purpose statement, return description, bulleted use cases, and a 'Returns:' line. Every sentence is necessary and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (1 parameter, no nested objects, output schema present), the description covers purpose, usage, and return type adequately. Could mention prerequisites (song must be generated) but overall complete enough for an agent to decide.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (only audio_id). The description merely echoes the schema's parameter definition ('The song ID to get timing/subtitle data for.'), adding no additional semantic value beyond what's already documented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states 'Get timing and subtitle data for a generated song.' Differentiates from siblings like suno_get_midi or suno_get_wav by focusing on timing/subtitle info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit 'Use this when:' list (synchronized lyrics, karaoke, video editing), giving clear context. Lacks explicit when-not-to-use or alternative tool references, but the guidance is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_get_wavAInspect

Get the lossless WAV format of a generated song.

Converts the song to high-quality uncompressed WAV format.
WAV files are larger but have no quality loss compared to MP3.

Use this when:
- You need a lossless audio format for production
- You want the highest quality audio output
- You need uncompressed audio for further processing

Returns:
    Task ID and WAV audio information.
ParametersJSON Schema
NameRequiredDescriptionDefault
audio_idYesThe song ID to get the WAV format for.
callback_urlNoWebhook callback URL for asynchronous notifications.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so description carries full burden. It mentions conversion to WAV and file size/quality trade-off, but lacks details on prerequisites (e.g., song must be generated), whether the tool is asynchronous, or authentication requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is concise with a few sentences and bullet points. Every sentence adds value: main purpose, quality comparison, use cases, and return type. No fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 params, output schema exists), the description is mostly complete. It explains return type and provides usage context. Could mention that the task might be asynchronous or require prior generation, but overall adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. Description does not add meaning beyond the schema; it only mentions 'song ID' and 'webhook callback' which are already described in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description starts with 'Get the lossless WAV format of a generated song', specifying verb and resource. It clearly distinguishes from sibling tools like suno_get_midi and suno_get_mp4 by focusing on WAV format.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Includes a 'Use this when:' list with three bullet points (lossless, highest quality, production processing), providing clear context. However, it does not explicitly exclude alternatives or mention when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_list_actionsAInspect

List all available Suno API actions and corresponding tools.

Reference guide for what each action does and which tool to use.
Helpful for understanding the full capabilities of the Suno MCP.

Returns:
    Categorized list of all actions and their corresponding tools.
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full transparency burden. The verb 'list' implies a safe, read-only operation, but the description does not explicitly state lack of side effects or dependencies. Adequate but not explicit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with purpose, followed by usage context and return description. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple listing tool, the description fully conveys purpose, usage, and output structure (categorized list). Given an output schema exists, further detail is unnecessary.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has no parameters (100% coverage). Description adds no parameter details, but baseline for zero parameters is 4. No additional meaning needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists all available Suno API actions and corresponding tools. It distinguishes itself from sibling tools (specific action tools) by being a meta-level reference guide.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description positions the tool as a 'reference guide for understanding the full capabilities,' implying use for exploration. However, it does not explicitly state when to use it vs alternatives, though context makes it clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_list_modelsAInspect

List all available Suno models and their capabilities.

Shows all available model versions with their limits, features, and
recommended use cases. Use this to understand which model to choose
for your music generation.

Model comparison:
- chirp-v5-5: Latest, highest quality, 8-minute max duration
- chirp-v5: High quality, 8-minute max duration
- chirp-v4-5-plus: High quality with 8-minute duration
- chirp-v4-5: Recommended balance of quality and speed, 4-minute duration
- chirp-v4: Good quality, 150 seconds max
- chirp-v3-5/v3: Legacy models, 120 seconds max

Returns:
    Table of all models with their version, limits, and features.
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Describes return as a table with version, limits, features. No hidden behaviors or side effects mentioned. Could clarify if results are cached, but still transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Starts with purpose, then provides a well-organized model comparison in bullet points. Informative without being verbose. Could be slightly tighter, but overall efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and output schema exists, the description fully covers what the tool does, what it returns (table of models), and why to use it. Complete for a list tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 0 parameters (100% schema coverage), so baseline is 4. Description adds no parameter info because none exist, which is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List all available Suno models and their capabilities,' with a specific verb and resource. It distinguishes from siblings like music generation tools by focusing on model listing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states 'Use this to understand which model to choose for your music generation.' Provides a model comparison table with use case recommendations. Lacks explicit exclusion criteria, but not critical for a listing tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_list_personasAInspect

List all saved artist personas for a user.

Returns all personas previously created with suno_create_persona or
suno_create_voice for the given user.

Use this when:
- You want to see all available voice personas
- You need to find a persona ID to use in music generation
- You want to manage your saved vocal styles

Returns:
    List of personas with their IDs, names, and descriptions.
ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of personas to return. Default is 50.
offsetNoNumber of personas to skip for pagination. Default is 0.
user_idYesThe user ID to list personas for.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must cover behavioral traits. It states that it returns all personas created with specific tools, implying a read-only operation. However, it does not disclose pagination behavior beyond what is in the schema, nor does it mention auth requirements or potential side effects. The description adds moderate value beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is efficient with a concise statement, a bulleted usage list, and a returns section. Every sentence serves a purpose with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (list with 3 parameters) and presence of an output schema, the description adequately covers purpose, usage, and return format. It could have added a note about read-only status, but overall it is sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters. The description mentions user_id implicitly ('for the given user') and hints at pagination via limit and offset, but adds no new semantic meaning beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List all saved artist personas for a user.' It uses a specific verb ('list') and resource ('personas'), and distinguishes these from sibling tools like suno_create_persona (create) and suno_delete_persona (delete).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly lists three when-to-use scenarios, such as viewing all personas or finding a persona ID. It provides clear context but does not exclude cases where other tools might be more appropriate, like suno_generate_with_persona which consumes but does not list personas.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_mashup_lyricsAInspect

Generate mashup lyrics by combining two sets of lyrics.

Takes two different song lyrics and intelligently combines them into
a cohesive mashup. Great for creating unique lyrical combinations.

Use this when:
- You want to blend two songs' lyrics together
- You're creating a mashup or medley
- You want creative lyrical combinations from two sources

Returns:
    Combined mashup lyrics ready for use in music generation.
ParametersJSON Schema
NameRequiredDescriptionDefault
lyrics_aYesThe first set of lyrics to combine. Can be full song lyrics with section markers.
lyrics_bYesThe second set of lyrics to combine. Can be full song lyrics with section markers.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully convey behavioral traits. It uses vague language ('intelligently combines', 'cohesive mashup') without disclosing specifics such as handling of section markers, ordering, or potential failures. The return line mentions 'Combined mashup lyrics' but lacks details on format or structure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is about 8 sentences long with a clear structure: function statement, use cases listed with bullet points, and a return line. However, it contains repetitive wording ('combines' appears three times) and could be more succinct without losing clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 string parameters, no annotations) and the existence of an output schema, the description covers the key points: inputs, use cases, and output purpose. It does not need to detail return format as the output schema provides that. Slight improvement possible by explaining mashup strategy.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter described as 'first/second set of lyrics... can be full song lyrics with section markers.' The tool description adds minimal value beyond restating that it takes two lyrics and combines them. Baseline 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Generate mashup lyrics by combining two sets of lyrics' with a specific verb and resource. It distinguishes from siblings like suno_mashup_music (music mashup) and suno_generate_lyrics (single lyric generation) by focusing on blending two sets of lyrics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes a 'Use this when:' list with three explicit scenarios: blending two songs, creating mashup/medley, and seeking creative lyrical combinations. While it lacks explicit when-not-to-use instructions or alternative tool names, the context is clear and actionable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_mashup_musicAInspect

Create a musical mashup by blending multiple songs together.

Combines elements from multiple generated songs into a single cohesive
mashup track. Different from lyrics mashup - this blends the actual audio.

Use this when:
- You want to blend two or more songs together musically
- You're creating a DJ-style mashup
- You want to combine melodies from different songs

Returns:
    Task ID and the mashup audio information.
ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel version to use.chirp-v5-5
styleNoOptional target music style for the mashup.
titleNoOptional title for the mashup.
promptYesRequired creative direction for blending the tracks, such as the desired arrangement, mood, and balance between sources.
callback_urlNoWebhook callback URL for asynchronous notifications.
instrumentalNoIf true, generate an instrumental mashup without vocals.
mashup_audio_idsYesExactly two audio IDs to mash up together.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description indicates it creates a new output and mentions a task ID return, implying an asynchronous operation, but does not disclose potential side effects, rate limits, or permission requirements. Since no annotations are provided, more behavioral detail would be beneficial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief and well-organized, with a clear introduction, a differentiation note, bullet points for use cases, and a concise return statement. Every sentence contributes to the tool's understanding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists and the parameters are fully described, the description sufficiently covers the tool's function and expected return. It lacks some operational context (e.g., async behavior) but is otherwise complete for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and all parameters have descriptive properties. The description adds no extra meaning beyond the schema—the required prompt guidance and mashup_audio_ids details are already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool creates a musical mashup by blending multiple songs, and explicitly differentiates from lyrics mashup (suno_mashup_lyrics). It also lists concrete use cases, making its purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance on when to use (blending songs musically, DJ-style mashups, combining melodies) and distinguishes from lyrics mashup. Does not mention disambiguation from concatenation (suno_concat_music), but the core use case is well-defined.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_optimize_styleAInspect

Optimize a music style description for better generation results.

Takes a rough style description and refines it into an optimized style
prompt that Suno can better understand and produce higher quality music for.

Use this when:
- You have a vague style idea and want to refine it
- You want better style prompts for suno_generate_custom_music
- You need suggestions for style terms

Returns:
    Optimized style description ready for use in music generation.
ParametersJSON Schema
NameRequiredDescriptionDefault
promptYesStyle prompt words that need to be optimized. Examples: 'rock guitar', 'jazz smooth', 'electronic dance party'

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full burden for behavioral transparency. It describes input (rough style description) and output (optimized prompt) but does not disclose any side effects, authorization needs, rate limits, or limitations. The behavior is predictable as a simple transformation, but more detail on the optimization process would improve transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the main purpose. It includes bullet points for usage and a return statement. The 'Returns:' section is slightly redundant but not harmful. Overall, it is well-structured and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no nested objects, output schema present), the description is complete. It covers the input, output, and usage context. No additional information is necessary for an agent to use this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one required parameter 'prompt'. The description adds meaningful examples (e.g., 'rock guitar', 'jazz smooth') that clarify acceptable input beyond the schema's description, which only says 'Style prompt words that need to be optimized.'

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Optimize a music style description for better generation results.' It identifies the specific resource (style description) and action (optimize), and distinguishes it from sibling tools like suno_generate_custom_music by noting it refines prompts for better generation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit use cases: vague style idea, better style prompts for suno_generate_custom_music, and style term suggestions. It does not explicitly state when not to use or list alternatives, but the use cases are clear enough for selection among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_overpaintingAInspect

Add AI-generated vocals to uploaded instrumental audio.

Takes your uploaded instrumental track and adds AI-generated vocals
on top of it (overpainting = painting vocals over the music).

Use this when:
- You have an instrumental track and want to add vocals
- You want to give background music a singing voice
- You need to add vocal melody to existing music

Returns:
    Task ID and the audio with vocals added.
ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel version to use.chirp-v5-5
audio_idYesID of the uploaded audio to add vocals to. Must be uploaded via suno_upload_audio.
callback_urlNoWebhook callback URL for asynchronous notifications.
overpainting_endNoEnd time in seconds for adding vocals. Must be less than total song duration.
overpainting_startNoStart time in seconds for adding vocals. Default is 0.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must cover behavioral traits. Describes the action and return value but lacks details on permission requirements, rate limits, or potential side effects. Adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is concise and front-loaded with the main action. Includes helpful bullet points for usage scenarios. Could be slightly tighter, but generally well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 5 parameters and an output schema, the description covers the core functionality, usage context, and return format. Missing some behavioral details, but overall complete enough for an AI agent to understand and invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema provides 100% coverage with descriptions for each parameter. The description adds minimal extra context (e.g., metaphor of 'painting vocals'), but the schema already sufficiently defines each parameter. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool adds AI-generated vocals to an uploaded instrumental audio file. Explains the term 'overpainting' and distinguishes from other tools like suno_extract_vocals and suno_underpainting.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly lists three use cases with 'Use this when:' bullet points. Does not explicitly state when not to use, but context is clear given sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_remaster_musicAInspect

Remaster an existing song to improve audio quality.

Takes a previously generated song and applies audio remastering to enhance
clarity, dynamics, and overall sound quality.

Use this when:
- You want to improve the audio quality of a generated song
- You want a song generated with an older model to sound better
- You need a polished, production-ready version

Returns:
    Task ID and the remastered audio information.
ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel version to use for remastering. Supported choices are chirp-v4-5-plus, chirp-v5, and chirp-v5-5.chirp-v5-5
audio_idYesID of the audio to remaster. This is the 'id' field from a previous generation.
callback_urlNoWebhook callback URL for asynchronous notifications.
variation_categoryYesRequired remaster variation intensity. Use 'high' for maximum variation, 'normal' for balanced, or 'subtle' for minimal changes.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are absent, so the description carries the disclosure burden. It does mention the return value: 'Task ID and the remastered audio information,' indicating asynchronous behavior. However, it does not disclose side effects, credit usage, or whether the original audio is preserved. The description adds a bit of behavioral context but lacks depth typical for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: an opening purpose statement, a short explanatory sentence, three 'Use this when' bullets, and a 'Returns' line. Every sentence serves a purpose without redundancy. It is front-loaded with the core action and easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 4 parameters (2 required), an output schema, and enums for complex behavior. The description covers the primary use cases and explicitly notes the return type (Task ID and remastered audio info). It could mention the asynchronous nature more explicitly or clarify that it produces a new version, but given the output schema exists and parameters are well-documented, this is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all parameters (model, audio_id, callback_url, variation_category). The description does not elaborate on parameters beyond what the schema already provides, so the baseline of 3 is appropriate. It adds no extra semantic value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Remaster an existing song to improve audio quality.' It explicitly notes it 'Takes a previously generated song' which distinguishes it from generation, extension, cover, or concat tools. The verb 'Remaster' is specific and resource-focused.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit 'Use this when' scenarios: improving audio quality, upgrading older models, or achieving a polished production version. While it doesn't mention when not to use it or alternative tools, the given conditions offer strong contextual guidance. No explicit exclusions are provided, but the guidelines are clear enough for most cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_replace_sectionAInspect

Replace a specific time range in a song with new generated content.

Re-generates a portion of a song between the specified start and end times,
keeping the rest of the song unchanged. Great for fixing sections you don't like.

Use this when:
- A specific section of a song needs improvement
- You want to change lyrics in the middle of a song
- You want to replace a verse or chorus with something different

Returns:
    Task ID and the updated audio information.
ParametersJSON Schema
NameRequiredDescriptionDefault
lyricNoNew lyrics for the replaced section. Use section markers like [Verse], [Chorus].
modelNoModel version to use.chirp-v5-5
styleNoMusic style for the replaced section.
audio_idYesID of the audio to replace a section in.
callback_urlNoWebhook callback URL for asynchronous notifications.
replace_section_endYesEnd time in seconds of the section to replace.
replace_section_startYesStart time in seconds of the section to replace.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It notes that the tool 'keeps the rest of the song unchanged' and returns a Task ID, implying asynchronous behavior. However, it does not disclose whether the operation is destructive, required permissions, or rate limits. The behavioral detail is adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with a clear summary, followed by usage scenarios in a bullet list, then mentions returns. Every sentence is informative and there is no wasted text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 7 parameters and 100% schema coverage, the description provides a good overview of purpose and usage. It mentions return value (Task ID and audio info) but does not detail the output schema. For a tool with many sibling tools, the description is sufficiently complete to guide selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters. The description adds minimal additional meaning beyond what the schema provides (e.g., 'New lyrics for the replaced section. Use section markers like [Verse], [Chorus]' is already in the schema). Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Replace a specific time range in a song with new generated content,' using a specific verb and resource. This distinguishes it from sibling tools like suno_extend_music (adds to end) and suno_overpainting/underpainting (different operations).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit 'Use this when:' bullet points listing three specific scenarios (fixing sections, changing lyrics, replacing verse/chorus), which gives clear guidance on when to use the tool. It does not explicitly state when not to use, but the scenarios are sufficient for most cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_samples_musicAInspect

Add AI-generated samples to uploaded audio.

Takes your uploaded audio and adds AI-generated musical samples
within the specified time range.

Use this when:
- You want to add sample loops or motifs to existing music
- You need to enhance a track with additional musical elements
- You want to add AI-generated samples to a specific section

Returns:
    Task ID and the audio with samples added.
ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel version to use.chirp-v5-5
audio_idYesID of the uploaded audio to add samples to. Must be uploaded via suno_upload_audio.
samples_endNoEnd time in seconds for adding samples. Must be less than total song duration.
callback_urlNoWebhook callback URL for asynchronous notifications.
samples_startNoStart time in seconds for adding samples. Default is 0.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so description carries full burden. It states the tool adds samples (mutation) but doesn't disclose potential side effects, limitations, or prerequisites beyond uploading audio. Minimal behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is concise with two paragraphs and bullet points. Front-loaded with main action. Could be slightly more compact but overall efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters, output schema, and sibling variety, the description provides basic overview but lacks details on task retrieval, error cases, or how output can be used. Adequate but not comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds context about the time range but mostly restates schema info. No significant additional meaning beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool adds AI-generated samples to uploaded audio, using a specific verb and resource. It distinguishes itself from siblings like generation or concatenation tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'Use this when' bullet points provide explicit guidance on when to use the tool. It lacks explicit when-not-to-use or alternatives, but the listed use cases are helpful.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_stems_musicAInspect

Separate a song into individual stems (vocals and instruments).

Splits the audio into separate tracks for vocals and instrumentals,
useful for remixing, karaoke, or isolating specific parts.

Use this when:
- You want to separate vocals from instrumentals
- You need individual stem tracks for mixing
- You want to create a karaoke version

Returns:
    Task ID and stem separation results with individual track URLs.
ParametersJSON Schema
NameRequiredDescriptionDefault
audio_idYesID of the audio to separate into stems.
callback_urlNoWebhook callback URL for asynchronous notifications.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It describes the action (splits audio) and return format (Task ID and stem results with URLs), but does not disclose behavior like whether it is destructive, async nature (callback_url implies async), or any prerequisites.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is front-loaded with purpose, then explains use cases, then returns. It is reasonably concise but could be slightly more streamlined by removing the redundant 'Separate a song' line.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given low complexity (2 params, simple action, output schema exists), the description covers purpose, usage, and return format adequately. It is complete enough for an agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline 3. Description adds minimal value: it mentions return format but not parameter details. Schema already describes both parameters clearly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool separates a song into stems (vocals and instruments). It specifies the resource (song) and the action (separate), and distinguishes from similar sibling tools like suno_extract_vocals by emphasizing multiple stems.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit 'Use this when' list with three clear scenarios (separating vocals, needing stems, karaoke). However, it does not explicitly state when not to use or compare to alternatives like suno_extract_vocals.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_underpaintingAInspect

Add AI-generated accompaniment/instrumental background to uploaded audio.

Takes your uploaded vocal track and adds an AI-generated instrumental
accompaniment beneath it (underpainting = adding music under vocals).

Use this when:
- You have a vocal recording and want to add music behind it
- You want to give an acapella track a full musical arrangement
- You need to add instrumental backing to existing vocals

Returns:
    Task ID and the audio with accompaniment added.
ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel version to use.chirp-v5-5
audio_idYesID of the uploaded audio to add accompaniment to. Must be uploaded via suno_upload_audio.
callback_urlNoWebhook callback URL for asynchronous notifications.
underpainting_endNoEnd time in seconds for adding accompaniment. Must be less than total song duration.
underpainting_startNoStart time in seconds for adding accompaniment. Default is 0.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully convey behavioral traits. It mentions returning a Task ID (suggesting async operation) but does not disclose whether the original audio is modified, rate limits, failure modes, or authentication needs. This is insufficient for safe agent invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: a brief explanation of the term, a bulleted usage list, and a return value summary. No unnecessary words or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the parameter count (5), full schema coverage, and presence of an output schema, the description adequately explains the tool's operation and parameters. It does not cover prerequisites like user authorization or detailed output, but these are partially offset by the output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds useful context for audio_id (must be uploaded via suno_upload_audio) and constraints for underpainting_end (must be less than total duration). These modest additions keep the score at 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool adds AI-generated accompaniment to uploaded audio, using specific verbs and explaining the term 'underpainting'. It references vocals and acapella, but does not explicitly differentiate from similar siblings like overpainting, leaving some ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a bulleted list of when to use the tool (vocal recording, acapella, etc.) and implies prerequisites via the parameter description for audio_id. However, it lacks explicit when-not-to-use guidance and alternatives among sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_upload_audioAInspect

Upload an external audio file to Suno for use in subsequent operations.

Uploads audio from a URL so it can be used with actions like upload_extend
and upload_cover, which allow you to extend or create covers of your own music.

Use this when:
- You have your own music you want to extend/cover with Suno
- You want to use an external audio as a base for Suno operations
- You need to import audio into Suno's system

After uploading, use the returned audio_id with suno_upload_extend or
suno_upload_cover actions.

Returns:
    Upload result with audio ID for use in subsequent operations.
ParametersJSON Schema
NameRequiredDescriptionDefault
audio_urlYesPublic URL of the audio file to upload. The URL must be directly accessible (CDN link, cloud storage URL, etc.).

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses that the audio URL must be publicly accessible and that it returns an audio ID. However, it omits details like file format constraints, size limits, or whether uploads are overwritten or create new entries.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately concise with a clear first sentence, bullet list for usage, and returns section. It is well-structured but could be slightly more succinct.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the existence of an output schema, the description adequately covers purpose, usage, and follow-up. However, it lacks details on file format, size limits, and error handling, leaving some gaps for a simple upload tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the input schema already describes the audio_url parameter with details on accessibility. The tool description does not add additional semantic meaning beyond what the schema provides, so baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb (upload) and resource (external audio file to Suno). It distinguishes from siblings by specifying that this is for importing audio to be used with upload_extend and upload_cover, two specific sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use scenarios with three bullet points and indicates the follow-up actions (use returned audio_id with specific sibling tools). Does not explicitly state when not to use, but the positive guidance is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_upload_coverAInspect

Create an AI cover of an uploaded audio (your own music).

Similar to suno_cover_music but works with audio you uploaded via
suno_upload_audio. Re-arranges your music in a different style.

Use this when:
- You uploaded your own music and want a cover in a different style
- You want to hear your song re-interpreted by AI

Returns:
    Task ID and the cover audio information.
ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel version to use.chirp-v5-5
styleNoTarget music style for the cover.
audio_idYesID of the uploaded audio to create a cover of. Must be an audio uploaded via suno_upload_audio.
audio_weightNoAdvanced parameter for cover operations. Controls how much the original audio influences the cover generation.
callback_urlNoWebhook callback URL for asynchronous notifications.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden but lacks details on side effects, authentication, rate limits, or whether the operation is synchronous. It mentions returning a Task ID, which implies asynchrony, but does not explain polling or behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a clear structure: purpose, usage bullets, return value. It front-loads the main action and is efficient, though it could be slightly more compact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of 5 parameters and an output schema, the description covers the basic purpose and return value. However, it lacks details on asynchronous behavior, error handling, or how to use the returned Task ID, making it not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so the description adds marginal value beyond the schema. It restates that audio_id must come from suno_upload_audio, but does not provide deeper semantics for other parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool creates an AI cover of uploaded audio, distinguishing it from the sibling tool suno_cover_music by specifying it works with audio uploaded via suno_upload_audio.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit bullet points on when to use the tool, such as uploading your own music and wanting a cover in a different style. It also mentions similarity to suno_cover_music, but does not explicitly state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suno_upload_extendAInspect

Extend an uploaded audio (your own music) with new AI-generated content.

Similar to suno_extend_music but works with audio you uploaded via
suno_upload_audio. Allows you to add new sections to your own music.

Use this when:
- You uploaded your own music and want to extend it
- You want to add AI-generated sections to your existing recordings

Returns:
    Task ID and the extended audio information.
ParametersJSON Schema
NameRequiredDescriptionDefault
lyricYesLyrics for the extension section.
modelNoModel version to use.chirp-v5-5
styleNoMusic style for the extension.
audio_idYesID of the uploaded audio to extend. Must be an audio uploaded via suno_upload_audio.
continue_atYesTimestamp in seconds where to start the extension.
callback_urlNoWebhook callback URL for asynchronous notifications.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description states the return value (Task ID and extended audio info) but does not disclose behavioral nuances such as whether the original audio is modified, required permissions, or any side effects. With no annotations, more detail is needed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the main action, with bullet points for usage scenarios. Some slight redundancy ('your own music' appears twice) keeps it from a perfect score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the tool's purpose, differentiation, usage, and return. With a rich schema and output schema, it provides sufficient context for selection, though additional details about model options are left to schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All parameters have descriptions in the schema (100% coverage), so the description does not need to repeat them. The description does not provide additional semantic context beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool extends uploaded audio with AI-generated content and distinguishes it from the similar suno_extend_music by specifying it works only with audio uploaded via suno_upload_audio.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage scenarios ('Use this when: ...') and mentions the alternative tool suno_extend_music, giving clear guidance on when to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.7/5.0
Disambiguation3/5

Several tools have overlapping purposes, such as suno_stems_music vs suno_all_stems_music and suno_generate_with_persona vs suno_generate_with_persona_vox. While descriptions help differentiate, careful reading is required to avoid misselection.

Naming Consistency4/5

Most tools follow a suno_verb_noun pattern, e.g., suno_create_persona, suno_extend_music. However, a few names are slightly inconsistent, like suno_stems_music (noun_verb) and suno_get_lyric_format_guide (longer suffix), but overall the pattern is clear.

Tool Count3/5

With 35 tools, the count is high but not excessive given the breadth of music generation, editing, and management features. Some tools are only slight variations, suggesting possible consolidation.

Completeness4/5

The tool set covers nearly all facets of music generation and manipulation, including advanced features like stem separation, persona management, and uploads. A minor gap is the lack of a tool to list all generated songs or delete a song.

Maintenance

ActivityActive
ResponsivenessSlow

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AceDataCloud/SunoMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server