Mattermost MCP server
Mattermost in any MCP client, through Memtro: Mattermost does not publish this server. Memtro's Mattermost connector reads Mattermost through its API with the credentials you connect, and one endpoint hands those tools, every other system you connect and Memtro's memory tools to Claude Code, Cursor, Claude Desktop or anything else that speaks Streamable HTTP, as you.
What the model can do
Mattermost chat: your teams and channels, recent messages in a channel or thread with who said them, search across a team, and people by username or email; when you ask, can post, edit or delete a message in your name, send a direct message, react, pin, set a reminder, and create, rename or archive a channel and add or remove its members.
Reads
mattermost_teamsWho the Mattermost connection is signed in as, and the teams that person belongs to (name, URL name, id).mattermost_channelsChannels in a Mattermost team: by default the ones the connected user belongs to (public, private, direct and group)…mattermost_postsRecent messages in one Mattermost channel, newest first, with who wrote each (username and name), when, replies, reactions…mattermost_threadA whole Mattermost thread from any post in it: the root message and every reply in order, with authors, times and reactions.mattermost_searchSearch messages across a Mattermost team with Mattermost's own syntax: plain words (all must match), "a quoted phrase", from:username…mattermost_userLook up Mattermost people: one person by username, email or id, or search by a few letters of a name or username (query).
Acts, when you ask
These change something in Mattermost. The model is told to use them only when you ask for exactly that, and each one is granted by name: per team on a shared connection, by the owner on a personal one.
mattermost_post_messagePosts a message to a Mattermost channel, or a reply in a thread, as the connected user.mattermost_send_direct_messageSends a direct message to one Mattermost user as the connected user.mattermost_edit_postReplaces the text of a Mattermost post.mattermost_delete_postDeletes a Mattermost post for everyone in the channel; deleting a thread's root post removes its replies too.mattermost_add_reactionAdds an emoji reaction to a Mattermost post as the connected user; the author and the channel see it.mattermost_remove_reactionRemoves the connected user's own emoji reaction from a Mattermost post (never anybody else's).mattermost_pin_postPins a Mattermost post to its channel, or unpins it with unpin=true; everyone in the channel sees the change.mattermost_set_post_reminderSets a reminder for the connected user about a Mattermost post; at that time Mattermost's system bot messages only that user.mattermost_create_channelCreates a Mattermost channel in a team, public (anyone in the team can find and join it) or private (only people added).mattermost_update_channelRenames a Mattermost channel or changes its purpose or header; members see the change and a system message in the channel.mattermost_archive_channelArchives a Mattermost channel: nobody can post in it any more and it leaves members' sidebars.mattermost_add_channel_membersAdds people to a Mattermost channel; each is notified and can read the channel's history.mattermost_remove_channel_memberRemoves one person from a Mattermost channel; they lose access to it (a private channel's history too) until added again.
Connect it
First connect Mattermost on Dashboard → Connections, then add Memtro to your client once. The Mattermost tools appear alongside the tools of everything else you have connected; nothing is configured per connector.
Claude Code
The Memtro plugin registers the server and a skill for when to use it; the tools are then available in every session.
claude plugin marketplace add memtro-org/claude-memtro
claude plugin install memtro@memtro --config api_key=sk-memtro-...Cursor
Add the server to .cursor/mcp.json in the project, or to the global file under ~/.cursor/.
{
"mcpServers": {
"memtro": {
"url": "https://platform.memtro.com/api/mcp",
"headers": {
"Authorization": "Bearer sk-memtro-..."
}
}
}
}Claude Desktop
Create a personal API key on Dashboard → Profile → API keys. In Claude Desktop add an MCP server of type HTTP with URL https://platform.memtro.com/api/mcp and the header Authorization: Bearer sk-memtro-…
OpenCode
A remote server in opencode.json.
{
"mcp": {
"memtro": {
"type": "remote",
"url": "https://platform.memtro.com/api/mcp",
"headers": {
"Authorization": "Bearer sk-memtro-..."
}
}
}
}Pi
One command: pi mcp add memtro --url https://platform.memtro.com/api/mcp --bearer-token-env-var MEMTRO_API_KEY. Tools arrive as mcp__memtro__*. The pi-memtro extension registers it for you, alongside Memtro as the model.
Any other client
Add an MCP server of type HTTP (Streamable HTTP, stateless) at https://platform.memtro.com/api/mcp with the header Authorization: Bearer sk-memtro-.... Codex, Zed, Windsurf, Cline and the SDKs all take a remote server this way.
Who may use it
The key identifies the person, and the server offers that person the tools they may use everywhere else in Memtro. A shared Mattermost connection is used by the teams an administrator granted it to, tool by tool, on the Permissions page; a personal connection is used by its owner alone, and its tools that act stay off until the owner allows them. See Teams and permissions and Connectors.
Ask it like this
- › What was said in #incidents yesterday?
- › Summarise the thread where Priya asked about the launch date
- › Search the Engineering team for 'rate limit' from @tom since 1 October
- › Post in #announcements that the office is closed on Friday
- › Create a private channel called acme-renewal and add @jsmith and @lwong
Questions
- Is this an official Mattermost MCP server?
- No. It is Memtro's MCP server with Memtro's Mattermost connector behind it: the connector reads Mattermost through its API with the credentials you connect on Dashboard → Connections, and Mattermost publishes nothing here. The same endpoint carries every other system you connect and Memtro's memory tools.
- What does it cost?
- Nothing on top of Memtro. One price per organisation by its number of users, from $50 a month for up to 10 users after a 7-day free trial, with every connector, the MCP server, jobs and memory included. You bring your own model keys.
- Can it change anything in Mattermost?
- Only when you ask, and only what it has been granted: post a message to a channel, or a reply in a thread, as the connected user; edit the text of one of the user's posts; delete a post (removed for everyone, with its thread when it is a root post); send a direct message to one person as the connected user; add or remove the user's emoji reaction on a post; pin or unpin a post in its channel; set a reminder about a post for the connected user; create a public or private channel in a team; rename a channel or change its purpose or header; archive a channel; add people to a channel, or remove one person from it. Every other tool reads, searches or lists. An administrator grants each acting tool by name per team, and a personal connection acts only after its owner allows it.
- Which clients work?
- Any MCP client that speaks Streamable HTTP: Claude Code, Cursor, Claude Desktop, OpenCode, Codex, Zed, Windsurf, Cline and the Anthropic and OpenAI SDKs. There is no local process to run; the server is remote and authenticated with your key.