This Mattermost Model Context Protocol (MCP) server connects to Mattermost API endpoints to retrieve and process data, making it available via multiple transport modes. You can:
Fetch messages from specified or default Mattermost channels
Search messages within channels using customizable queries
Set maximum limits on the number of messages fetched per channel
Use multiple transport modes including stdio, SSE, and HTTP-stream
Establish secure connections via token-based authentication
Connects to Mattermost API endpoints to retrieve and process team and channel information, enabling real-time message monitoring and interaction with specific channels within Mattermost teams.
mcp-server-mattermost
This project implements a Model Context Protocol (MCP) server for Mattermost integration. It connects to Mattermost API endpoints to retrieve and process various information, making it available through standard MCP transports.
Features
Secure, token-based connection to Mattermost API endpoints
Supports multiple transport modes:
stdiohttp-streamsse
Search for messages across multiple Mattermost channels
Customizable default channels and message fetch limits
Related MCP server: MCP Boilerplate
Requirements
Node.js >= 22
npm >= 10
Setup
Clone this repository:
Install dependencies:
Set up your environment variables:
Required Environment Variables
MATTERMOST_ENDPOINT: Your Mattermost server URLMATTERMOST_TOKEN: Your Mattermost authentication tokenMATTERMOST_TEAM: The name of the team to monitorMATTERMOST_CHANNELS: Comma-separated list of channel names to monitor
Environment Variable Setup Options
Option 1: Direct Environment Variables
Option 2: Using .env file (with dotenvx)
Build the server:
Usage
The server supports three transport modes: stdio (default), sse, and http-stream.
Standard I/O Transport Mode
SSE Transport Mode
HTTP Transport Mode
Claude Desktop Integration
To use this MCP server with Claude Desktop, add the following configuration to your Claude Desktop settings:
Sample Configuration
Development
npm run dev: Start the server in development mode with hot reloadnpm run lint: Run ESLintnpm run format: Format code using Prettiernpm test: Run testsnpm run inspect: Run MCP inspector
References
License
MIT