Skip to main content
Glama

suno_list_actions

Lists all available Suno API actions and their corresponding tools to help you understand the full capabilities of the Suno MCP.

Instructions

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.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Implementation Reference

  • The actual implementation of the suno_list_actions tool. It is an async function decorated with @mcp.tool() that returns a string containing a categorized reference list of all available Suno API actions and tools.
    @mcp.tool()
    async def suno_list_actions() -> str:
        """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.
        """
        # Last updated: 2026-04-27
        return """Available Suno Actions and Tools:
    
    Music Generation:
    - suno_generate_music: Create music from a simple text prompt (Inspiration Mode)
    - suno_generate_custom_music: Create music with custom lyrics and style (Custom Mode)
    - suno_extend_music: Continue an existing song from a specific timestamp
    - suno_cover_music: Create a cover/remix version of a song
    - suno_concat_music: Merge extended song segments into complete audio
    - suno_remaster_music: Remaster a song to improve audio quality
    - suno_replace_section: Replace a specific time range with new content
    - suno_mashup_music: Blend multiple songs together musically
    
    Upload-based Operations (for your own music):
    - suno_upload_audio: Upload external audio for use in Suno
    - suno_upload_extend: Extend uploaded audio with new AI content
    - suno_upload_cover: Create an AI cover of uploaded audio
    - suno_underpainting: Add AI-generated accompaniment to uploaded vocal audio
    - suno_overpainting: Add AI-generated vocals to uploaded instrumental audio
    - suno_samples_music: Add AI-generated samples to uploaded audio
    
    Stems & Extraction:
    - suno_stems_music: Separate a song into vocal and instrumental stems
    - suno_all_stems_music: Separate a song into all individual stems (vocals, bass, drums, etc.)
    - suno_extract_vocals: Extract only the vocal track from a song
    
    Media Conversion:
    - suno_get_mp4: Get MP4 video version of a song
    - suno_get_wav: Get lossless WAV format of a song
    - suno_get_midi: Get MIDI data from a song
    - suno_get_timing: Get word-level timing/subtitle data
    
    Persona (Voice Style):
    - suno_create_persona: Save a voice style from a Suno-generated audio for reuse
    - suno_create_voice: Create a voice persona from an external audio URL
    - suno_list_personas: List all saved voice personas for a user
    - suno_delete_persona: Delete a saved voice persona
    - suno_generate_with_persona: Generate with a saved voice style
    - suno_generate_with_persona_vox: Generate with a saved voice style using VOX consistency mode
    
    Lyrics:
    - suno_generate_lyrics: Generate song lyrics from a prompt
    - suno_optimize_style: Optimize a style description for better results
    - suno_mashup_lyrics: Combine two sets of lyrics into a mashup
    
    Task Management:
    - suno_get_task: Check status of a single generation
    - suno_get_tasks_batch: Check status of multiple generations
    
    Information:
    - suno_list_models: Show available models and their capabilities
    - suno_list_actions: Show this action reference (you are here)
    - suno_get_lyric_format_guide: Show how to format lyrics
    
    Workflow Examples:
    1. Quick song: suno_generate_music → suno_get_task
    2. Custom song: suno_generate_lyrics → suno_generate_custom_music → suno_get_task
    3. Long song: suno_generate_music → suno_extend_music (repeat) → suno_concat_music
    4. Consistent voice: suno_generate_music → suno_create_persona → suno_generate_with_persona
    5. Custom voice from URL: suno_create_voice → suno_generate_with_persona
    6. Your own music: suno_upload_audio → suno_upload_extend or suno_upload_cover
    7. Add accompaniment: suno_upload_audio → suno_underpainting
    8. Add vocals: suno_upload_audio → suno_overpainting
    9. Full stems: suno_all_stems_music → use stems for further production
    10. Remix: suno_stems_music → use stems for further production
  • The @mcp.tool() decorator on suno_list_actions registers it as an MCP tool. The mcp instance comes from core.server.
    from core.server import mcp
  • main.py:298-301 (registration)
    Server card registration listing suno_list_actions in the HTTP transport's tool manifest with name 'suno_list_actions' and description 'List available API actions'.
    {
        "name": "suno_list_actions",
        "description": "List available API actions",
    },
  • Startup banner print listing 'suno_list_actions' as an available tool.
    safe_print("    - suno_list_actions")
  • Integration test for suno_list_actions, verifying it returns a string containing 'suno_generate_music', 'suno_extend_music', and 'suno_cover_music'.
    @pytest.mark.asyncio
    async def test_list_actions(self):
        """Test suno_list_actions tool."""
        from tools.info_tools import suno_list_actions
    
        result = await suno_list_actions()
    
        print("\n=== List Actions Result ===")
        print(result)
    
        assert "suno_generate_music" in result
        assert "suno_extend_music" in result
        assert "suno_cover_music" in result
Behavior4/5

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

The description transparently states it returns a categorized list. As a read-only listing tool with no annotations, it adequately conveys the behavior without needing further detail.

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 three sentences, front-loaded with the key action, and no unnecessary 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?

Given the tool's simplicity (no parameters, output schema exists), the description covers all necessary context for an agent to select and use it.

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, and coverage is 100%. The description does not need to add parameter meaning since none exist, meeting the baseline of 4.

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: listing all available Suno API actions and corresponding tools. It distinguishes itself from sibling tools by acting as a reference guide for the full capabilities.

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 explains it is useful for understanding the full capabilities, implying when to use it for overall orientation. It does not explicitly state when not to use it, but the context is clear.

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

Install Server

Other Tools

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