I suppose it depends on what you mean by server and client, I only use the web interface, so my client is the server? :)
Fediverse is built on ActivityPub protocol, which allows people to send content around as they wish without limits on exactly what sort of content it is.
So it's really up to different programs like Mastodon, Pleroma, and whatever else to work out what to send around and how to render it to the screen.
Third party clients do add yet another layer to that, though.