email protocol is atrocious. This leads to few options for clients and nearly no library to work with. I'd like to setup a box with a limit for unread mails and a API to publicly show the current number of unread mail. That would enable me to put a box out there for anyone to contact me and have a feedback about the likelihood of an answer. This is nearly impossible right now.
email protocol was created before spamming became a thing. There is no mechanism to deal with that. Everything is ad-hoc/workaround. Any modern messaging systens have either a way to ask permission to send messages first or some report/block system. We could also have a trust system to score nodes of the network.
In my eyes the features that make email successful are the decentralization, that it is not a product of a company, the wide client support and that can be used offline.