Music Grabber

Upload a text file or paste your song list below (one per line in format: Artist - Song Title).

Supported services: Spotify, YouTube, Apple Music, Amazon Music, Tidal i
Large Spotify playlists may take a few seconds to load. YouTube playlists are unlimited. Tidal requires a public playlist URL.
0 lines

Search for an artist, pick an album, preview the tracklist, and download the whole thing in one go. Files land in your Albums folder.

Album mode uses best-effort single-track matching, not full release mirroring. It will try to source each track intelligently, but it may not produce a perfect 1:1 album copy. For exact album hunting, use Lidarr (with Usenet/torrents) or Soulseek.

Watched Playlists / Watched Artists ↓

Add a Spotify, YouTube, Apple Music, Amazon Music, or Tidal playlist to automatically download new tracks when they're added.

Watched Artists

Follow an artist on MusicBrainz and new singles will be downloaded automatically as they're released.

Download Queue / Downloadable to Device ↓

Downloadable to Device

All completed downloads available to save locally, newest first.

Statistics

General

Used for audio fingerprinting to improve metadata accuracy. A shared fallback key is built in but may hit rate limits if many people are using it. Register your own free key at acoustid.org to avoid this.
Downloads below this bitrate are rejected. 0 = no minimum.
Choose an existing folder, use /music root, or pick Custom path….
Separate folder for playlist downloads. Leave disabled to keep playlist tracks in Singles. When set, playlist tracks are saved as Artist - Title.ext inside a named subfolder.
Folder for album downloads from the Albums tab. Files are organised as Albums/Artist/Album/Track.flac.

Navidrome

For accurate M3U playlist entries, add ND_SUBSONIC_DEFAULTREPORTREALPATH: "true" to your Navidrome docker-compose environment. Test Connection will check whether this is enabled.

Jellyfin

When configured, MusicGrabber triggers a Jellyfin library scan after each download so new tracks appear immediately. Only the music library is refreshed.

Lidarr

When configured, MusicGrabber checks Lidarr for existing tracks before downloading. Tracks already in your Lidarr library are skipped automatically.

YouTube

Export cookies from youtube.com while logged in using a browser extension like "Get cookies.txt LOCALLY". Re-export when you start getting 403 errors.

Spotify

Export cookies from open.spotify.com while logged in using a browser extension like "Get cookies.txt LOCALLY". Enables access to private playlists and your personal library. The sp_dc cookie is required.

Notifications

Choose which download types send notifications. "Errors only" limits all selected types to failure notifications.
Full Telegram Bot API URL including your bot token and chat ID. Create a bot via @BotFather, then get your chat ID by messaging @userinfobot.
Receives a JSON POST on download completion with event, type, title, artist, status, etc.
Supports 50+ services: Gotify, ntfy, Discord, Pushover, Slack, and more. See Apprise docs for URL formats.
Email (SMTP)

Blacklist

Reported tracks and blocked uploaders. Blacklisted videos are hidden from search results; blocked uploaders are penalised in ranking.

Loading...

Soulseek (slskd)

The path slskd writes completed downloads to, as seen from MusicGrabber's container (e.g. /downloads). Must be accessible to MusicGrabber so it can move files into your music library.

User Management

Spotify (Advanced)

Base timeout for large Spotify playlist extraction. Can also be set via SPOTIFY_BROWSER_TIMEOUT_SECONDS.
Stop scrolling when no new rows appear for this long. Can also be set via SPOTIFY_BROWSER_STALL_SECONDS.

Security

When set, all API requests require this key. Rate limit: 200 requests/minute per IP.
In API key mode, MusicGrabber stores your key in this browser for future visits. "Clear Stored Key" removes it from this browser only — you'll be prompted to re-enter it next time.