Skip to content

Rights Domain

magmacrunchmedia edited this page Aug 9, 2026 · 2 revisions

Rights Domain

Music rights metadata — ISRC, ISWC, and ASCAP ID lookup from the MusicBrainz cache.

Commands

Search

magmascript rights search "Farewell"              # search by title, ISRC, ISWC, or ASCAP ID
magmascript rights search "Driving" --artist "Woah."  # filter by artist

Look up by identifier

magmascript rights isrc QT72X2300043              # find recording by ISRC
magmascript rights iswc T-337.058.315-2           # find work by ISWC
magmascript rights ascap 933623780                # find work by ASCAP ID

Artist catalog

magmascript rights catalog "C.P. Rutledge"        # full rights catalog for an artist
magmascript rights catalog "Woah."                # works with names + punctuation
magmascript rights catalog 44c1e0bd-...           # works with UUIDs too

Export

magmascript rights export                         # TSV export of all rights data
magmascript rights export --json                  # JSON output

The TSV output is formatted for pasting into ASCAP registration forms:

Title	Type	Artist/Composer	ISRC	ISWC	ASCAP ID
Farewell	recording	C.P. Rutledge	US-S1Z-24-00012
Try	work	Jon McCoy	T-337.698.635-1	933927862

Individual lookups

magmascript rights recording <uuid>               # ISRCs for one recording
magmascript rights work <uuid>                    # ISWCs + ASCAP IDs for one work

Data Sources

The rights domain reads from the MusicBrainz cache (archive/_cache/):

  • ISRCs — from artist cache files (recordings subpage)
  • ISWCs — from works cache files (data.iswcs[])
  • ASCAP IDs — from works cache files (data.attributes[{type:"ASCAP ID"}])

For new recordings/works, run magmascript pi backup musicbrainz to refresh the cache.

How It Works

The rights domain connects to the MCP server which reads from the local cache:

Your Mac ──HTTPS──> MCP server ──read──> archive/_cache/

Artist names are resolved with fuzzy matching (strips punctuation, case-insensitive).

Output Formats

magmascript rights search "Try" --table    # default table
magmascript rights search "Try" --json     # JSON output

Clone this wiki locally