A new MusicBrainz user script was released

@IvanDobsky, @paulakreuzer and @Lotheric have suggested this idea and I have added the following new user script to my github repo:


It will always display full artist discographies (including non official release groups) by default.

You can try with this normal DAVID BOWIE link. If you click it (either left or right), it should instantly turn into and direct you towards the famous Show all release groups instead (all=1) link.
Then you can use the Show only official release groups instead (all=0) link to go back to official‐only display.

Bear that in mind if you want to share an artist link with right‐click/copy, you will get the modified URL.
If many people prefer that the script does not modify the URL when right‐clicking, please comment in this ticket.

※ I will soon stop using greasyfork and openuserjs mirrors


Brilliant! Doesn’t seem to work for me at the moment though? Edit: It works, just not when I click on your forum link for some reason :slight_smile:

While I have your brilliant mind handy, how hard would it be to indicate whether there are various artist releases somewhere before clicking the link? Like you’ve done with the cover art tab (tells you how many images are there before clicking).

1 Like

Create Broadcast release from recording

That might be useful for people adding podcasts on MB.

Description: from an existing recording page, create a new release of Broadcast type containing only this recording (i.e. follow the official guideline for podcasts).

(see the “create broadcast release” button on the bottom right)

You should be able to just validate the “add release” edit, since all fields should be prefilled correctly: same release title and artists as the recording, track with the same title and same artist, using the preexisting recording (also copy the “streamed for free” link if existing)

Download link on github


Clone relations in Release Editor

An often asked-for script: clone relationships from one recording to some others in the release editor.

Select the recordings you want with the usual checkboxes (including the one you want to copy from), enter the index number of the recording you want to copy from (by default the 1st one), and click “Clone relations”.

Credits, attributes and dates should be cloned too; recording-recording and recording-work relations are skipped.

Download link on github

Ping me here or open an issue in case of trouble, I only tested a few basic cases

Edit: discussion moved to Clone relations in Release Editor


2 posts were split to a new topic: Need help creating a user script

I’ve got two userscripts to share with you all today.

Bulk copy-paste work identifiers

Quickly import work identifiers (ISWC, agency work codes) from ISWCNet.


ISWCNet is a great resource to find a bunch of work identifiers, but copy-pasting all of them into the work edit page is quite the chore. No more! When installed, it’ll add a button to each work in ISWCNet’s search results, and a button to each work edit/create page in MusicBrainz. Click the button on ISWCNet, switch to the edit page, click the button there, and spend the time you saved in other useful ways.

Find it on GitHub (direct install link).


  • At the moment, the script does not sanitise any IDs, but it does internally normalise them to check for duplicates.
  • Currently, it can only copy data from ISWCNet, but other repertoires can be added.
  • The script is fairly conservative, and will ask for confirmation whenever it detects that there are IDs in MB that aren’t on ISWCNet.
  • Once the button is clicked, the copied data is cleared and cannot be repasted without copying it again. This is intentional, to prevent accidentally reusing data on other work pages.

Display CAA image dimensions

This script has been such a godsend that I honestly forgot that it was a userscript and not built into MB. Displays the dimensions of images on CAA inline, underneath each image.

Can also be found on GitHub (direct install link).


To get these dimensions, the script loads the full-size images in the background. This can be a burden on your network, especially for pages with many images, so loading is deferred until the first time the image is visible on the page (i.e., it won’t load until you scroll to it). In addition, loading is aborted as soon as the dimensions are known, so effectively, only a small portion of the full-size image should actually be transferred for it to work.


MusicBrainz Magic Tagger Button

A user script to improve handling of the green tagger button Open in tagger:



A script that allows you to print your collection on paper sheets, nicely.
Ideal for second hand shops, feal markets, with your what you already own list, in hands:


Announcing not one, not two, but three new userscripts that went live just a little while ago.

1. Supercharged Cover Art Edits

Have you ever noticed the vast amount of empty space on the right hand side of cover art edits? It’s free real estate. Let’s use it to supercharge voting on cover art edits!


  • Displays handy release information (status, packaging, format) on cover art edits, so you can easily check whether a medium scan is added to a digital media release, a square front cover is added to a digipak, or any sort of cover art is added to a pseudo-release.
  • Displays other images inline next to the new or removed image, facilitating checking an image against the rest of the images without opening the cover art tab. Immensily powerful on cover art removals: Check whether a matching replacement image exists without opening other tabs!
  • Can show a pop-up dialog enabling more detailed comparison between two images, either side-by-side, or in overlay mode (hover over the images to switch between two versions).
  • Makes use of resemble.js to calculate similarity between two images and highlight differences, making spotting even the most subtle differences in images child’s play.


Other Tidbits

  • Generating the similarity and differences can be quite expensive, so it’s not done automatically, and requires clicking it when you need it. It’s normal for it to lock up your browser a bit. I have some ideas to make it more responsive, but that would require technologies that aren’t widely supported in browsers yet.
  • Works very well in conjunction with Display CAA Dimensions.

Install here

2. Blind Votes

While voting on edits here, I began to notice potential bias in my reviews. There are often edits where I see a familiar name as the editor and think “Well I’ve never seen this person do a bad edit of this type before, so most likely this one will be fine too and I don’t have to check in depth as much as I usually do.” I decided to try to eliminate some of this bias, so I wrote this little script. It blinds out the editor’s name on open edits on which you have not voted, as well as the names of voters and the votes cast so far (to prevent peer pressure). Whenever you select a vote, the details are unblinded. I’m not sure whether it will provide a better or more reliable voting experience, but it’s a fun experiment nonetheless. Install here.

3. Collapse Work Attributes

Since I’m probably the root cause of the rise in work attributes because of the work code importer, when I saw MBS-11535 and MBS-11537, I felt it to be my duty to provide a userscript as a temporary workaround. Not much else to say here, it does what it says it does :slight_smile: Should work on every page where work attributes are displayed. Install here.

Screenshot 2021-03-30 at 22.06.32

Help! Your Cool Stuff Doesn’t Work!

Problems? Feature requests? File an issue in the GitHub repo or reach out via IRC.



This is amazing…


The work code script gets better and better with every update. Would it be possible to adapt it to the JASRAC service (http://www2.jasrac.or.jp/eJwid/)? It only gives the JASRAC ID and the ISWC, but filling those in + getting JASRAC in the dropdown still slows things down a lot.

QoL userscript.

Upload to CAA From URL (Yes! Really!)

I’ve grown a bit tired of seeing my desktop cluttered with covers of random releases after a short editing session.

And apparently, a bunch of others would like to get rid of that clutter as well (MBS-4641). So I said, no more!


Fairly straightforward: Copy an image URL, paste it in the text box, the userscript will download the image into memory and add it to the upload queue. It’ll attempt to figure out the correct image type via magic numbers (reused from MB’s own implementation) since some sites may use incorrect extensions.

Recommended to use in conjunction with maxurl to get the highest-quality images on various sites.


Tested on FF 90 + ViolentMonkey 2.13.0, YMMV.

Minor technical details

Download blob, turn blob into file, create fake “drop” event containing the file, trigger the drop event on the drop zone to coerce MB into adding it to the queue.

Now, if you’ll excuse me, I have a desktop to declutter.


Works well with Opera for Windows (76.0.4017.107) + Tampermonkey for Opera (4.11.6120)
but I get this warning… I clicked Allow Once and it worked.


It sounds super great! I will use it on Linux.

@Lotheric, this is not needed on Windows, where the file selection dialog already manages URL.

1 Like

it’s one less click!


Hmm, it seems Tampermonkey is warning when a userscript attempts to make a request to another domain, as sort of a CORS mechanism. It’ll probably ask again when entering another URL, or a URL on another domain. I’ve pushed a small update to the script, it’s not going to completely eliminate the problem, but according to Tampermonkey’s docs, it should allow you to click “Always allow all domains”, so that it shouldn’t ask it ever again.


Super excited about this. As you said, I have a giant pile of files sitting around that I downloaded and re-uploaded and then never care about again. :pray:


To celebrate my 1-year anniversary at MB, I’m releasing three smaller QoL userscripts which should hopefully save everyone a lot of time, clicks, and keystrokes. Just a small description of each, no screenshots today, sorry!

QoL: Select All Update Recordings (Install)

Add buttons to the release editor to select all “Update recordings” checkboxes. Differs from the built-in “Select All” checkboxes in that it doesn’t lock the checkboxes to a given state, enabling you to deselect some checkboxes. Comes in quite handy if you need to update most, but not all recording titles.

QoL: Inline all recording’s tracks on releases (Install)

Display all tracks and releases on which a recording appears from a release’s tracklist. Makes it easier to check whether live or DJ-mix recordings are wrongly linked to other tracks. Saves you from having to open each recording separately and check the tracks. Note that they aren’t loaded by default, you can find a new button/link at the top of the tracklist (next to the “expand all mediums”, “display credits inline”, …) to load and display this information.

QoL: Seed the batch recording comments script (Install)

Seed the recording comments for the batch recording comments userscripts with live and DJ-mix data. Can save a bunch of keystrokes when setting live or DJ-mix disambiguation comments. DJ-mix comments are derived from the release title. Live comments are derived from “recorded at place”, “recorded in area”, and “recording of work” advanced relationships. Also uses Unicode punctuation by default. Should be able to handle US states and Canadian provinces. Should also be able to set individual comments when venues and dates differ per track. Note: Please carefully check the suggested comments, I haven’t tested this one in great depth and there are probably many ways things can break. Also requires the batch recording comments script to be installed and enabled, of course.


Superb! :grin::+1:


I have been using this heaps!
I was wondering if it’s feasible to make a couple of improvements?

  1. Add a note in the edit note when this script loads something, with a link to this thread/the script. I want to let people know where they can go to make life easier + it helps troubleshoot if something comes up down the line (I wish all scripts did this x)

  2. Can urls be automatically run through Image Max URL and then the full image loaded? Then I can right click thumbnails to copy the URL, and plug it in directly!
    I currently open all the images in new tabs so that the max image URL script gives me the big URL, and then I plug that in. I end up with a lot of open tabs. I’m being greedy but this would be a dream if it was possible!