How to Install Mattermost Plugins and Integrations

Mattermost has an ever-growing list of available plugins and integrations in the Plugin Marketplace to enhance your chat system as needed. For example, the Antivirus Mattermost plugin helps protect users from potentially malicious files. Below we cover how to:

Although not covered below, you can also install mmctl to manage Mattermost plugins via SSH.

Enable Installing Mattermost Plugins

There are two ways to enable the ability to install plugins: System Console or the configuration file.

Enable Plugins in System Console

  1. Log into Mattermost as a system admin
  2. In the upper-left corner, select your username, then System Console
  3. On the left, under Plugins, select Plugin Management
  4. For Enable Plugins, select true
  5. Save changes at the bottom
  6. (Optional) Set Require Plugin Signature to false to be able to upload plugins manually as well as install from the Plugin Marketplace
  7. Set Enable Marketplace to true to easily install plugins from the Plugin Marketplace
  8. Set Enable Remote Marketplace to true to update the marketplace with new plugins
  9. Ensure Marketplace URL states https://api.integrations.mattermost.com
  10. Save changes at the bottom

Configuration File

  1. Log into SSH as root
  2. Edit your Mattermost configuration file:
    nano +445 /opt/mattermost/config/config.json

    To search for your Mattermost configuration file:
    find / -name config.json | grep mattermost

  3. Beside EnableUploads, replace false with true:
    “EnableUploads”: true,
  4. On the System Console Plugin Management page, you should now be able to use the Upload Plugin feature

Manage your collaboration web applications securely with our Managed VPS Hosting plans.

Install Plugins

There are three ways to install Mattermost plugins: Plugin Marketplace, System Console, and Manually.

Plugin Marketplace

  1. Log into Mattermost as a system admin
  2. In the upper-left corner, select your username, then Plugin Marketplace
  3. Select Install beside a plugin
  4. Beside the installed plugin, select Configure to enable and modify the plugin in the System Console

System Console

  1. Download the compressed plugin file (tar.gz) from Integrations.Mattermost.com

    For plugins on Github pages, it may be easier to add “/releases” to the end of the Github URL to see available downloads. You’ll need to remove the “#” and following text at the end of the URL before adding “/releases”.

  2. Log into Mattermost as a system admin
  3. In the upper-left corner, select your username, then System Console
  4. On the left, select Plugin Management
  5. Beside Upload Plugin, select Choose File
  6. Select the compressed (tar.gz) plugin file from your computer
  7. Select Upload, then you should see a notice stating “Successfully uploaded plugin [plugin name]”
  8. Scroll down to Installed Plugins to enable, remove, or modify the plugin

Manual

  1. Download the plugin from Integrations.Mattermost.com
  2. Upload the compressed file to your server
  3. Extract the plugin to your plugins directory:
    tar -xvzf file-name.tar.gz -C /opt/mattermost/plugins

    To search for your plugins directory:
    find / -wholename *mattermost/plugins

  4. Log into Mattermost as a system admin
  5. In the upper-left corner, select your username, then System Console
  6. On the left, select Plugin Management
  7. Scroll down to Installed Plugins to enable, remove, or modify the plugin

Add Integrations

Integration management currently includes settings for webhooks, bot accounts, GIFs, and cross-origin requests (CORS).

  1. Log into Mattermost as a system admin
  2. In the upper-left corner, select your username, then Integrations
  3. Here you can develop and view installed Incoming Webhooks, Outgoing Webhooks, Slash Commands, and Bot Accounts.

Manage Integrations

Integration Management options
  1. Log into Mattermost as a system admin
  2. In the upper-left corner, select your username, then System Console
  3. On the left, select Integration Management
  4. Here you can enable or disable:
    Incoming webhooks
    Outgoing webhooks
    Custom slash commands
    OAuth 2.0 service provider
    Restrict managing integrations to admins
    Integrations to override usernames
    Integrations to override profile picture icons
    Personal access tokens
  5. Save changes

If you have any questions, let us know in our Community Support Center.

Was this article helpful? Let us know!