Mattermost MCP 서버
Claude와 다른 MCP 클라이언트가 Mattermost 작업 공간과 상호 작용할 수 있도록 하는 Mattermost API용 MCP 서버입니다.
특징
이 MCP 서버는 다음을 포함하여 Mattermost와 상호 작용하기 위한 도구를 제공합니다.
주제 모니터링
서버에는 다음을 수행할 수 있는 주제 모니터링 시스템이 포함되어 있습니다.
- 관심 있는 주제가 포함된 메시지에 대해 지정된 채널을 모니터링합니다.
- 구성 가능한 일정에 따라 실행(cron 구문 사용)
- 관련 주제가 논의되면 알림을 보냅니다.
- 주제가 발견되면 지정된 채널에서 언급합니다.
채널 도구
mattermost_list_channels
: 작업 공간의 공개 채널을 나열합니다.mattermost_get_channel_history
: 채널의 최근 메시지 가져오기
메시지 도구
mattermost_post_message
: 채널에 새 메시지를 게시합니다.mattermost_reply_to_thread
: 특정 메시지 스레드에 답장mattermost_add_reaction
: 메시지에 이모티콘 반응을 추가합니다.mattermost_get_thread_replies
: 스레드의 모든 답변을 가져옵니다.
모니터링 도구
mattermost_run_monitoring
: 주제 모니터링 프로세스를 즉시 트리거합니다.
사용자 도구
mattermost_get_users
: 작업 공간에 있는 사용자 목록을 가져옵니다.mattermost_get_user_profile
: 사용자의 자세한 프로필 정보를 가져옵니다.
설정
- 이 저장소를 복제하세요:
지엑스피1
- 종속성 설치:
- 서버를 구성하세요:저장소에는 플레이스홀더 값이 포함된
config.json
파일이 있습니다. 실제 설정을 위해 실제 자격 증명을 사용하여config.local.json
파일(gitignored)을 생성하세요.이 접근 방식을 사용하면 다른 사람을 위한 템플릿을 유지하면서 실제 자격 ���명을 저장소에 보관할 수 있습니다. - 서버를 빌드하세요:
- 서버를 실행합니다:
주제 모니터링 구성
모니터링 시스템은 다음 옵션으로 구성할 수 있습니다.
enabled
(부울): 모니터링이 활성화되었는지 여부schedule
(문자열): 새 메시지를 확인할 시기를 나타내는 Cron 표현식(예: 15분마다 "*/15 * * * *")channels
(문자열[]): 모니터링할 채널 이름 배열topics
(string[]): 메시지에서 찾을 주제 배열messageLimit
(숫자): 검사당 분석할 최근 메시지 수notificationChannelId
(문자열, 선택 사항): 알림이 전송될 채널 ID입니다. 지정하지 않으면 시스템에서 자동으로 DM 채널을 사용합니다.userId
(문자열, 선택 사항): 알림에서 언급되는 사용자 ID입니다. 값을 지정하지 않으면 시스템에서 현재 사용자를 자동으로 감지합니다.
모니터링을 활성화하려면 config.local.json
파일에서 enabled
true
로 설정합니다.
수동으로 모니터링 실행
여러 가지 방법으로 모니터링 프로세스를 수동으로 트리거할 수 있습니다.
- 제공된 스크립트 사용 :
./run-monitoring-http.sh
- 서버를 다시 시작하지 않고 HTTP를 통해 모니터링을 트리거합니다(권장)./run-monitoring.sh
- 모니터링이 활성화된 새 서버 인스턴스를 시작합니다../trigger-monitoring.sh
- 모니터링 프로세스를 실행하고 종료합니다(cron 작업에 유용함)../view-channel-messages.js <channel-name> [count]
- 채널의 마지막 메시지를 봅니다../analyze-channel.js <channel-name> [count]
- 채널의 메시지 통계 분석./get-last-message.js <channel-name>
- 채널의 마지막 메시지를 가져옵니다.
- 명령줄 인터페이스(CLI) 사용 :
- 서버가 실행되는 동안 터미널에 다음 명령 중 하나를 입력하기만 하면 됩니다.
run
- 모니터링 프로세스 실행monitor
-run
과 동일check
-run
과 동일
- 사용 가능한 다른 명령:
help
- 사용 가능한 명령 표시exit
- 서버를 종료합니다
- 서버가 실행되는 동안 터미널에 다음 명령 중 하나를 입력하기만 하면 됩니다.
- MCP 도구 사용하기 :
- MCP 인터페이스를 통해
mattermost_run_monitoring
도구를 사용하세요 - 이렇게 하면 관심 있는 주제에 대해 구성된 모든 채널이 즉시 확인됩니다.
- MCP 인터페이스를 통해
- 명령줄 플래그 사용 :
--run-monitoring
플래그로 서버를 시작합니다: GXP6- 이렇게 하면 서버가 시작되자마자 모니터링 프로세스가 실행됩니다.
- 모니터링 프로세스가 완료된 후 종료하려면
--exit-after-monitoring
추가하세요: GXP7 - 이는 cron 작업에서 모니터링 프로세스를 실행하는 데 유용합니다.
도구 세부 정보
채널 도구
mattermost_list_channels
- 작업 공간에 공개 채널 나열
- 선택 입력 사항:
limit
(숫자, 기본값: 100, 최대: 200): 반환할 최대 채널 수page
(번호, 기본값: 0): 페이지 번호
- 반환: ID와 정보가 포함된 채널 목록
mattermost_get_channel_history
- 채널에서 최근 메시지 가져오기
- 필수 입력 사항:
channel_id
(문자열): 채널의 ID
- 선택 입력 사항:
limit
(숫자, 기본값: 30): 검색할 메시지 수page
(번호, 기본값: 0): 페이지 번호
- 반환: 콘텐츠 및 메타데이터가 포함된 메시지 목록
메시지 도구
mattermost_post_message
- Mattermost 채널에 새 메시지를 게시하세요
- 필수 입력 사항:
channel_id
(문자열): 게시할 채널의 IDmessage
(문자열): 게시할 메시지 텍스트
- 반환 : 메시지 게시 확인 및 ID
mattermost_reply_to_thread
- 특정 메시지 스레드에 답장하기
- 필수 입력 사항:
channel_id
(문자열): 스레드가 포함된 채널post_id
(문자열): 부모 메시지의 IDmessage
(문자열): 답장 텍스트
- 반환 : 답변 확인 및 ID
mattermost_add_reaction
- 메시지에 이모티콘 반응 추가
- 필수 입력 사항:
channel_id
(문자열): 메시지가 포함된 채널post_id
(문자열): 반응할 메시지 IDemoji_name
(문자열): 콜론이 없는 이모티콘 이름
- 반환: 반응 확인
mattermost_get_thread_replies
- 메시지 스레드의 모든 답변 가져오기
- 필수 입력 사항:
channel_id
(문자열): 스레드가 포함된 채널post_id
(문자열): 부모 메시지의 ID
- 반환: 콘텐츠 및 메타데이터가 포함된 답변 목록
사용자 도구
mattermost_get_users
- 기본 프로필 정보가 포함된 작업 공간 사용자 목록 가져오기
- 선택 입력 사항:
limit
(숫자, 기본값: 100, 최대: 200): 반환할 수 있는 최대 사용자 수page
(번호, 기본값: 0): 페이지 번호
- 반환: 기본 프로필이 있는 사용자 목록
mattermost_get_user_profile
- 특정 사용자에 대한 자세한 프로필 정보를 얻으세요
- 필수 입력 사항:
user_id
(문자열): 사용자의 ID
- 반환: 자세한 사용자 프로필 정보
Claude Desktop과 함께 사용
claude_desktop_config.json
에 다음을 추가하세요.
문제 해결
권한 오류가 발생하면 다음 사항을 확인하세요.
- 귀하의 개인 액세스 토큰에는 필요한 권한이 있습니다.
- 토큰이 구성에 올바르게 복사되었습니다.
- Mattermost URL과 팀 ID가 정확합니다.
HTTP 엔드포인트
서버는 원격 제어를 위해 HTTP 엔드포인트를 노출합니다.
- 실행 모니터링 :
http://localhost:3456/run-monitoring
- 모니터링 프로세스를 즉시 시작합니다.
- 성공/오류 정보가 포함된 JSON 응답을 반환합니다.
- 상태 확인 :
http://localhost:3456/status
- 서버 및 모니터링 상태에 대한 정보를 반환합니다.
- 건강 검진에 유용
다음 엔드포인트는 curl이나 모든 HTTP 클라이언트와 함께 사용할 수 있습니다.
유틸리티 스크립트
실행 모니터링-http.sh
이 스크립트는 HTTP 엔드포인트를 통해 모니터링 프로세스를 트리거합니다.
모니터링을 수동으로 트리거하는 데 권장되는 방법은 다음과 같습니다.
- 서버를 다시 시작하지 않습니다
- 예정된 모니터링을 방해하지 않습니다.
- 모든 터미널에서 안정적으로 작동합니다.
view-channel-messages.js
이 스크립트를 사용하면 모든 채널의 최신 메시지를 볼 수 있습니다.
스크립트는 다음을 표시합니다.
- 채널 정보(이름, 목적, 총 메시지 수)
- 타임스탬프와 사용자 이름이 포함된 최신 메시지
- 채널이 존재하지 않으면 사용 가능한 모든 채널이 나열됩니다.
분석-채널.js
이 스크립트는 채널의 메시지에 대한 자세한 통계를 제공합니다.
스크립트는 다음을 표시합니다.
- 채널 정보 및 메타데이터
- 총 메시지 수(시스템 메시지 포함)
- 사용자 메시지와 시스템 메시지의 분석
- 사용자별 메시지 수
- 채널의 가장 최근 메시지
get-last-message.js
이 스크립트는 채널에서 가장 최근의 메시지만 검색합니다.
스크립트는 다음을 표시합니다.
- 발신자의 사용자 ID 및 사용자 이름
- 메시지의 타임스탬프
- 전체 메시지 내용
특허
이 MCP 서버는 MIT 라이선스에 따라 라이선스가 부여되었습니다.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Claude와 다른 MCP 클라이언트가 Mattermost 작업 공간과 상호 작용할 수 있도록 하는 MCP 서버로, 채널 관리, 메시징 기능, 주제 모니터링 기능을 제공합니다.
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server that enables saving and sharing Claude Desktop conversations, allowing users to store chats privately or make them public through a web interface.Last updated -26TypeScriptMIT License
- -securityFlicense-qualityAn MCP server that enables Claude Desktop to interact with Sanity.io content, providing tools to create, edit, list documents and get schema templates.Last updated -TypeScript
- AsecurityAlicenseAqualityAn MCP server that enables Claude to interact with Twitter, allowing for posting tweets and searching Twitter content.Last updated -2108195TypeScriptMIT License
- -securityFlicense-qualityAn MCP server that connects to the Resource Hub, allowing centralized configuration and management of tools and resources across different MCP environments.Last updated -2JavaScript