It's not necessarily the software at fault, though ...
MCUs are ideal MQTT clients because the protocol is lightweight and designed for low-bandwidth, low-RAM environments.