Slack

by korotovsky
Verified
MIT License
18
  • Apple
  • Linux

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Mentioned as an option for exposing the MCP server to the internet with TLS encryption for the SSE transport method.

  • Allows interaction with Slack Workspaces, providing tools to retrieve channel histories and list available channels without requiring admin permissions or bot approvals.

슬랙 MCP 서버

Slack Workspace용 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 통합은 Stdio 및 SSE 전송, 프록시 설정을 모두 지원하며 Workspace 관리자가 권한을 부여하거나 봇을 생성하거나 승인할 필요가 없습니다. 😏

기능 데모

도구

  1. conversationsHistory
  • 채널ID로 채널에서 메시지 가져오기
  • 필수 입력 사항:
    • channel_id (문자열): Cxxxxxxxxxx 형식의 채널 ID
    • limit (숫자, 기본값: 28): 가져올 메시지의 제한
  • 반환: 타임스탬프, 사용자 ID 및 텍스트 콘텐츠가 포함된 메시지 목록
  1. channelsList
  • 채널 목록 가져오기
  • 필수 입력 사항:
    • channelTypes (배열): 가능한 채널 유형입니다. 허용된 값: 'mpim', 'im', 'public_channel', 'private_channel'.
    • sort (문자열): 정렬 유형입니다. 허용되는 값: 'popularity' - 각 채널의 회원/참가자 수를 기준으로 정렬합니다.
  • 반환: 채널 목록

설정 가이드

1. 인증 설정

브라우저에서 Slack을 열고 로그인하세요.

SLACK_MCP_XOXC_TOKEN 조회

  • 브라우저의 개발자 콘솔을 엽니다.
  • Firefox의 경우 메뉴 막대의 Tools -> Browser Tools -> Web Developer tools
  • Chrome에서 URL 표시줄 오른쪽에 있는 "세 개의 점" 버튼을 클릭한 다음 More Tools -> Developer Tools 선택합니다.
  • 콘솔 탭으로 전환합니다.
  • "붙여넣기 허용"을 입력하고 ENTER를 누릅니다.
  • 다음 스니펫을 붙여넣고 ENTER 키를 눌러 실행합니다. JSON.parse(localStorage.localConfig_v2).teams[document.location.pathname.match(/^\/client\/([A-Z0-9]+)/)[1]].token

토큰 값은 실행된 명령 바로 뒤에 인쇄됩니다( xoxc- 로 시작). 지금은 어딘가에 저장해 두세요.

SLACK_MCP_XOXD_TOKEN 조회

  • "응용 프로그램" 탭으로 전환하고 왼쪽 탐색 창에서 "쿠키"를 선택하세요.
  • 이름이 d 인 쿠키를 찾으세요. 맞아요, d 라는 글자만 있네요.
  • 이 쿠키의 값을 두 번 클릭합니다.
  • Ctrl+C 또는 Cmd+C를 눌러 값을 클립보드에 복사합니다.
  • 나중에 보려고 저장해 두세요.

2. 설치

다음 설치 방법 중 하나를 선택하세요.

2.1. 도커

모든 환경 변수에 대한 자세한 내용은 환경 변수를 참조하세요.

지엑스피1

2.2. 도커 컴포즈

wget -O docker-compose.yml https://github.com/korotovsky/slack-mcp-server/releases/latest/download/docker-compose.yml wget -O .env https://github.com/korotovsky/slack-mcp-server/releases/latest/download/.env.dist nano .env # Edit .env file with your tokens from step 1 of the setup guide docker-compose up -d

2.2.1 TLS 및 인터넷 노출

SSE에 HTTPS를 설정해야 하는 데에는 여러 가지 이유가 있습니다.

  • mcp-remote https 체계만 처리할 수 있습니다.
  • 일반적으로 인터넷에 노출된 모든 서비스에는 TLS를 사용하는 것이 좋습니다.

ngrok 사용할 수 있습니다:

ngrok http 3001

그런 다음 mcp-remote 인수에 대해 엔드포인트 https://903d-xxx-xxxx-xxxx-10b4.ngrok-free.app 사용합니다.

3. 구성 및 사용

명령줄 인수와 환경 변수를 사용하여 MCP 서버를 구성할 수 있습니다.

claude_desktop_config.json 에 다음을 추가하세요.

stdio 전송을 사용한 옵션 1:

{ "mcpServers": { "slack": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "SLACK_MCP_XOXC_TOKEN=$SLACK_MCP_XOXC_TOKEN", "-e", "SLACK_MCP_XOXD_TOKEN=$SLACK_MCP_XOXD_TOKEN", "ghcr.io/korotovsky/slack-mcp-server", "mcp-server", "--transport", "stdio" ], "env": { "SLACK_MCP_XOXC_TOKEN": "xoxc-...", "SLACK_MCP_XOXD_TOKEN": "xoxd-..." } } } }

sse 운송을 포함한 옵션 2:

2.2의 단계를 완료하고 docker compose up -d 실행하여 MCP 서버를 시작하거나 원하는 방법을 사용한 다음 구성합니다.

{ "mcpServers": { "slack": { "command": "npx", "args": [ "-y", "mcp-remote", "https://x.y.z.q:3001/sse", "--header", "Authorization: Bearer ${SLACK_MCP_SSE_API_KEY}" ], "env": { "SLACK_MCP_SSE_API_KEY": "my-$$e-$ecret" } } } }

Windows에서 sse 전송을 사용하는 옵션 3:

2.2의 단계를 완료하고 docker compose up -d 실행하여 MCP 서버를 시작하거나 원하는 방법을 사용한 다음 구성합니다.

{ "mcpServers": { "slack": { "command": "C:\\Progra~1\\nodejs\\npx.cmd", "args": [ "-y", "mcp-remote", "https://x.y.z.q:3001/sse", "--header", "Authorization: Bearer ${SLACK_MCP_SSE_API_KEY}" ], "env": { "SLACK_MCP_SSE_API_KEY": "my-$$e-$ecret" } } } }

콘솔 인수

논쟁필수의 ?설명
--transport 또는 -tMCP 서버에 대한 전송을 선택합니다. 가능한 값은 stdio , sse 입니다.

환경 변수

변하기 쉬운필수의 ?기본설명
SLACK_MCP_XOXC_TOKENnilPOST 데이터 필드 세트( xoxc-... )의 인증 데이터 토큰 필드 token
SLACK_MCP_XOXD_TOKENnil쿠키 d 의 인증 데이터 토큰( xoxd-... )
SLACK_MCP_SERVER_PORT아니요3001MCP 서버가 수신할 포트
SLACK_MCP_SERVER_HOST아니요127.0.0.1MCP 서버가 수신할 호스트
SLACK_MCP_SSE_API_KEY아니요niltransportsse 때 권한 부여 베어러 토큰
SLACK_MCP_PROXY아니요nilMCP 서버가 사용할 프록시 URL
SLACK_MCP_SERVER_CA아니요nil신뢰 저장소의 CA 인증서 경로
SLACK_MCP_SERVER_CA_INSECURE아니요false모든 안전하지 않은 요청을 신뢰하세요(권장하지 않음)

디버깅 도구

# Run the inspector with stdio transport npx @modelcontextprotocol/inspector go run mcp/mcp-server.go --transport stdio # View logs tail -n 20 -f ~/Library/Logs/Claude/mcp*.log

보안

  • API 토큰을 공유하지 마세요
  • .env 파일을 안전하고 비공개로 유지하세요

특허

MIT 라이선스에 따라 배포됩니다. 라이선스 파일을 참조하세요. 이 제품은 Slack 공식 제품이 아닙니다.

-
security - not tested
A
license - permissive license
-
quality - not tested

Slack Workspace를 위한 가장 강력한 MCP 서버입니다. 이 통합은 Stdio 및 SSE 전송, 프록시 설정을 모두 지원하며 Workspace 관리자가 권한을 부여하거나 봇을 생성하거나 승인할 필요가 없습니다. 😏

  1. Feature Demo
    1. Tools
      1. Setup Guide
        1. 1. Authentication Setup
        2. 2. Installation
        3. 3. Configuration and Usage
        4. Debugging Tools
      2. Security
        1. License
          ID: uy6bsglezr