Slack MCP Server 템플릿
경로: Console → Agent Ops → Tool Management → + 도구 생성 → Quick Setup 에서 Slack 선택Slack MCP Server — channels, messages, threads, reactions, users (6 tools)
Slack 워크스페이스의 채널·메시지·스레드·리액션·사용자 관리를 MCP 도구로 제공합니다. 템플릿 기반으로 등록하면 자격 증명만 입력 하면 바로 사용 가능합니다.
사전 주입 값 (Basic Information)
Slack 선택 시 아래 값이 자동으로 채워집니다. 그대로 저장하면 됩니다.| 필드 | 값 |
|---|---|
| Name | slack |
| Transport | Standard I/O (stdio) |
| 설명 | Slack MCP Server — channels, messages, threads, reactions, users (6 tools) |
| Access | 기본 Private (운영 상황에 맞춰 Public 으로 변경 가능) |
Run Settings
| 항목 | 값 |
|---|---|
| Command | npx |
| Args | -y, @modelcontextprotocol/server-slack |
| Add Argument | 필요 시 추가 인자 (--debug 등) |
환경 변수 (Environment Variables)
템플릿 기본 제공 (User Input · 필수)
Slack 템플릿이 사전 정의해둔 두 개의 User Input 변수 — 사용자가 직접 입력 해야 합니다.| 변수 | 타입 | 설명 | 예시 |
|---|---|---|---|
| SLACK_BOT_TOKEN | User Input | Slack Bot User OAuth Token (xoxb-...) | xoxb-1234567890-... |
| SLACK_TEAM_ID | User Input | Slack Workspace/Team ID (T...) | T01234ABCDE |
추가 환경변수 (이 화면에서 직접 설정 가능)
사전 정의된 필드 아래Add Environment Variable 버튼으로 변수를 추가할 수 있습니다. 각 변수는 두 가지 타입 중 선택:
| 타입 | 이 화면에서 값 입력? | 용도 |
|---|---|---|
| User Input | ✓ 직접 입력 | 사용자 단위 설정 (개별 워크스페이스별 토큰 등) |
| System Default | ✗ 입력 불가 — This value is fixed and automatically used at runtime | 운영자가 Environment 에 미리 세팅한 값이 런타임에 자동 주입 |
| 변수 | 타입 권장 | 설명 |
|---|---|---|
SLACK_CHANNEL_IDS | User Input | 접근 허용 채널 ID 목록 (쉼표 구분, 예: C01ABC,C02DEF) |
SLACK_APP_TOKEN | User Input | Socket Mode 용 App Token (xapp-…) — 실시간 리스너에 별도 사용 |
SLACK_DEFAULT_CHANNEL | User Input 또는 System Default | 기본 전송 채널 (예: #seahorse-bot) |
HTTP_PROXY / HTTPS_PROXY | System Default | 사내 프록시 경유가 필요한 경우 운영자가 전역 설정 |
User Input vs System Default 선택 기준
- User Input — 도구마다 다른 값을 써야 하는 경우 (테넌트별·워크스페이스별 토큰)
- System Default — 테넌트 전체에 공통인 설정 (프록시·공통 게이트웨이 등) — 개별 사용자가 변경 못 하게 막고 싶을 때
외부 참고 문서
Slack 측 설정(App 생성·Scope·이벤트 구독) 은 Slack 공식 문서가 정확·최신입니다. 본 템플릿을 쓰기 전에 아래 문서를 먼저 확인하세요.| 주제 | 링크 |
|---|---|
| Slack API 홈 | api.slack.com |
| Your Apps (App 생성·관리) | api.slack.com/apps |
| OAuth Scopes 레퍼런스 | api.slack.com/scopes |
| Events API (멘션 등) | api.slack.com/apis/events-api |
| Socket Mode (실시간 리스너) | api.slack.com/apis/socket-mode |
| Rate Limits | api.slack.com/docs/rate-limits |
| Bot vs User Token 차이 | api.slack.com/concepts/token-types |
| Slack MCP 서버 소스 | github.com/modelcontextprotocol/servers — slack |
본 Seahorse 템플릿은 공식
@modelcontextprotocol/server-slack 을 사용합니다. 노출 도구·인자 스펙이 업스트림 변경에 따라 달라질 수 있으니, 문제가 생기면 위 MCP 서버 저장소의 README·Changelog 를 먼저 확인하세요.전체 연동 절차 (처음 사용자 기준)
Slack App Dashboard 구조가 처음엔 헷갈릴 수 있어, 실제 진행 순서대로 단계별로 정리합니다. 각 단계마다 화면에 무엇이 보이고 / 무엇을 하면 되는지 를 함께 제공합니다.1단계 — Slack App 생성 신청
링크: api.slack.com/apps → Create New App → From scratch입력:
- App Name: 사용자에게 보일 봇 이름 (예:
seahorse-bot) - Pick a workspace: 연동할 워크스페이스 선택
Create App 클릭 → Basic Information 페이지로 이동.신청 즉시 앱이 생성되고 토큰은 아직 없는 상태입니다.
2단계 — Basic Information 화면에서 뜨는 정보 확인
생성 직후 보이는 페이지에 App Credentials 섹션이 있습니다 (App ID · Client ID · Client Secret · Signing Secret · Verification Token).
할 일: 좌측 사이드바의 Features → OAuth & Permissions 로 이동.
| 화면에 보이는 값 | 용도 | Seahorse 에 쓰나 |
|---|---|---|
| App ID | 앱 식별자 | ✗ |
| Client ID / Client Secret | OAuth 2.0 로그인 대행 | ✗ |
| Signing Secret | 웹훅 요청 검증 | △ Socket Mode 구성 시만 |
| Verification Token | deprecated — 사용 금지 | ✗ |
3단계 — OAuth & Permissions 에서 Scope 추가
화면에 보이는 것:
- 상단 Token Rotation 안내 — 무시 (Redirect URL·Token Rotation 모두 기본 연동에 불필요)
- OAuth Tokens 섹션에
OAuth Tokens will be automatically generated when you finish installing your app to your workspace.안내 (토큰은 아직 없음) - 하단 범위 → 봇 토큰 범위 에 Scope 가 비어 있는 상태
| Scope | 용도 | 필요성 |
|---|---|---|
chat:write | 봇이 메시지 전송 | 필수 |
channels:read | 공개 채널 목록 조회 | 필수 |
channels:history | 공개 채널 메시지 읽기 | 필수 (RAG·문서 Q&A 용) |
users:read | 사용자 프로필 조회 | 권장 |
reactions:read · reactions:write | 리액션 | 선택 |
files:write | 봇이 파일 첨부·업로드 | 선택 |
groups:read · groups:history | 비공개 채널 접근 시 | 선택 |
im:history · im:write | DM 에서 사용 시 | 선택 |
User Token Scopes 는 비워두세요. Seahorse 표준 Q&A · 알림 봇은 Bot Token Scopes 만으로 동작합니다. 사용자 행세가 필요한 특수 케이스에만 추가.
4단계 — Install to Workspace (토큰 발급 트리거)
Scope 를 1 개 이상 추가한 뒤, 페이지 상단 OAuth Tokens 섹션의 버튼이 활성화됩니다:
- 본인이 워크스페이스 관리자 면: Install to Workspace 버튼
- 관리자 아님: Request to Workspace Install 버튼 → 클릭 시 관리자에게 요청 발송 → 관리자가 Slack Admin Console 에서 승인 필요
5단계 — Bot User OAuth Token 복사
승인 직후 OAuth & Permissions 페이지 최상단 에 다음이 나타납니다:할 일:
Copy버튼으로 전체 값 복사- 이 값이 Seahorse 의
SLACK_BOT_TOKEN입력값입니다
6단계 — Team ID 확인
Dashboard 어디에도 Team ID 가 직접 노출되지 않아 별도로 확인해야 합니다.방법 A — auth.test API (가장 빠름):응답 JSON 의
"team_id":"T01234ABCDE" 값이 SLACK_TEAM_ID.방법 B — Slack 웹 UI:
워크스페이스 접속 → About this workspace → Workspace ID.7단계 — Seahorse 에 등록
Console → Agent Ops → Tool Management → + 도구 생성 → Slack 선택 → 아래 값 입력:
Save → 도구 상세 의 Test 로 연결 검증 → 6 개 도구 목록 채워지면 성공.
| 필드 | 값 |
|---|---|
SLACK_BOT_TOKEN | 5단계에서 복사한 xoxb-… |
SLACK_TEAM_ID | 6단계에서 확인한 T… |
체크리스트
정상 연동 시 아래 조건이 모두 충족되어야 합니다.- Slack App 생성 완료
- OAuth & Permissions 의 Bot Token Scopes 에
chat:write·channels:read·channels:history최소 포함 - Install to Workspace 승인 완료
- Bot User OAuth Token (
xoxb-…) 확보 - Team ID (
T…) 확보 - Seahorse Tool Management 에 Slack 템플릿 등록 + Test 성공
- 사용할 Slack 채널마다
/invite @bot-name완료
실시간 멘션 수신(Socket Mode) 이 추가로 필요한 경우:
- Slack App 에서 Socket Mode 활성화 + App-Level Token (
xapp-…) 발급 - Agent 생성 → Slack 탭 에
SLACK_APP_TOKEN·SLACK_BOT_TOKEN·SLACK_SIGNING_SECRET등록 - 방식 비교·구성 상세: Slack 으로 문서 받아보기 레시피
6 개 노출 도구
본 템플릿 MCP 서버가 제공하는 도구 (상세 인자는 도구 상세 에서 Test 버튼으로 확인):| 도구 | 용도 |
|---|---|
| slack_send_message | 채널·DM 에 메시지 전송 |
| slack_read_channel | 채널의 최근 메시지 읽기 |
| slack_read_thread | 특정 메시지의 스레드 읽기 |
| slack_read_user_profile | 사용자 프로필 조회 |
| slack_search_channels | 채널 검색 |
| slack_search_users | 사용자 검색 |
Agent 의 Slack Listener 설정과 구분
- 본 템플릿 Tool —
slack_send_message·slack_read_channel등을 에이전트가 능동 호출 (Flow·Scheduler·대화 내 자연 호출) - Agent 생성 → Slack 탭 — Slack App Token·Signing Secret 을 추가 등록하여 Socket Mode 로 실시간 멘션 수신 (에이전트가 Slack 이벤트를 수신·응답)
활용 레시피
- Slack 알림 자동화 — 일방향 알림 (Flow 결과 → Slack)
- Slack 으로 문서 받아보기 — 양방향 Q&A 봇 (주기 폴링 / Socket Mode 두 방식)
- 보고서 자동 발행 — 정기 리포트 Slack 전송
보안 주의
Transport 필드에 관하여
Basic Information 의 Transport 드롭다운에서 Standard I/O 외에 Streamable HTTP 를 선택하는 것이 UI 상으로는 가능합니다. HTTP 선택 시 입력 필드는 다음과 같이 바뀝니다:| stdio 필드 | → | HTTP 필드 |
|---|---|---|
| Command + Args + Environment Variables | → | Connection Settings (Endpoint URL · Timeout · Verify SSL) + Headers |
관련 문서
- Quick Setup 템플릿 목록 — 4 개 서비스 템플릿 한눈에
- 도구 상세 — 지원 메서드·호출 로그 확인
- Tool Management — 도구 전역 관리
- Agent 생성 — Slack 탭 — Socket Mode 실시간 리스너