Mattermost is great, but it's not decentralised, it doesn't federate, it's not end-to-end encrypted, it's not based on an open standard, it's vendor-locked to Mattermost, only has one usable client implementation, and is rather aggressively open core (unlike the BundesMessenger distribution which is entirely apache-licensed FOSS). I'm also not sure that whether deployments easily scale up to million+ users like a big Matrix deployment can.
It's worth noting that if Mattermost adopted Matrix, like Rocket.Chat has[1][2], the vast majority of these limitations would fall away :)