suno_generate_custom_music
Generate custom AI music with your own lyrics, title, style, vocal gender, and duration. Use it when you need precise control over song structure, melody, and arrangement.
Instructions
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.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "suno_generate_custom_music"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| lyric | No | Song 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. | |
| model | No | Suno model version. 'chirp-v5-5' or 'chirp-v5' recommended for best quality. | chirp-v5-5 |
| style | No | Music 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' | |
| title | No | Title of the song. Keep it concise and memorable. | |
| variety | No | Result diversity: off, normal, high, extra, or max. | |
| duration | No | Target length in whole seconds (10-360). Only generate uses duration; the model may ignore this target. Actual length comes from the result. | |
| max_mode | No | Enable enhanced generation with a higher API price. Omitted/false keeps normal pricing. | |
| weirdness | No | Advanced parameter for custom mode. Controls how unusual/experimental the generation is. | |
| audio_weight | No | Audio influence; 0 is a valid explicit value. | |
| callback_url | No | Webhook callback URL for asynchronous notifications. When provided, the API will call this URL when the audio is generated. | |
| instrumental | No | If true, generate instrumental version (lyrics will be ignored). Default is false. | |
| lyric_prompt | No | Prompt text for auto-generating lyrics. Only used when custom is true and lyric is empty. | |
| vocal_gender | No | Preferred vocal gender. 'f' for female, 'm' for male, empty string for AI to decide. Only works with v4.5+ models. | |
| negative_tags | No | Styles or genres to exclude in custom mode (custom=true). The API currently sets no fixed character limit, but overly long content may still fail; keep it concise. Examples: 'heavy metal, screaming', 'autotune, electronic' | |
| style_influence | No | Advanced parameter for custom mode. Controls how strongly the style prompt influences the generation. | |
| variation_category | No | Variation intensity for v5+ models. 'high' for maximum variation, 'normal' for balanced, 'subtle' for minimal changes. Only supported in chirp-v5 and above. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |