5 releases (1 stable)

1.0.0 Nov 18, 2022
0.9.0 Jun 27, 2022
0.8.0 May 22, 2022
0.7.1 May 4, 2022
0.7.0 Apr 17, 2022

#450 in Command line utilities

31 downloads per month

MPL-2.0 license


MQTT Vault logo

MQTT Vault

A JSON database controlled via MQTT.

What it Does

MQTT Vault allows you to create virtual IoT devices that retain their state. These virtual devices communicate over MQTT the same way that many physical IoT devices do, allowing you to control them with the same infrastructure.

For details on using the program, please see manpage.md or run man mqtt_vault after installing.



  • Get and set data via MQTT topics
  • Data is stored as individual JSON files
  • Folder structure corresponds to the topic used to set the data


  • Optionally encrypts the broker connection using an SSL certificate
  • Supports separate or combined public/private keys

Database encryption

  • Optionally encrypts the data stored on disk so it can't be accessed without going through MQTT Vault
  • Allows the encryption key to be changed or removed by passing --change-crypt-key
  • Data is encrypted using the chacha20poly1305 crate


~421K SLoC