Slack MCP — 팀 커뮤니케이션 자동화
Slack MCP 서버로 메시지 전송, 채널 관리, 알림 연동을 자동화하는 방법을 실전 코드와 함께 안내합니다.

Slack MCP란?
Slack MCP는 AI 모델이 Slack 워크스페이스와 상호작용할 수 있게 해주는 MCP 서버입니다. 메시지 전송, 채널 히스토리 조회, 사용자 정보 검색, 리액션 추가 등 Slack의 핵심 기능을 AI가 직접 활용합니다. 팀 커뮤니케이션은 개발팀이 반복적으로 수행하는 작업의 상당 부분을 차지하며, 특히 배포 알림, 일일 스탠드업 요약, 장애 대응 공지 같은 정형화된 메시지는 사람이 매번 손으로 쓰는 것보다 AI가 맥락과 함께 생성·게시하는 편이 훨씬 효율적입니다.
이전 편에서 PostgreSQL MCP로 데이터를 다뤘다면, 이번에는 팀 커뮤니케이션 영역을 자동화합니다. Slack MCP의 또 다른 강점은 이미 구축된 MCP 서버(GitHub, PostgreSQL, Linear 등)와 자연스럽게 조합된다는 점입니다. 예를 들어 GitHub에서 PR이 머지되면 → Linear 이슈 상태를 업데이트하고 → Slack 채널에 결과를 공지하는 흐름을 한 번의 자연어 지시로 완결할 수 있습니다.설정
Slack MCP는 Bot 기반 인증을 사용합니다. 먼저 Slack API 콘솔에서 앱을 생성하고 Bot Token Scopes를 부여한 다음, 워크스페이스에 설치해 발급되는 OAuth 토큰을 MCP 서버 환경 변수로 주입하면 됩니다. 개인 User Token이 아닌 Bot Token을 쓰는 이유는, 봇 계정이 독립적인 권한 스코프와 감사 로그를 갖기 때문에 사용자 권한과 분리해 운영할 수 있다는 점입니다.
Slack Bot Token 발급
필요한 Bot Token Scopes는 다음과 같습니다.
| Scope | 용도 |
channels:read | 채널 목록 조회 |
channels:history | 채널 메시지 읽기 |
chat:write | 메시지 전송 |
reactions:write | 리액션 추가 |
users:read | 사용자 정보 조회 |
MCP 서버 등록
{"mcpServers": {
"slack": {
"command": "npx",
"args": ["-y", "@anthropic-ai/mcp-server-slack"],
"env": {
"SLACK_BOT_TOKEN": "xoxb-xxxxxxxxxxxx-xxxxxxxxxxxx-xxxxxxxxxxxx"
}
}
}
}
핵심 도구
Slack MCP가 노출하는 도구는 크게 메시지 / 채널 / 사용자 세 범주로 나뉩니다. 메시지 범주는 전송·히스토리 조회·스레드 답장 등 일상적으로 가장 자주 쓰이는 기능으로, 이 범주만 잘 이해해도 팀 알림 자동화의 80%는 해결됩니다. 채널 범주는 워크스페이스 구조 파악과 메타데이터 조회에 사용되며, 사용자 범주는 멘션·할당·담당자 확인 등에 활용됩니다.
메시지 관리
# 채널에 메시지 전송claude "#dev-team 채널에 '배포 완료: v2.3.1' 메시지를 보내줘"
채널 히스토리 조회
claude "#bugs 채널의 최근 20개 메시지를 보여줘"
스레드 답장
claude "이 메시지의 스레드에 진행 상황 업데이트를 달아줘"
채널 관리
# 채널 목록 확인claude "현재 워크스페이스의 공개 채널 목록을 보여줘"
채널 정보 조회
claude "#general 채널의 멤버 수와 최근 활동을 알려줘"
사용자 검색
# 사용자 프로필 조회claude "김개발 님의 Slack 프로필을 보여줘"
온라인 상태 확인
claude "현재 온라인인 팀원 목록을 보여줘"
실전 워크플로우: 일일 스탠드업 요약
Slack MCP의 강력한 활용 사례는 채널 메시지를 분석하여 자동 요약을 생성하는 것입니다.
# 스탠드업 채널의 오늘 메시지를 수집하고 요약claude "#standup 채널의 오늘 메시지를 분석해서
팀원별 진행 상황, 블로커, 오늘 계획을 표로 정리해줘.
결과를 #team-summary 채널에 게시해줘."
배포 알림 자동화
코드 배포와 Slack 알림을 연결하는 패턴입니다.
// 커스텀 배포 알림 MCP 도구 예시server.tool(
"notify_deployment",
"배포 결과를 Slack 채널에 알립니다",
{
version: z.string().describe("배포 버전"),
environment: z.enum(["staging", "production"]).describe("환경"),
changes: z.array(z.string()).describe("주요 변경사항"),
},
async ({ version, environment, changes }) => {
const emoji = environment === "production" ? ":rocket:" : ":construction:";
const changeList = changes.map((c) =>
• ${c}).join("\n");const message =
${emoji} ${environment} 배포 완료\n버전: ${version}\n\n변경사항:\n${changeList};// Slack MCP의 send_message 도구를 통해 전송
return { content: [{ type: "text", text: message }] };
}
);
다중 채널 모니터링
여러 채널을 동시에 모니터링하고 중요한 메시지를 필터링할 수 있습니다.
# 여러 채널에서 긴급 키워드 검색claude "#bugs, #incidents, #support 채널에서
오늘 '긴급', '장애', 'P0' 키워드가 포함된 메시지를 모아줘"
미답변 질문 찾기
claude "#help 채널에서 스레드 답변이 없는 질문들을 찾아줘"
주의사항
- 메시지 발송 제한: Slack API는 분당 메시지 발송 수에 제한이 있습니다. 대량 발송 시 Rate Limiting을 고려하세요
- 비공개 채널: Bot이 초대된 채널만 접근 가능합니다
- 토큰 보안: Bot Token은 절대 코드에 하드코딩하지 않습니다
- 사용자 동의: 팀원의 메시지를 AI가 분석한다는 점을 팀에 공지합니다
다음 단계
팀 커뮤니케이션 자동화를 익혔다면, 다음 편에서는 Linear MCP를 활용한 프로젝트 관리 자동화를 다룹니다.
MCP 실전 가이드 시리즈
AI K LINK의 Kit MCP 목록에서 커뮤니케이션 관련 MCP 서버를 탐색하세요. FAQ에서 자주 묻는 설정 질문을 확인할 수 있습니다.
관련 글
이 글은 AI K LINK 콘텐츠팀이 작성하였으며, AI 도구의 도움을 받아 리서치 및 초안 작성이 이루어졌습니다. 최종 발행 전 전문 에디터의 검수를 거칩니다. 내용에 대한 문의는 contact@aiklink.com으로 보내주세요.


