This is actually an ever-going question on MusicBrainz. I’m also an editor there and mainly use Picard for tagging.
There is the release’s (album’s) language and script, which denotes the language and script the titles are written in on the cover/booklet.
Then there is the language field per track that denotes the language sung in the song (i.e., lyrics), an ISO-639-3 terminological 3-letter code (i.e., “deu” for German). These codes have been extended by the four special codes [mis], [mul], [und], [zxx] to be used for uncoded language, multiple languages, undetermined and instrumental.
The latter are usually coded in the work, and (sadly) often not available in MusicBrainz. These would go into the “item” (i.e., track) in beets and could be multivalue fields (i.e. separate tags multiple times in Ogg Vorbis comments and ID3v2.4, or separated by the selected separation character(s) in ID3v2.3 (i.e. “deu; eng”, “deu/eng”, “deu,eng”, “deu(NUL)eng”, etc. for a song that contains both German and English lyrics—using “mul” is sometimes not wanted).
If they aren’t available (yet) in MusicBrainz, I usually tag these manually when tagging a new album, because I sometimes need search functionality like “1990s songs sung in Swedish from a female-fronted Swedish hard rock group”.
So yes, it’d be great if beets would support the (lyrics) language(s) per track!
I advise not to blindly overwrite existing language tags from the MusicBrainz data—this could easily destroy collections like mine (almost 150,000 tracks, about 80-85% language-tagged, where MusicBrainz would only deliver about 10-15% of the language tags).