One thing that is not as I would expect it to work:
When one of these three providers has the lyrics for a song, sometimes MusicBee will still say 'No Lyrics Found'
I will need to click 'Search Next Provider' several times before the lyrics show up.
That's probably because (as Frankz mentioned) MB sees the plugin as one provider, but it would be nice if MB would handle this a little bit smarter.
Once I got totally frustrated trying to figure out why MusixMatch isn't working (HELP!) I spent some time thinking about this and am pretty sure it would never work. I'm also pretty sure MB doesn't interact with the plugin as everyone (including me) always assumed.
Say you have sources:
Built-in source 1
Plug-in source 1
Built-in source 2
Built-in source 3
Plug-in source 2
So you search for lyrics and it searches built-in 1. You don't like the lyrics. You do next source, which sends the search to the plug-in, which then searches ALL of your selected plug-in sources in order, displaying the lyrics of the first one that responds. You don't like those, and search next source. It searches built-in 2. You don't like those either. You search next source.
Now I'd never thought about it in depth and just assumed it would search plug-in source 2. But now that I have thought about it and looked in the log, it doesn't make any sense and I don't see how it would. Neither MB nor the plug-in have a memory of what lyrics you rejected the first time. If it even searches the plug-in again, which I'm not even clear that it does, it would just return the same set of lyrics as it did the first time in the same order. Nothing exists to exclude the ones that you rejected.
I think the order of the plug-in sources is mostly irrelevant in the grand scheme of plug-in/built-in interaction. If a plug-in source is first, it will search all the active ones at once. If a plug-in source is second or later, it will search the active built-in sources in order and continue down the line until it hits a plug-in source and then search all the active ones at once.
I say "mostly irrelevant" because the plug-in does seem to search and return results in the order you've set, but all at once. It doesn't dip in and out among built-in sources.
In other words, I believe
Built-in source 1
Plug-in source 1
Built-in source 2
Built-in source 3
Plug-in source 2
will give identical results to
Built-in source 1
Plug-in source 1
Plug-in source 2
Built-in source 2
Built-in source 3
I don't see how it would work any other way.