I would use beets for this. My personal workflow is (ripping with morituri if it’s a CD, which will put MBIDs into the files from the get-go, then) tagging with Picard and then storing the files with beets and let beets handle any further updating of the files.