Free public test server
Public Relay Server
A free, open Relay instance you can point a client at right now — no sign-up, no API key, no credit card. Use it to try MQTT, MQTT-SN and CoAP over six different transports.
Before you connect, read this
- This server is open to everyone and requires no authentication. Anyone can subscribe to any topic, including yours.
- Never publish private, personal or production data here. Treat everything you send as public.
- There is no SLA and no durability guarantee. The server can be reset, upgraded or taken down at any time, and retained messages may disappear with it.
- Capacity is shared with every other person testing. Do not use it for load testing or benchmarking — run your own instance for that.
Endpoints
Every listener below is live on relay.stantialabs.net. Ports, transports and connection limits are taken straight from the running configuration.
| Protocol | Transport | Port | Address | Encryption | Max connections |
|---|---|---|---|---|---|
| MQTT v3.1.1 / v5.0 | TCP | 1883 | mqtt://relay.stantialabs.net:1883 | None — plaintext | 500,000 |
| MQTT v3.1.1 / v5.0 | TLS 1.3 | 8883 | mqtts://relay.stantialabs.net:8883 | TLS 1.3 | 500,000 |
| MQTT v3.1.1 / v5.0 | WebSocket | 8083 | ws://relay.stantialabs.net:8083 | None — plaintext | 100,000 |
| MQTT v3.1.1 / v5.0 | WSS | 8084 | wss://relay.stantialabs.net:8084 | TLS 1.3 | 200,000 |
| MQTT v3.1.1 / v5.0 | QUIC | 14567 | mqtt-quic://relay.stantialabs.net:14567 | TLS 1.3 over QUIC | 500,000 |
| MQTT-SN | UDP | 1884 | udp://relay.stantialabs.net:1884 | None — plaintext | 10,000 |
| MQTT-SN | DTLS 1.3 | 8884 | dtls://relay.stantialabs.net:8884 | DTLS 1.3 | 10,000 |
| CoAP | UDP | 5683 | coap://relay.stantialabs.net:5683 | None — plaintext | 10,000 |
| CoAP | DTLS 1.3 | 5684 | coaps://relay.stantialabs.net:5684 | DTLS 1.3 — payloads not yet encrypted | 10,000 |
The TLS, WSS, QUIC and DTLS listeners present a Let’s Encrypt certificate, so your system CA bundle is enough to verify it — no custom trust store needed. If your WebSocket client asks for an explicit path, try /mqtt.
Limits and behaviour
The settings a client will actually notice, as configured on this server.
| Authentication | Anonymous — no username or password |
| Maximum packet size | 1 MiB (1,048,576 bytes) |
| Maximum in-flight messages | 32 |
| Handshake timeout | 5 s plaintext · 10 s encrypted |
| Read / send timeout | 60 s / 30 s |
| QUIC idle timeout | 120 s |
| Mutual TLS | Disabled — client certificates are not requested |
Connect in a minute
Copy any of these and change the topic. Everything targets the public server as configured above.
mosquitto (TCP)
# Subscribe
mosquitto_sub -h relay.stantialabs.net -p 1883 \
-t 'relay/demo/#' -q 1 -v
# Publish
mosquitto_pub -h relay.stantialabs.net -p 1883 \
-t 'relay/demo/hello' -q 1 \
-m 'hello from mosquitto'mosquitto (TLS 1.3)
# The server certificate is issued by Let's Encrypt,
# so your system CA bundle is enough.
mosquitto_sub -h relay.stantialabs.net -p 8883 \
--capath /etc/ssl/certs \
-t 'relay/demo/#' -q 1 -vMQTT.js (WSS)
import mqtt from 'mqtt';
const client = mqtt.connect('wss://relay.stantialabs.net:8084/mqtt');
client.on('connect', () => {
client.subscribe('relay/demo/#', { qos: 1 });
client.publish('relay/demo/hello', 'hello from the browser');
});
client.on('message', (topic, payload) => {
console.log(topic, payload.toString());
});paho-mqtt (Python)
import paho.mqtt.client as mqtt
client = mqtt.Client(protocol=mqtt.MQTTv5)
client.tls_set() # system CA bundle
client.connect('relay.stantialabs.net', 8883)
client.subscribe('relay/demo/#', qos=1)
client.publish('relay/demo/hello', 'hello from python', qos=1)
client.loop_forever()CoAP (libcoap)
# GET over plain UDP
coap-client -m get coap://relay.stantialabs.net:5683/relay/demo
# POST a payload
coap-client -m post -e 'hello from coap' \
coap://relay.stantialabs.net:5683/relay/demoMQTT-SN (UDP)
# Using the Eclipse Paho MQTT-SN client
paho_mqttsn_sub -h relay.stantialabs.net -p 1884 \
-t 'relay/demo/#'
paho_mqttsn_pub -h relay.stantialabs.net -p 1884 \
-t 'relay/demo/hello' \
-m 'hello from mqtt-sn'Not enabled on this server
Relay implements these too, but their listeners are switched off on the public instance. The ports below are the defaults you would use on your own deployment.
| Protocol | Transport | Default port |
|---|---|---|
| STOMP | TCP / TLS | 61613 / 61614 |
| AMQP | TCP / TLS | 5672 / 5671 |
| NATS | TCP | 4222 |
| gRPC | TCP / TLS | 9090 / 9091 |
| MCP | WSS | 3200 |
| HTTP/3 | QUIC | 443 |
| WebRTC DataChannel | QUIC | 9444 |
Relay also implements Modbus, OPC UA, DDS/RTPS, SNMP, DNS, A2A, ACP and Agent Mesh, which have no listener configured here. See the full protocol matrix →
Ready for your own instance?
Run the same server in your own cloud on the Free plan — same protocols, same transports, your data, your network.