mqtt-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MQTT_MCP_DB | No | Path to SQLite database | ~/.local/share/mqtt-mcp/history.db |
| MQTT_MCP_HOST | No | Broker host | localhost |
| MQTT_MCP_PORT | No | Broker port | 1883 |
| MQTT_MCP_TOPICS | No | Comma-separated subscription filters | # |
| MQTT_MCP_PASSWORD | No | Optional password for broker authentication | |
| MQTT_MCP_USERNAME | No | Optional username for broker authentication | |
| MQTT_MCP_MAX_DB_MB | No | Hard cap on DB size in MB, triggers oldest-first deletion | 2048 |
| MQTT_MCP_ALLOW_PUBLISH | No | Enable write mode | false |
| MQTT_MCP_BLOCKED_TOPICS | No | Never published to, even in write mode | |
| MQTT_MCP_RETENTION_TAGE | No | Delete messages older than this many days | 30 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_topicsB | Topic-Inventar: welche Topics gibt es, wie viele Nachrichten, wann zuletzt. pattern: Glob wie 'tele/*' oder '*SENSOR'. seit_stunden schraenkt auf den juengeren Zeitraum ein. |
| get_lastA | Letzter bekannter Wert eines Topics — sofort, ohne auf die naechste Nachricht zu warten. Genau das, was fertige MQTT-MCP-Server nicht koennen: bei einem schlafenden Batteriesensor (Shelly H&T) kaeme die naechste Nachricht erst in Stunden. |
| get_historyB | Verlauf eines Topics mit Zeitstempeln — die Kernfunktion dieses Servers. mit_startschwall=False blendet den retained-Altbestand aus, der direkt nach dem Verbinden ankommt und einen irrefuehrend frischen Zeitstempel traegt. |
| get_treeC | Topic-Baum ab einem Praefix — der Ueberblick wie im MQTT Explorer. |
| find_silentA | Topics, die seit X Stunden NICHT mehr gemeldet haben. Die Frage vom 2026-08-01: 'seit wann meldet dieser Stecker nichts mehr?' (sonoff-4854 war seit dem 02.06. still — ein defekter Zwischenstecker). |
| get_gapsB | Zeitraeume, in denen der Sammler NICHT mit dem Broker verbunden war. Trennt 'Geraet ist still' von 'ich habe nicht zugehoert'. Ohne diese Auskunft sehen beide Faelle in den Daten identisch aus. |
| statusA | Zustand des Servers: Verbindung, Datenbestand, Schreibmodus. |
| publishA | Nachricht senden. Nur bei aktivem Schreibmodus und nicht auf gesperrte Topics. ⚠️ Die Sperrliste ist eine Bremse gegen Fehlgriffe, keine Sicherheitsgrenze. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |