Get lyrics
get_lyricsRetrieve lyrics for a track from LRCLIB using its ID or exact artist and title. Choose plain, synced, or both formats; supports pagination for long lyrics and identifies instrumental tracks.
Instructions
Fetch the lyrics of one track from LRCLIB, given the id returned by search_tracks, or an exact artist and title. Set 'format' to "synced" for karaoke-style lyrics with a timestamp on every line, "plain" for the text alone, or "both". Check 'has_synced_lyrics' in the search results first: not every track has timed lyrics. Lyrics can be long, so the text is truncated by default: check 'truncated' and call again with 'offset' set to 'next_offset' to continue reading. Instrumental tracks come back with status "instrumental" and no text, which is a valid answer, so do not retry them. Always cite 'attribution' when showing lyrics to a user.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | LRCLIB track id, as returned by search_tracks. Preferred over the name fields. | |
| format | No | 'plain' returns the text only. 'synced' returns LRC text plus a parsed list of timestamped lines. 'both' returns each of them. | plain |
| offset | No | Character offset to resume from, for lyrics longer than max_chars. | |
| max_chars | No | Maximum characters of lyrics text to return in this call. | |
| album_name | No | Album name, to pick between releases. | |
| track_name | No | Song title, matched exactly by LRCLIB. Required when 'id' is absent. | |
| artist_name | No | Artist name, matched exactly by LRCLIB. Required when 'id' is absent. | |
| duration_seconds | No | Track duration, to pick between versions of differing length. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| notes | Yes | ||
| track | Yes | ||
| offset | Yes | ||
| source | Yes | ||
| status | Yes | ||
| truncated | Yes | ||
| attribution | Yes | ||
| next_offset | Yes | ||
| total_chars | Yes | ||
| plain_lyrics | Yes | ||
| synced_lines | Yes | Parsed timestamped lines. | |
| synced_lyrics | Yes | Raw LRC text, one timestamp per line. | |
| returned_chars | Yes | ||
| synced_lines_truncated | Yes |