publish-mqtt-messagelisted
Install: claude install-skill Dumdart/TopicGate
# publish-mqtt-message
Publish a payload to an exact MQTT topic through a TopicGate broker. This is a
**control-mode** operation that sends data to external consumers and may operate
physical devices.
## MCP server not available
If the `topicgate` MCP server is not connected or `publish` cannot be found, stop and
tell the user:
> The TopicGate MCP server is not active or is running in read-only mode.
> Publishing requires control mode (`--mode control`).
> Install TopicGate, configure the server with `"args": ["--mode", "control"]`,
> and restart your MCP harness.
Do not attempt to call any other tool as a substitute.
## Tool
Call `publish`:
| Parameter | Required | Description |
|---|---|---|
| `broker_id` | yes | Broker UUID or unique case-insensitive profile name |
| `topic` | yes | Exact MQTT topic (not a wildcard filter) |
| `payload` | yes | The message content |
| `payload_encoding` | yes | Must be `utf-8` or `base64` — always set explicitly |
## Safety — ALWAYS follow these steps
1. **Confirm the broker** — verify the correct broker is active and connected.
2. **Confirm the topic** — the topic must be an exact publish topic, never a wildcard.
3. **Confirm the payload** — verify encoding, content, and intent with the user.
4. **Require explicit user intent** — never publish speculatively or as part of a
broader automation unless the user has explicitly approved the broker, topic,
encoding, and payload.
MQTT publishing may operate physical devices, trig