Possible? - scripting using a regular programming language

After reviewing the tag source specification, I immediately realize that things can get simpler if a script written in an everyday language can be used.

The script's functionality would be as simple as taking a list of filenames as input and returning a dict[filename, dict[tag_name, values]]. Such script can theoretically function standalone, but mp3tag can be used as a GUI on top.

While languages like Python or .NET are massive, there exist smaller instances like Lua that does not cost much than a couple of MBs to embed, or Powershell that comes with the computer.

I see the benefit of the current solution in the following:

  • no extra program package is required that is beyond the controle of MP3tag
  • dedicated set of functions to get information from web sources
  • interface to save that information directly in the tags
  • ... and probably a lot more.

So I am not really convinced that things would be

It would be "simpler" if the Mp3tag interface, which displays the results, could be combined with an established scripting language like the ones mentioned above (like PowerShell which is installed on every modern Windows OS or any other program language) which could process the downloaded JSON/XML output or parse a website and return the processed result in the form suggested by @cleoold for Mp3tag.

The process should ideally be something like:
a) Mp3tag first calls the source with the URL and search parameters and passes the downloaded result to an external scripting language.
b) The external scripting language will do whatever is necessary to return a valid result for the INDEX part. This part will be displayed in the album result overview of Mp3tag.
c) After the user has manually selected the matching album, Mp3tag again calls the source for the selected specific album and passes the result to an external scripting language.
d) The external scripting language does again whatever is necessary to return a valid result for the ALBUM part. These metadata parts are displayed in the details panel of Mp3tag, where the user can choose which fields to fill in, whether to save a cover, whether the tracks are arranged correctly and so on.

The big advantage would be that anyone could write a script in their own - more familiar - programming language and Mp3tag would still have full control over the metadata.