Generate AI music or lyrics from natural language with a single sentence. The system auto-detects whether to create a vocal song or pure instrumental BGM, and automatically polls the task: it returns a preview link first, then the final downloadable audio link.
This skill supports the following intents:
Users can describe the music they want in plain language. The system auto-determines the mode and handles parameter inference and task tracking.
The following natural language requests will trigger this skill:
The execution flow is intent‑based and incorporates a two‑stage return and a "lyrics‑first" UX:
Typical user inputs:
Step 1: Intent Recognition
Step 2: Lyrics Handling
Step 3: Submit Music Generation Task
{ action: "custom", lyrics: "<lyrics>", style: "<inferred from user>", mv: "<default to latest high‑quality model>" }Step 4: Automatic Task Polling (Two Stages)
audio_url as preview link)audio_url as downloadable final link)fail_code/fail_reason)audio_url for listening;audio_url (download/publish).Step 5: Return Results to the User (Two‑Stage × Two Songs)
:white_check_mark: Typical user inputs:
Step 1: Intent Recognition
Step 2: Submit Music Generation Task
{ action: "auto", style: "<inferred from user>", mv: "<default latest model>", instrumental: 1 }Step 3: Automatic Task Polling (Two Stages)
Step 4: Return Preview & Final Links (Two Steps)
:white_check_mark: User inputs:
{ prompt: "<user description>" }{ lyrics: "<AI‑generated lyrics>" }:white_check_mark: User inputs:
| Parameter | Source | Default/Notes |
|---|---|---|
style | Inferred from user input | Default to Pop/general if none |
mv | Default high‑quality | Prefer latest high‑quality |
instrumental | Set to 1 for BGM | Otherwise 0 |
lyrics | User‑provided / auto | — |
title | Inferred or auto‑named | — |
BASE_URL and API Key:
- MUSICFUL_BASE_URL (default: https://api.musicful.ai)
- MUSICFUL_API_KEY (read from the skill folder’s .env; environment variable MUSICFUL_API_KEY is also honored if set)
- Entry points: scripts/musicful_api.py, CLI: scripts/run_musicful.py / scripts/dispatch_music_generator.py
- Important: ensure MUSICFUL_API_KEY is configured before calling; if missing, the server may respond with HTTP 500 (helps pinpoint auth/config issues quickly).
Success:
{ "status": "success", "data": { ... } }
Error:
{ "status": "error", "message": "<reason>" }
User: Generate a sad rock song
Skill: Shows generated lyrics → submits job → returns preview link → returns full mp3 link
User: An ambient BGM for a quiet night
Skill: Submits job (instrumental=1) → returns preview → returns full
User: Write lyrics about the night sky
Skill: Returns generated lyrics