Koskamo

mm-mcp MCP

An independent MCP server for Mattermost that allows AI agents to read channels, threads, unread posts, mentions, and files, as well as search posts, files, people, and channels. When write permissions are explicitly allowed, it can post, reply, edit, react, pin, propose posts, join, leave, and create channels, and set user status. It uses Mattermost's own Go client and supports personal access tokens, bot tokens, or login via single sign-on.

Package and access

Local package with source-attributed installation metadata. Koskamo does not execute packages during review.

mm-mcp MCP logo, by vriesdemichaelCommunity listingLocal stdioSource reviewed; not executedPublished by vriesdemichael
Vendor documentation

What you can do with it

  • Read channels, threads, and unread posts
  • Search posts, files, people, and channels
  • Post, reply, edit, and react to messages
  • Join, leave, and create channels

Source and maintenance

Community listingRegistry 0.4.1Apache-2.0
Last repository push
Latest release
v0.4.1
Maintenance checked

Packages and installation

Source-provided package data. Koskamo has not executed or live-probed this package.

https://github.com/vriesdemichael/mm-mcp/releases/download/v0.4.1/mm-mcp_0.4.1_linux_amd64.mcpb 0.4.1

mcpbSHA-256 supplied
https://github.com/vriesdemichael/mm-mcp/releases/download/v0.4.1/mm-mcp_0.4.1_linux_amd64.mcpb package definition
{
  "version": "0.4.1",
  "transport": "stdio",
  "fileSha256": "7d2ef9c66c8783af3fd51e2b9bf4605e3710375e66f53a036e3a6f296c5b6b7a",
  "identifier": "https://github.com/vriesdemichael/mm-mcp/releases/download/v0.4.1/mm-mcp_0.4.1_linux_amd64.mcpb",
  "registryType": "mcpb",
  "environmentVariables": [
    {
      "name": "MM_MCP_ALLOW_WRITES",
      "format": "boolean",
      "default": "false",
      "description": "Offer the tools that post and change things. Your client's own approval of each call decides, and mm-mcp checks what each change others see states before it acts."
    },
    {
      "name": "MM_MCP_CA_FILE",
      "format": "filepath",
      "description": "A PEM file of certificate authorities to trust beside your system's, for a Mattermost whose certificate your organisation signed itself. Leave it empty otherwise."
    },
    {
      "name": "MM_MCP_DOWNLOAD_DIR",
      "format": "filepath",
      "description": "Where save_file writes attachments. Leave it empty for your Downloads directory."
    },
    {
      "name": "MM_MCP_ELICITATION_OPT_IN",
      "format": "boolean",
      "default": "false",
      "description": "Your client's own approval of each call decides whether a post or another change others see goes ahead, and mm-mcp checks what each states. Turn this on to have mm-mcp ask you too, through a question your client shows: a convenience where it shows it, not a safeguard, since some clients answer it themselves."
    },
    {
      "name": "MM_MCP_FORCE_HUMAN_IN_THE_LOOP_IN_CLAUDE_CODE",
      "format": "boolean",
      "default": "false",
      "description": "Not with mm-mcp asks as well: marks each tool that changes what others see so that Claude Code asks a person on every call, whatever its permission mode or rules allow. An agent cannot post on its own while it is on."
    },
    {
      "name": "MM_MCP_MARK_AI_GENERATED",
      "format": "boolean",
      "default": "true",
      "description": "Mark every post and edit the model writes with Mattermost's own marker for text written with AI."
    },
    {
      "name": "MM_MCP_POST_FROM_VIEWS",
      "format": "boolean",
      "default": "true",
      "description": "Where your app shows mm-mcp's views, a post the model proposes as your draft can be posted from the view with Post. Off, the draft waits in Mattermost for you to send."
    },
    {
      "name": "MM_MCP_RESOURCE_MAX_MB",
      "format": "number",
      "default": "10",
      "description": "The most one message carrying an attached file as an MCP resource holds, a binary file counted as its base64. MCP sends a resource whole, and a client drops a message past its own limit, 10 MB for clients built on the TypeScript SDK. A larger one is refused, and read_file or save_file reads it instead. 0 is no limit."
    },
    {
      "name": "MM_TOKEN",
      "format": "string",
      "description": "A personal access token or a bot token. Where those are switched off, leave it empty after logging in once with mm-mcp login --url <address> in a terminal, which keeps your session in the system's credential store."
    },
    {
      "name": "MM_URL",
      "format": "string",
      "isRequired": true,
      "description": "The address you open Mattermost at, such as https://chat.example.com."
    }
  ]
}

Tools

Reported by the attributed source; not independently observed by Koskamo.

No tool definitions available.

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · repository · passed · metadata changed · updated
  • · backfill · recorded · Pre-expansion baseline; unobserved rich metadata remains unknown

Let your agent find its tools

Find servers like mm-mcp MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.