home / media / spotdl

spotDL

24k

Music download CLI that matches Spotify tracks, albums, and playlists to audio sources and saves tagged files locally.

$pip install spotdl
Language
Python
Stars
24,150
Category
Media & Video
Agent
Ready
Agent Compatibility
JSON Output
Agent Skill
MCP Support
AI Analysis

spotDL is a Spotify-centric music downloader that matches tracks, albums, artists, and playlists to YouTube or other configured audio providers, then saves tagged audio files locally. It also supports metadata export, playlist sync, URL lookup, and a browser-based web mode.

What It Enables
  • Download tracks, albums, playlists, artists, liked songs, and saved albums from Spotify links or search terms, with album art, lyrics, and metadata embedded in the output files.
  • Export Spotify-derived metadata and matched download URLs to .spotdl files or stdout, then reuse that data in later download or archive workflows.
  • Keep a local music folder in sync with a Spotify playlist or album by fetching newly added songs and removing tracks that disappeared upstream.
Agent Fit
  • Non-interactive subcommands and predictable file outputs make it workable for batch jobs that archive playlists or refresh a local music mirror.
  • save --save-file - provides JSON that an agent can parse, but most other commands emit human-oriented logs or plain URLs instead of structured machine output.
  • Best fit is narrow and task-specific: it works when the job is downloading or syncing music files, not as a broad media or service automation surface.
Caveats
  • Downloads come from YouTube or other configured providers rather than Spotify itself, so matches, availability, and audio quality can vary.
  • Some workflows require Spotify OAuth or cookie files, and the web command opens a browser-based UI instead of staying fully headless.