musicbrainzngs
Python bindings for the MusicBrainz NGS and the Cover Art Archive webservices
What it is and what it does
musicbrainzngs is a Python client library for the MusicBrainz NGS webservice (version 2) and the Cover Art Archive. It wraps HTTP requests to these remote APIs, allowing you to search for artists, releases, recordings, and other music entities, and to retrieve associated cover art. The library handles authentication for data submission and requires you to set a user agent identifying your application before making queries, per MusicBrainz's rate-limiting policy.
The package has no external runtime dependencies and installs as a pure-Python wheel. However, it has been abandoned since its latest release and receives no maintenance. If the MusicBrainz API has remained stable, existing code will likely continue to work, but you should not expect bug fixes, security updates, or support for API changes on the server side.
Use it for:
- Build a music tagger or metadata enrichment tool that looks up artist and release information from MusicBrainz.
- Retrieve cover art for albums programmatically via the Cover Art Archive API.
- Integrate music database queries into a music library manager or cataloging application.
- Batch-process music files to fetch canonical metadata and identifiers from MusicBrainz.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides Python bindings to query the MusicBrainz NGS webservice and Cover Art Archive API for music metadata and cover art.
Yes, if you need MusicBrainz API access and the server-side API has remained stable. The package is simple, dependency-free, and permissively licensed. However, be aware it is abandoned and will not receive updates. Verify that the current MusicBrainz API still matches the binding's expectations before committing to a production deployment.
Install
musicbrainzngs on PyPI
pip
pip install musicbrainzngsuv
uv add musicbrainzngspoetry
poetry add musicbrainzngsInstalling musicbrainzngs
Before you install
Low install friction with no runtime dependencies. However, the package is abandoned—last release was 2020-01-11. No maintenance activity is expected; use only if the MusicBrainz API has remained stable since then.
License in practice
Dual-licensed under BSD 2-clause (primary) and ISC for one compatibility module. Both are permissive open-source licenses with minimal restrictions on use or redistribution.
Quickstart
import musicbrainzngs
musicbrainzngs.set_useragent("MyApp", "0.1", "http://example.com")
result = musicbrainzngs.search_artists(artist="Artist Name")
MusicBrainz webservice access rules require setting a user agent before making queries.
Verify before relying
- Whether the MusicBrainz NGS API has remained backward-compatible since the 2020-01-11 release.
- Whether the package works reliably with modern Python versions despite being unmaintained.
- Current status of the Cover Art Archive API and whether this binding still functions correctly.
- Exact Python version compatibility with versions released after 2020.
Package facts
| License | BSD 2-clause (permissive) |
| Python support | supports the current Python release (>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | abandoned — 2,407 days since the last release |
| First released | |
| Downloads | 214,312/month — #9,420 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: musicbrainzngs-0.7.1-py2.py3-none-any.whl
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
pyacoustidProvides Python bindings for Chromaprint…
permissive · top 15,000 on PyPI
spotdlspotDL downloads songs from Spotify playlists…
permissive · top 15,000 on PyPI
librosalibrosa provides audio and music signal…
permissive · top 5,000 on PyPI
azureml-contrib-servicesProvides utilities for handling raw HTTP…
unclear · top 15,000 on PyPI
mediafileMediaFile reads and writes metadata tags across…
permissive · top 15,000 on PyPI
music-assistant-clientPython async client library for connecting to…
permissive · top 15,000 on PyPI
spotifywebapipythonA Python library that wraps the Spotify Web…
permissive · top 15,000 on PyPI
music21music21 is a Python toolkit for analyzing,…
permissive · top 15,000 on PyPI
music-assistant-modelsProvides shared data models for Music…
permissive · top 15,000 on PyPI
ytmusicapiytmusicapi lets you programmatically interact…
permissive · top 15,000 on PyPI