MCPcopy
hub / github.com/CharlesPikachu/musicdl

github.com/CharlesPikachu/musicdl @main sqlite

repository ↗ · DeepWiki ↗
7,761 symbols 29,727 edges 107 files 45 documented · 1%
README

musicdl logo

Docs PyPI - Python Version PyPI License PyPI - Downloads (total) PyPI - Downloads (month) PyPI - Downloads (week) Pages-Build-Deployment Issue Resolution Open Issues

<a href="https://musicdl.readthedocs.io/" target="_blank"><strong>📚 Documents: musicdl.readthedocs.io</strong></a>

🎧 Live Demo · MusicSquare (音乐广场)

demo

🛠 Source Code (MusicSquare)

MusicSquare is a browser-based music playground — search, play, and download tracks directly in your browser.

⚠️ For learning and testing only: please respect copyright and the terms of each music platform.

学习收获更多有趣的内容, 欢迎关注微信公众号:Charles的皮卡丘

🎉 What's New

  • 2026-06-24: Released musicdl v2.12.9 — fixed and cleaned up a large number of unavailable third-party interfaces, and added many new parsing interfaces with VIP account support, including QQ Music, Kuwo, TIDAL, Qobuz, and others. Also fixed bugs on platforms such as NetEase Cloud Music.
  • 2026-06-21: Released musicdl v2.12.8 — updated third-party API integrations for Deezer, YouTube, Spotify, and Qobuz; fixed the GDStudio music client and upgraded it to the latest API algorithm.
  • 2026-06-16: Released musicdl v2.12.7 — fix the freezing issue that occurs when Kugou, Kuwo, QQ Music, and NetEase Cloud Music access third-party APIs (refer to issues #79).

🎵 Introduction

A lightweight music downloader built entirely in pure Python, designed for simplicity, clarity, and ease of use. It is suitable for personal listening workflows, collection management, and academic or educational purposes such as music information retrieval, data collection, and reproducible research. With a clean codebase and minimal dependencies, the project is easy to use, extend, and study. If you find this project useful, please consider giving it a ⭐ star to support ongoing development, help more people discover it, and stay updated with future improvements.

⚠️ Disclaimer

This repository is provided solely for educational and research purposes. Commercial use is prohibited. The software only interacts with publicly accessible web endpoints and does not host, store, mirror, or distribute any copyrighted or proprietary content. No executables are distributed with this repository. Redistribution, resale, or bundling of this software (or any derivative packaged distribution) without explicit permission is strictly prohibited. Access to paid, subscription, or otherwise restricted content must be obtained through authorized channels (e.g., purchase or subscription via the relevant service). Use of this software to circumvent paywalls, DRM, licensing restrictions, or other access controls is strictly prohibited. If you are a copyright or rights holder and believe that this repository infringes your rights, please contact me with sufficient detail (e.g., relevant URLs and proof of ownership), and I will promptly investigate and take appropriate action, which may include removal of the referenced material.

🤝 Sponsored

DolOffer

DolOffer —— 一站式数字订阅充值平台,优惠价提供 Apple Music、Spotify、GPT 会员充值服务,正版订阅,售后无忧。 访问 专属链接, 使用优惠码 AI8888 享 9 折优惠。

🎧 Supported Music Client

Category MusicClient (EN) MusicClient (CN) 🔎 Search ⬇️ Download Code Snippet
Platforms in Greater China BilibiliMusicClient Bilibili音乐 bilibili.py
BodianMusicClient 波点音乐 bodian.py
FiveSingMusicClient 5SING音乐 fivesing.py
KugouMusicClient 酷狗音乐 kugou.py
KuwoMusicClient 酷我音乐 kuwo.py
MiguMusicClient 咪咕音乐 migu.py
MOOVMusicClient 摩音符 moov.py
NeteaseMusicClient 网易云音乐 netease.py
QianqianMusicClient 千千音乐 qianqian.py
QQMusicClient QQ音乐 qq.py
SodaMusicClient 汽水音乐 soda.py
StreetVoiceMusicClient 街声 streetvoice.py
Global Streaming / Indie AppleMusicClient 苹果音乐 apple.py
DeezerMusicClient Deezer (法国音乐平台) deezer.py
FMAMusicClient FMA (自由音乐网) fma.py
JamendoMusicClient 简音乐 (欧美流行音乐) jamendo.py
JooxMusicClient JOOX (QQ音乐海外版) joox.py
JioSaavnMusicClient JioSaavn (印度语音乐) jiosaavn.py
OpenGameArtMusicClient 开源游戏素材网 opengameart.py
QobuzMusicClient Qobuz (提供CD质量的流媒体平台) qobuz.py
SoundCloudMusicClient SoundCloud (声云) soundcloud.py
SpotifyMusicClient Spotify (思播) spotify.py
SunoMusicClient Suno (AI音乐生成网站) suno.py
TIDALMusicClient [T

Core symbols most depended-on inside this repo

n
called by 2708
musicdl/modules/js/youtube/runner.js
n
called by 2642
musicdl/modules/js/youtube/botguard.js
get
called by 1288
musicdl/modules/sources/base.py
push
called by 944
musicdl/modules/js/youtube/runner.js
create
called by 866
musicdl/modules/js/youtube/runner.js
s
called by 851
musicdl/modules/js/youtube/runner.js
a
called by 842
musicdl/modules/js/youtube/runner.js
create
called by 834
musicdl/modules/js/youtube/botguard.js

Shape

Method 6,816
Function 564
Class 370
Route 11

Languages

TypeScript78%
Python22%

Modules by API surface

musicdl/modules/js/youtube/runner.js3,086 symbols
musicdl/modules/js/youtube/botguard.js2,962 symbols
musicdl/modules/utils/youtubeutils.py353 symbols
musicdl/modules/utils/tidalutils.py131 symbols
musicdl/modules/utils/appleutils.py92 symbols
musicdl/modules/utils/cmd.py69 symbols
musicdl/modules/js/youtube/jsinterp.py66 symbols
musicdl/modules/utils/spotifyutils.py56 symbols
examples/claudeai-modern-web-music-player/app.py45 symbols
scripts/g4f_issue_reply.py44 symbols
musicdl/modules/utils/hls.py44 symbols
musicdl/modules/sources/netease.py37 symbols

Dependencies from manifests, versioned

Pillow12.2.0 · 1×
aigpy2022.7.8.1 · 1×
av17.0.0 · 1×
beautifulsoup44.14.3 · 1×
bleach6.3.0 · 1×
brotli1.0.9 · 1×
click8.0.0 · 1×
cryptography46.0.5 · 1×
ctranslate24.7.1 · 1×
curl-cffi0.14.0 · 1×
emoji2.15.0 · 1×
fake-useragent2.2.0 · 1×

For agents

$ claude mcp add musicdl \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact