Skip to main content


Project description

mmtools - i3 status bar and notification script for Mattermost

mmtools are various tools using the mattermost API.


sudo pip3 install mmtools

This will install mmtols from pypi, including the following required packages:

  • caep
  • pydantic
  • mattermostdriver
  • passpy
  • notify2
  • dbus-python
  • requests

For dbus-python to build, you need to have the libdbus-1-dev package installed. On debian you can do

sudo apt install libdbus-1-dev


The following tools are included:


mmstatus connects to the mattermost API to get unread messages in all channels. It then outputs a statusbar (usable in i3blocks) of unread messages and exits. Supports private/public/user channels and different coloring on group chats and user chats.

Example configuration for i3blocks:



mmpolybar same as mmstatus, but with polybar colors.

Example configuration for polybar:

type = custom/script
exec = mmpolybar
tail = true


mmwaybar same as mmstatus, but with output for waybar.

Example configuration for waybar:

"custom/mattermost": {
    "exec": " mmwaybar",
    "return-type": "json",
    "interval": 90


mmwatch connects to the mattermost websocket API and can display notification on messages and send SIGUSR2 to i3blocks to update statusbar before next interval.


All tools can be configured using both command line arguments and a configuration file.

mmtools will first look for a configuration in ~/.config/mmtools/config-<HOSTNAME> with fallback to ~/.config/mmtools/config.

Use the following command to create the configuration ~/.config/mmtools/config. The same configuration file is used for both tools.

mmconfig init

In this file you must specify at least:

# Mattermost server
server = <SERVER>

# Mattermost user
user = <USERNAME>

# either password

# OR pass entry (
password-pass-entry = <PASS ENTRY>

User service for mmwatch

mmwatch can be started as a systemd user service by creating the following file:


with this content:

Description=mm watch



# time to sleep before restarting a service


Enable at login

systemctl --user enable mmwatch

Start manually

systemctl --user start mmwatch

Local development

For local development, execute:

pip3 install -e .

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release. See tutorial on generating distribution archives.

Built Distribution

mmtools-0.0.38-py3-none-any.whl (11.8 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page