Need help with mosquitto?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

5.6K Stars 1.7K Forks Other 2.8K Commits 474 Opened issues


Eclipse Mosquitto - An open source MQTT broker

Services available


Need anything else?

Contributors list

Eclipse Mosquitto

Mosquitto is an open source implementation of a server for version 5.0, 3.1.1, and 3.1 of the MQTT protocol. It also includes a C and C++ client library, and the

utilities for publishing and subscribing.


See the following links for more information on MQTT:

Mosquitto project information is available at the following locations:

There is also a public test server available at


See for details on installing binaries for various platforms.

Quick start

If you have installed a binary package the broker should have been started automatically. If not, it can be started with a basic configuration:


Then use

to subscribe to a topic:
mosquitto_sub -t 'test/topic' -v

And to publish a message:

mosquitto_pub -t 'test/topic' -m 'hello world'


Documentation for the broker, clients and client library API can be found in the man pages, which are available online at There are also pages with an introduction to the features of MQTT, the

utility for dealing with username/passwords, and a description of the configuration file options available for the broker.

Detailed client library API documentation can be found at

Building from source

To build from source the recommended route for end users is to download the archive from

On Windows and Mac, use

to build. On other platforms, just run
to build. For Windows, see also

If you are building from the git repository then the documentation will not already be built. Use

make binary
to skip building the man pages, or install
on Debian/Ubuntu systems.

Build Dependencies

  • c-ares (libc-ares-dev on Debian based systems) - only when compiled with
    make WITH_SRV=yes
  • cJSON - for client JSON output support. Disable with
    make WITH_CJSON=no
    Auto detected with CMake.
  • libwebsockets (libwebsockets-dev) - enable with
    make WITH_WEBSOCKETS=yes
  • openssl (libssl-dev on Debian based systems) - disable with
    make WITH_TLS=no
  • pthreads - for client library thread support. This is required to support the
    functions. If compiled without pthread support, the library isn't guaranteed to be thread safe.
  • uthash / utlist - bundled versions of these headers are provided, disable their use with
  • xsltproc (xsltproc and docbook-xsl on Debian based systems) - only needed when building from git sources - disable with
    make WITH_DOCS=no

Equivalent options for enabling/disabling features are available when using the CMake build.


Mosquitto was written by Roger Light [email protected]

Master: Travis Build Status (master) Develop: Travis Build Status (develop) Fixes: Travis Build Status (fixes)

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.