MusicBrainz Magic Tagger Button user script

MusicBrainz Magic Tagger Button is a browser user script that aims to simplify the handling of the green tagger button Open in tagger that is shown on MusicBrainz sites to load a release or recording into Picard.

  • If you load a MusicBrainz release or recording page in your browser while Picard is running, it will automatically activate the tagger integration and enable the green tagger buttons
  • If you click a green tagger button, it will change the button’s icon to indicate whether the release or recording could be sent to Picard or whether there was an error .

This came out of the discussion at Bring me a green tagger button!

This is a user script that you install in your browser using a user script manager such as Greasemonkey, Violentmonkey or Tampermonkey. Please see the Github page for details on how to use this:

Please note:

  • You should use Picard 2.6 Beta 2 or later. For earlier versions of Picard this will not work in most browsers (except for Firefox)
  • You should use a current version of a reasonable modern browser. This has been tested on latest versions of Firefox, Google Chrome, Microsoft Edge, Opera and Vivaldi using Greasemonkey, Violentmonkey and Tampermonkey. Other browsers might not be supported
  • In particular Apple Safari is not supported UPDATE: See below for Safari support
  • It is recommended that you use the default configuration for the browser integration in Picard. That means the “Default listening port” in Options > Advanced > Network > Browser integration should be set to 8000. At the very minimum it must be set to a value between 8000 and 8010.
8 Likes

Incredible!
Love the icon changes and the button popping up if you’re running Picard. Well above and beyond!

Icon always comes up as ‘error’ even when successfully sent to Picard, btw:
Picard 2.5.6 (port 8000), Chrome 89.0.4389.82, Windows 10 19041.804

1 Like

Yes, as I wrote above you need the Picard 2.6 beta release for this to work properly.

2 Likes

Thanks, I thought I had grabbed the latest beta!! Derp :nerd_face:

1 Like

I have updated the script to fix some issues with import scripts. Basically the Magic Tagger Button script triggered a reload of the add release page, breaking import script such as the Discogs importer.

This has been fixed, the Magic Tagger Button now is excluded from the add release pages.

3 Likes

The script got a few more updates recently, current version is 0.5.11. Changes:

  • Collection and series pages are supported
  • Tagger port detection now works much better on Windows. Previously if Picard was not listening on the port each request to probe the port took 2 seconds. That meant if Picard was not running it took the script 20 seconds to figure that out. Now the requests time out much faster, making this plugin more convenient to use.
2 Likes

Finally a bit more magic: As of version 0.6 the tagger buttons get now automatically hidden if Picard is not be found running.

For me this is now mostly a seamless experience. The buttons are just there when I need them :slight_smile:

3 Likes

It will be a very strange day when I do a reinstall and wonder where all the tagger buttons went. Any chance of having this integrated into MB proper? Or are there still outliers which mean it’s not possible?

1 Like

I’m personally not sure whether we want this to be integrated into the MB main site. At least not by default. Maybe for logged in users who have explicitly enabled this option.

In order to figure out if Picard is listening locally the script makes a call to local addresses for ports between 8000 and 8010. So it does issue one HTTP request each for http://127.0.0.1:8000 up to http://127.0.0.1:8010 . And if it does not find Picard running it does this on every page on MB that potentially can contain a tagger button.

On most people’s computers nothing is running there. But for whatever reason one might have a local web server running on one of those ports, and having this getting hit constantly while browsing musicbrainz.org is not really nice. In the worst case this might even have unwanted side effects. This is best a functionality the user knowingly enables.

It also does not run on every browser. For example there is currently no way to have this work on Safari. Of course the website could just fall back to the current behavior there.

However, integrating this properly into MB server would have some advantages. Especially the server could be changed in a way that allows enabling the tagger button without the page reload that is currently necessary. It would also allow for example for the user to configure the port range to check, which would reduce the impact of the port scan issue.

2 Likes

An update for users of Safari on macOS: With the latest version 0.7 you can get the Magic Tagger Button also in Safari, if you use the latest 4.x beta of the Userscripts extension.

The Userscripts 4.x beta is currently only available after registration (see the link above), but it looks like the final release will be out soon. It will be only available for macOS 11.0 or later, though.

UPDATE: Userscripts version 4 for Safari is now available