I have developed a Picard plugin for classical music which I hope may be of use to others. It provides tagging enhancements for artists/performers and, in particular, utilises MB's hierarchy of works to provide work/movement tags. All options are set through a user interface in Picard options->plugins.
I have done a fair bit of testing of it, but further testing is welcome. It currently resides at https://github.com/MetaTunes/picard-plugins/tree/master/plugins/classical_extras where there is an extensive Readme describing the functions and interface. Please feel free to download the zip file, install it in Picard and play with it.
Depending on feedback, and after any further debugging, I will issue a pull request for it to be included as an "official" plugin.
Note that there are one or two areas where I know it could be improved; in particular, it struggles if a track is a partial recording of multiple works with multiple parents (i.e a sort of classical medley - e.g. https://musicbrainz.org/release/f68b7378-ce97-4eaa-bf96-95b1651ab186). Otherwise, provided the release is properly entered in MB, it should work.
Note also that because multiple XML lookups are required (1 per work at 1 second each), it can be a bit slow for large releases and I suggest you only tag one release at a time.
Otherwise any feedback is welcome.