npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

mcp-mattermost

v1.2.1

Published

KR: Mattermost 사용자, 팀, 채널, 게시글 관리와 조회를 MCP 도구로 제공하는 서버. EN: MCP server for Mattermost user, team, channel, and post management over stdio and Streamable HTTP.

Readme

Mattermost MCP Server

KR: Mattermost REST API를 MCP(Model Context Protocol) 도구로 제공하는 서버입니다. 사용자, 팀, 채널, 게시글에 대한 목록 조회, 단건 조회, 생성, 수정, 삭제, 멤버 관리 작업을 MCP 클라이언트에서 실행할 수 있습니다.
EN: This server exposes Mattermost REST APIs as MCP (Model Context Protocol) tools. It lets MCP clients perform list, get, create, update, delete, and membership operations for users, teams, channels, and posts.

KR: Claude Desktop, Cursor, 기타 MCP 호환 클라이언트에서 Mattermost 운영 작업을 자연어 기반 워크플로우로 연결할 수 있도록 설계되었습니다.
EN: It is designed for Claude Desktop, Cursor, and other MCP-compatible clients so Mattermost administration can be connected to natural-language workflows.

1) Encoding / 인코딩

  • KR: 이 문서는 UTF-8 기준으로 작성되었습니다.
  • EN: This document is written in UTF-8.

2) Why This Package? / 패키지 목적

  • KR: Mattermost 관리 작업을 표준화된 MCP 도구 호출로 연결합니다.
  • EN: It standardizes Mattermost administrative operations as MCP tool calls.
  • KR: 사용자, 팀, 채널, 게시글 작업을 에이전트 워크플로우로 자동화할 수 있습니다.
  • EN: It enables agent-driven automation for users, teams, channels, and posts.
  • KR: stdio와 Streamable HTTP 전송 방식을 모두 지원합니다.
  • EN: It supports both stdio and Streamable HTTP transports.

3) Environment Variables / 환경 변수

MATTERMOST_URL=https://your-mattermost.example.com
MATTERMOST_TOKEN=your-personal-access-token
PORT=3000
TRANSPORT=stdio
  • KR: MATTERMOST_URL/api/v4가 없어도 자동 보정됩니다.
  • EN: MATTERMOST_URL is automatically normalized even if /api/v4 is omitted.
  • KR: MATTERMOST_TOKEN은 Mattermost Personal Access Token 값을 사용합니다.
  • EN: MATTERMOST_TOKEN should be a Mattermost Personal Access Token.

4) Run / 실행

npm install
npm run build
npm start
  • KR: Streamable HTTP 모드
  • EN: Streamable HTTP mode
npm run start:http

5) MCP Server Configuration / MCP 서버 설정

npx Configuration / npx 설정

{
  "mcpServers": {
    "mattermost": {
      "command": "npx",
      "args": ["-y", "mcp-mattermost"],
      "env": {
        "MATTERMOST_URL": "https://your-mattermost.example.com",
        "MATTERMOST_TOKEN": "YOUR_TOKEN",
        "TRANSPORT": "stdio"
      }
    }
  }
}

Streamable HTTP Configuration / Streamable HTTP 설정

{
  "mcpServers": {
    "mattermost": {
      "type": "streamable-http",
      "url": "http://<server-ip>:3000/mcp"
    }
  }
}
  • KR: 기존 SSE 엔드포인트 대신 /mcp 단일 엔드포인트를 사용합니다.
  • EN: It uses a single /mcp endpoint instead of the legacy SSE endpoints.

6) Tool Naming Convention / 툴 명명 규칙

  • KR: 목록 조회 툴은 모두 mattermost_list_* 형식을 사용합니다.
  • EN: All list-style tools use the mattermost_list_* naming convention.
  • KR: 단건 조회 툴은 mattermost_get_* 형식을 사용합니다.
  • EN: Single-resource lookup tools use the mattermost_get_* naming convention.
  • KR: 생성/수정/삭제/멤버 작업은 동사형 이름을 유지합니다.
  • EN: Create, update, delete, and membership tools keep verb-based names.

7) Tool Categories / 도구 분류

A. User Tools / 사용자 도구

  • mattermost_list_users KR: 사용자 목록 조회 (page, per_page, in_team, in_channel)
    EN: List users with pagination and optional team/channel filters.
  • mattermost_get_user KR: 사용자 단건 조회 (user_id 또는 username)
    EN: Get one user by user_id or username.
  • mattermost_create_user KR: 사용자 생성
    EN: Create a user.
  • mattermost_update_user KR: 사용자 정보 수정
    EN: Update user profile fields.
  • mattermost_deactivate_user KR: 사용자 비활성화
    EN: Deactivate a user.

B. Team Tools / 팀 도구

  • mattermost_list_teams KR: 팀 목록 조회
    EN: List teams.
  • mattermost_get_team KR: 팀 단건 조회 (team_id 또는 name)
    EN: Get one team by ID or name.
  • mattermost_create_team KR: 팀 생성
    EN: Create a team.
  • mattermost_update_team KR: 팀 정보 수정
    EN: Update team metadata.
  • mattermost_delete_team KR: 팀 삭제(soft delete)
    EN: Soft-delete a team.
  • mattermost_add_user_to_team KR: 팀에 사용자 추가
    EN: Add a user to a team.
  • mattermost_remove_user_from_team KR: 팀에서 사용자 제거
    EN: Remove a user from a team.

C. Channel Tools / 채널 도구

  • mattermost_list_channels KR: 특정 팀의 채널 목록 조회
    EN: List channels in a team.
  • mattermost_get_channel KR: 채널 단건 조회 (channel_id 또는 team_id + name)
    EN: Get a channel by ID or by team/name.
  • mattermost_create_channel KR: 채널 생성
    EN: Create a channel.
  • mattermost_update_channel KR: 채널 정보 수정
    EN: Update channel metadata.
  • mattermost_delete_channel KR: 채널 삭제 또는 아카이브
    EN: Delete or archive a channel.
  • mattermost_add_user_to_channel KR: 채널에 사용자 추가
    EN: Add a user to a channel.
  • mattermost_remove_user_from_channel KR: 채널에서 사용자 제거
    EN: Remove a user from a channel.

D. Post Tools / 게시글 도구

  • mattermost_list_posts KR: 채널 게시글 목록 조회 (page, per_page, since_relative)
    EN: List posts from a channel using pagination or relative-time filtering.
  • mattermost_get_thread KR: 스레드 단건 조회
    EN: Get a thread by root post ID.
  • mattermost_create_post KR: 게시글 또는 답글 생성
    EN: Create a post or thread reply.
  • mattermost_update_post KR: 게시글 수정
    EN: Update a post.
  • mattermost_delete_post KR: 게시글 삭제
    EN: Delete a post.

8) Validation Rules / 검증 규칙

  • KR: page, per_page 같은 페이징 값은 정수여야 합니다.
  • EN: Pagination fields such as page and per_page must be integers.
  • KR: 문자열 필수 인자는 런타임 검증을 통과해야 합니다.
  • EN: Required string arguments are validated at runtime.
  • KR: since_relative10m, 2h, 1d 형식만 허용합니다.
  • EN: since_relative only accepts formats such as 10m, 2h, and 1d.

9) Security / 보안

  • KR: 현재 npm audit 기준 취약점은 0건입니다.
  • EN: The package currently reports 0 vulnerabilities in npm audit.
  • KR: Dockerfile에서는 빌드 중 강제 npm audit fix --force를 수행하지 않도록 정리했습니다.
  • EN: The Dockerfile avoids forced npm audit fix --force during image builds.

10) Development / 개발

npm install
npm run build
npm run smoke

�ű� ���: Mattermost Message Analyzer

�� ������Ʈ�� ���� �߰������� Mattermost�� �޽����� �м��ϰ� �ð�ȭ�ϴ� ��ɰ� SSE(Server-Sent Events)�� �����մϴ�. (ä�� ��ȸ ����� ���� list_channels ������� �����˴ϴ�)

SSE Ʈ������Ʈ ����

n8n, Claude, Copilot �� �پ��� ��Ƽ �÷��� ������ ���� SSE(/sse, /message) ��� ����� �Ϻ��ϰ� �����մϴ�.

�ű� Tool: analyze_channel_messages

Ư�� ä���� �޽����� ������ �ð� ����(minute, hour, day)�� �м��մϴ�. ���������� ������
ode-canvas\ ��� ������ ���� �޽��� �� ��Ʈ(Line Chart)�� �̹���(Base64)�� ��� �������Ͽ� Ŭ���̾�Ʈ���� ��ȯ�մϴ�.

  • �Է� �Ķ����:
    • \channelId\ (�ʼ�): �м��� ä�� ID
    • \interval\ (�ʼ�): minute, hour, day �� �ϳ�
    • \sinceDays\ (����): ��ĥ ������ �м����� ���� (�⺻�� 1)