I had a play around with copying tags and felt like there was a discrepancy (in MB 3.1.6381), so I did some more digging.
Looks like MB does not copy the POPM field in mp3s, as well as custom (binary...) GEOB frames from other programs (which might be beyond MB's purpose anyway...).
<class 'mutagen.id3.ID3'>
{u'GEOB:Serato Markers_': GEOB(encoding=<Encoding.LATIN1: 0>, mime=u'application/octet-stream', filename=u'', desc=u'Serato Markers_', data='\x02\x05\x00\x00\x00\x0e\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x00\x7f\x7f\x7f\x7f\x7f\x00\x00\x00\x00\x00\x00\
...(lots more binary data, too long for forum post)...
\x00\x00\x00\x03\x00\x07\x7f\x7f\x7f'),
'TPE1': TPE1(encoding=<Encoding.LATIN1: 0>, text=[u'M.I.A Vs ZOMBY']),
u'GEOB:Serato Overview': GEOB(encoding=<Encoding.LATIN1: 0>, mime=u'application/octet-stream', filename=u'', desc=u'Serato Overview', data='\x01\x05\x01\x01\x01\x01\x01++PPP%\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01*UUU++\
...(lots more binary data, too long for forum post)...
x01OOyOO*\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01*sOsON\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01OOsOs$\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01*yOyO*\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01OOsOs$\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01*sOsN*\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01OOyOU*\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01NsOsO*\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01NNsNs$\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01*UOyO+\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01+,P,,\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01+\x01\x01\x01\x01\x01\x01\x01'),
'TIT2': TIT2(encoding=<Encoding.LATIN1: 0>, text=[u"M.I.A. 'Bird flu' ZOMBY 'ESKI-FLU' REMIX 320-ORG"]),
u'GEOB:Serato Markers2': GEOB(encoding=<Encoding.LATIN1: 0>, mime=u'application/octet-stream', filename=u'', desc=u'Serato Markers2', data='\x01\x01AQFDT0xPUgAAAAAEAP///0JQTUxPQ0sAAAAAAQAA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\
...(lots more binary data, too long for forum post)...
x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'),
u'GEOB:Serato Autotags': GEOB(encoding=<Encoding.LATIN1: 0>, mime=u'application/octet-stream', filename=u'', desc=u'Serato Autotags', data='\x01\x01138.00\x003.525\x000.000\x00'),
u'TXXX:ENERGY': TXXX(encoding=<Encoding.LATIN1: 0>, desc=u'ENERGY', text=[u'7']),
u'POPM:MusicBee': POPM(email=u'MusicBee', rating=128, count=0),
'TBPM': TBPM(encoding=<Encoding.LATIN1: 0>, text=[u'138']),
u'GEOB:Serato BeatGrid': GEOB(encoding=<Encoding.LATIN1: 0>, mime=u'application/octet-stream', filename=u'', desc=u'Serato BeatGrid', data='\x01\x00\x00\x00\x00\x01=+!\x8eC\n\x00\x00+'),
'TSSE': TSSE(encoding=<Encoding.LATIN1: 0>, text=[u'Lame3.96']),
'TCON': TCON(encoding=<Encoding.LATIN1: 0>, text=[u'Grime', u'Eski', u'Bass Music', u'Yardie Bass']),
'TKEY': TKEY(encoding=<Encoding.LATIN1: 0>, text=[u'Bbm']),
u'GEOB:Serato Offsets_': GEOB(encoding=<Encoding.LATIN1: 0>, mime=u'application/octet-stream', filename=u'', desc=u'Serato Offsets_',
data="\x01\x02000000320000.000000\x00000000044100.000000\x00\x05'\x01\x00\x04m<\x08\x00\x00K9\x00\x00\x08\x14\x08\x14\x08\x15\x08\x15\x08\x15\x08\x15\
...(lots more binary data, too long for forum post)...
x03\x00\x01\x01\x01"),
u'GEOB:Serato Analysis': GEOB(encoding=<Encoding.LATIN1: 0>, mime=u'application/octet-stream', filename=u'', desc=u'Serato Analysis', data='\x02\x01')}
Copy of the same file as above, but stripped all tags from it, then copied back them back on in MB, so this is the result with a few bits missing:
<class 'mutagen.id3.ID3'>
{'TIT2': TIT2(encoding=<Encoding.LATIN1: 0>, text=[u"M.I.A. 'Bird flu' ZOMBY 'ESKI-FLU' REMIX 320-ORG"]),
u'TXXX:ENERGY': TXXX(encoding=<Encoding.LATIN1: 0>, desc=u'ENERGY', text=[u'7']),
'TPE1': TPE1(encoding=<Encoding.LATIN1: 0>, text=[u'M.I.A Vs ZOMBY']),
'TBPM': TBPM(encoding=<Encoding.LATIN1: 0>, text=[u'138']),
'TSSE': TSSE(encoding=<Encoding.LATIN1: 0>, text=[u'Lame3.96']),
'TCON': TCON(encoding=<Encoding.LATIN1: 0>, text=[u'Grime', u'Eski', u'Bass Music', u'Yardie Bass']),
'TKEY': TKEY(encoding=<Encoding.LATIN1: 0>, text=[u'Bbm'])}
Churs.
c.