MQTT client
Connect to an MQTT broker over WebSockets, subscribe with wildcards, watch messages as a live log and topic tree, and publish text, JSON, or binary — for testing IoT devices and Home Assistant setups.
Added · updated 28 October 2026
Works with
- Meshtastic packet decoder Radio and RFadds its Meshtastic broker and topic here for a raw view of the messages
How to use it
Browsers cannot open raw TCP connections, so the broker must accept MQTT over WebSockets,
usually at a wss:// URL such as wss://broker.example.com:8084/mqtt (Mosquitto, EMQX,
HiveMQ, and Home Assistant’s Mosquitto add-on can all do this). Plain ws:// URLs only work
to localhost, because the page is served over HTTPS. The suggestions include three public
test brokers (EMQX, Mosquitto, and HiveMQ). Anyone can read what you publish there, so never
send secrets to them.
Connecting
Set the URL, client ID (randomised by default), keep-alive, MQTT version (3.1.1 or 5), clean session, and an optional last-will message. A username and password are used for the connection only and are never saved. The client library (mqtt.js) loads from cdn.jsdelivr.net the first time you connect, and your browser then talks directly to the broker.
Subscribing and the log
Add subscriptions with + (one level) and # (all remaining levels) wildcards and a QoS;
each appears as a chip you can remove. Messages appear in a log with time, topic, QoS,
retain flag, and size, shown as text, pretty-printed JSON, or hex. Filter the log by text or
by a wildcard pattern, pause it, clear it, or export it as JSON. The Topic tree view shows
every topic seen, with the latest value and a message count for each.
Publishing
Enter a topic and a payload as text, JSON (validated first), or hex bytes. Choose the QoS and the retain flag, then press Publish or Cmd/Ctrl + Enter. Save common messages as snippets. To clear a retained message, publish an empty payload with retain set.
Sharing
Share link copies a URL that opens this tool with your current settings — every value it remembers between visits, packed into ?s=. Opening a link replaces your saved settings for this tool. You can also write a short link by hand with topic (the publish topic), for example /tools/mqtt/?topic=home/sensors/temp. The username and password are never included; the broker URL, subscriptions, and publish settings are.
Feedback is a gift. Something to improve, a feature to add, or a bug? Tell me.
Runs entirely in your browser — network requests go only to the services named on this page.