Skip to main content
Glama

Slack MCP Server

by yeoamlog

Slack MCP Server - Complete Implementation

πŸ“‹ ν”„λ‘œμ νŠΈ κ°œμš”

FastMCP v2λ₯Ό μ‚¬μš©ν•˜μ—¬ κ΅¬ν˜„ν•œ μ™„μ „ν•œ Slack API 연동 MCP μ„œλ²„μž…λ‹ˆλ‹€. 과제 κ°€μ΄λ“œλΌμΈμ— 따라 ν•„μˆ˜ κΈ°λŠ₯ 4개, 선택 κΈ°λŠ₯ 4개, 그리고 λ³΄λ„ˆμŠ€ λ½€λͺ¨λ„λ‘œ 타이머 κΈ°λŠ₯ 4개λ₯Ό λͺ¨λ‘ κ΅¬ν˜„ν–ˆμŠ΅λ‹ˆλ‹€.

🎯 μ£Όμš” νŠΉμ§•

  • βœ… μ™„μ „ν•œ UTF-8 ν•œκΈ€ 지원 - λͺ¨λ“  λ©”μ‹œμ§€μ—μ„œ ν•œκΈ€ μ™„λ²½ 지원

  • βœ… 이쀑 토큰 μ‹œμŠ€ν…œ - Bot Token + User Token으둜 λͺ¨λ“  κΈ°λŠ₯ 지원

  • βœ… 슀마트 파일 μ—…λ‘œλ“œ - 크기별 졜적 μ—…λ‘œλ“œ 방식 μžλ™ 선택

  • βœ… λ½€λͺ¨λ„λ‘œ 타이머 - μžλ™ μ•Œλ¦Ό κΈ°λŠ₯이 ν¬ν•¨λœ μ‹œκ°„ 관리 도ꡬ

  • βœ… 비동기 처리 - κ³ μ„±λŠ₯ asyncio 기반 κ΅¬ν˜„

  • βœ… μƒμ„Έν•œ μ—λŸ¬ 핸듀링 - λͺ¨λ“  API ν˜ΈμΆœμ— λŒ€ν•œ μ μ ˆν•œ μ˜ˆμ™Έ 처리

πŸš€ κΈ°λŠ₯ λͺ©λ‘

πŸ”΄ ν•„μˆ˜ κΈ°λŠ₯ (Required Features - 4개)

  1. send_slack_message - λ©”μ‹œμ§€ 전솑

    • 채널 λ˜λŠ” DM에 λ©”μ‹œμ§€ 전솑

    • μŠ€λ ˆλ“œ λ‹΅κΈ€ 지원

    • μ™„μ „ν•œ UTF-8 ν•œκΈ€ 지원

  2. get_slack_channels - 채널 λͺ©λ‘ 쑰회

    • 곡개/λΉ„κ³΅κ°œ 채널 ꡬ뢄

    • 멀버십 μƒνƒœ 확인

    • λ³΄κ΄€λœ 채널 필터링

  3. get_slack_channel_history - λ©”μ‹œμ§€ νžˆμŠ€ν† λ¦¬ 쑰회

    • μ΅œμ‹  λ©”μ‹œμ§€λΆ€ν„° 쑰회

    • μ‹œκ°„ λ²”μœ„ μ§€μ • κ°€λŠ₯

    • λ©”μ‹œμ§€ 메타데이터 포함

  4. send_slack_direct_message - DM 전솑

    • νŠΉμ • μ‚¬μš©μžμ—κ²Œ 1:1 λ©”μ‹œμ§€ 전솑

    • μžλ™ DM 채널 생성

    • 봇 μ‚¬μš©μž 필터링

🟑 선택 κΈ°λŠ₯ (Optional Features - 4개)

  1. get_slack_users - μ‚¬μš©μž λͺ©λ‘ 쑰회

    • μ‚¬μš©μž νƒ€μž…λ³„ λΆ„λ₯˜ (κ΄€λ¦¬μž, 멀버, 게슀트, 봇)

    • DM κ°€λŠ₯ μ‚¬μš©μž 필터링

    • μƒμ„Έν•œ ν”„λ‘œν•„ 정보

  2. search_slack_messages - λ©”μ‹œμ§€ 검색 (User Token ν•„μš”)

    • ν‚€μ›Œλ“œ 기반 전체 μ›Œν¬μŠ€νŽ˜μ΄μŠ€ 검색

    • μ •λ ¬ 및 필터링 μ˜΅μ…˜

    • 검색 κ²°κ³Ό 메타데이터

  3. upload_file_to_slack - 슀마트 파일 μ—…λ‘œλ“œ

    • 파일 크기별 졜적 μ—…λ‘œλ“œ 방식

    • λ‹€μ–‘ν•œ 파일 ν˜•μ‹ 지원

    • μžλ™ 미리보기 및 μ½”λ“œ ν•˜μ΄λΌμ΄νŒ…

  4. add_slack_reaction - λ©”μ‹œμ§€ λ°˜μ‘ μΆ”κ°€

    • 이λͺ¨μ§€ λ°˜μ‘ μΆ”κ°€

    • λ‹€μ–‘ν•œ 이λͺ¨μ§€ ν˜•μ‹ 지원

🟒 λ³΄λ„ˆμŠ€ κΈ°λŠ₯ (Bonus Features - 4개)

  1. start_pomodoro_timer - λ½€λͺ¨λ„λ‘œ 타이머 μ‹œμž‘

    • 5κ°€μ§€ 타이머 νƒ€μž… (study, work, break, meeting, custom)

    • μžλ™ μ‹œμž‘/μ’…λ£Œ μ•Œλ¦Ό

    • μ‚¬μš©μž μ •μ˜ μ‹œκ°„ 및 λ©”μ‹œμ§€

  2. cancel_pomodoro_timer - 타이머 μ·¨μ†Œ

    • μ‹€ν–‰ 쀑인 타이머 μ¦‰μ‹œ 쀑단

    • μ·¨μ†Œ μ•Œλ¦Ό 전솑

  3. list_active_timers - ν™œμ„± 타이머 λͺ©λ‘

    • ν˜„μž¬ μ‹€ν–‰ 쀑인 λͺ¨λ“  타이머

    • μ§„ν–‰λ₯  및 남은 μ‹œκ°„ ν‘œμ‹œ

  4. get_timer_status - 타이머 μƒνƒœ 쑰회

    • νŠΉμ • νƒ€μ΄λ¨Έμ˜ 상세 μƒνƒœ

    • μ‹€μ‹œκ°„ μ§„ν–‰ 상황

πŸ› οΈ μœ ν‹Έλ¦¬ν‹° κΈ°λŠ₯

  1. test_slack_connection - μ—°κ²° ν…ŒμŠ€νŠΈ

  2. get_workspace_info - μ›Œν¬μŠ€νŽ˜μ΄μŠ€ 정보

  3. get_file_preview - 파일 미리보기

  4. verify_or_create_file - 파일 확인/생성

πŸ“¦ μ„€μΉ˜ 및 μ‹€ν–‰ 방법

1. ν”„λ‘œμ νŠΈ μ΄ˆκΈ°ν™”

# ν”„λ‘œμ νŠΈ 클둠 λ˜λŠ” λ‹€μš΄λ‘œλ“œ ν›„ cd slack-mcp # uv νŒ¨ν‚€μ§€ λ§€λ‹ˆμ € μ„€μΉ˜ (μ—†λŠ” 경우) curl -LsSf https://astral.sh/uv/install.sh | sh # κ°€μƒν™˜κ²½ 생성 및 ν™œμ„±ν™” uv venv source .venv/bin/activate # Linux/macOS # .venv\Scripts\activate # Windows # μ˜μ‘΄μ„± μ„€μΉ˜ uv sync # λ˜λŠ” uv pip install -r requirements.txt

2. ν™˜κ²½ λ³€μˆ˜ μ„€μ •

.env νŒŒμΌμ„ μƒμ„±ν•˜κ³  λ‹€μŒκ³Ό 같이 μ„€μ •:

# ν•„μˆ˜: Slack Bot Token (xoxb-둜 μ‹œμž‘) SLACK_BOT_TOKEN=xoxb-your-bot-token-here # 선택: Slack User Token (xoxp-둜 μ‹œμž‘) - 검색, νŒŒμΌμ—…λ‘œλ“œμš© SLACK_USER_TOKEN=xoxp-your-user-token-here # 선택: κΈ°λ³Έ 채널 ID (ν…ŒμŠ€νŠΈμš©) SLACK_TEST_CHANNEL_ID=C08UZKK9Q4R # 선택: 둜그 레벨 LOG_LEVEL=INFO

3. Slack App μ„€μ •

ν•„μš”ν•œ Bot Token Scopes:

channels:read # 채널 λͺ©λ‘ 쑰회 channels:history # 채널 λ©”μ‹œμ§€ νžˆμŠ€ν† λ¦¬ 쑰회 chat:write # λ©”μ‹œμ§€ 전솑 im:read # DM 채널 읽기 im:write # DM λ©”μ‹œμ§€ 전솑 im:history # DM νžˆμŠ€ν† λ¦¬ 쑰회 users:read # μ‚¬μš©μž 정보 쑰회 reactions:write # λ°˜μ‘ μΆ”κ°€

μΆ”κ°€ User Token Scopes (선택 κΈ°λŠ₯용):

search:read # λ©”μ‹œμ§€ 검색 files:write # 파일 μ—…λ‘œλ“œ

4. μ„œλ²„ μ‹€ν–‰

# MCP μ„œλ²„ μ‹€ν–‰ python slack_mcp_server.py # λ˜λŠ” 직접 μ‹€ν–‰ uv run slack_mcp_server.py

πŸ’‘ μ‚¬μš©λ²• 및 μ˜ˆμ‹œ

κΈ°λ³Έ λ©”μ‹œμ§€ 전솑

# Claude/LLM이 도ꡬ 호좜 μ‹œ send_slack_message( channel="C08UZKK9Q4R", text="μ•ˆλ…•ν•˜μ„Έμš”! MCPμ—μ„œ λ³΄λ‚΄λŠ” λ©”μ‹œμ§€μž…λ‹ˆλ‹€! πŸš€" )

파일 μ—…λ‘œλ“œ (슀마트 처리)

# λ‹€μ–‘ν•œ 크기의 νŒŒμΌμ„ μžλ™μœΌλ‘œ 졜적 λ°©μ‹μœΌλ‘œ μ—…λ‘œλ“œ upload_file_to_slack( file_path="./report.pdf", channels="C08UZKK9Q4R", title="뢄석 λ³΄κ³ μ„œ", comment="μ›”κ°„ 데이터 뢄석 κ²°κ³Όμž…λ‹ˆλ‹€." )

λ½€λͺ¨λ„λ‘œ 타이머 μ‚¬μš©

# μˆ˜μ—… 타이머 μ‹œμž‘ (50λΆ„) start_pomodoro_timer( timer_type="study", channel_id="C08UZKK9Q4R", duration_minutes=50, custom_name="파이썬 κ³ κΈ‰ 문법 ν•™μŠ΅" ) # ν™œμ„± 타이머 확인 list_active_timers() # 타이머 μ·¨μ†Œ cancel_pomodoro_timer("study_20250602_143022_123456")

λ©”μ‹œμ§€ 검색 (User Token ν•„μš”)

# μ›Œν¬μŠ€νŽ˜μ΄μŠ€ μ „μ²΄μ—μ„œ λ©”μ‹œμ§€ 검색 search_slack_messages( query="MCP μ„œλ²„", count=10, sort="timestamp" )

πŸ—οΈ ν”„λ‘œμ νŠΈ ꡬ쑰

slack-mcp/ β”œβ”€β”€ .env # ν™˜κ²½ λ³€μˆ˜ (Git μ œμ™Έ) β”œβ”€β”€ .env.example # ν™˜κ²½ λ³€μˆ˜ ν…œν”Œλ¦Ώ β”œβ”€β”€ .gitignore # Git λ¬΄μ‹œ 파일 β”œβ”€β”€ README.md # 이 파일 β”œβ”€β”€ requirements.txt # μ˜μ‘΄μ„± λͺ©λ‘ β”œβ”€β”€ pyproject.toml # ν”„λ‘œμ νŠΈ μ„€μ • β”œβ”€β”€ slack_api_client.py # Slack API ν΄λΌμ΄μ–ΈνŠΈ (핡심 λͺ¨λ“ˆ) β”œβ”€β”€ pomodoro_timer.py # λ½€λͺ¨λ„λ‘œ 타이머 λͺ¨λ“ˆ └── slack_mcp_server.py # FastMCP μ„œλ²„ 메인

πŸ”§ 기술적 κ΅¬ν˜„ 세뢀사항

이쀑 토큰 μ‹œμŠ€ν…œ

  • Bot Token (xoxb-): 일반적인 봇 κΈ°λŠ₯ (λ©”μ‹œμ§€ 전솑, 채널 쑰회 λ“±)

  • User Token (xoxp-): μ‚¬μš©μž κΆŒν•œ ν•„μš”ν•œ κΈ°λŠ₯ (검색, λŒ€μš©λŸ‰ 파일 μ—…λ‘œλ“œ)

슀마트 파일 μ—…λ‘œλ“œ μ „λž΅

  1. μž‘μ€ ν…μŠ€νŠΈ 파일 (< 50KB): λ©”μ‹œμ§€ λ‚΄μš©μœΌλ‘œ 직접 전솑

  2. 쀑간 파일 (50KB - 1MB): μ½”λ“œ μŠ€λ‹ˆνŽ«μœΌλ‘œ μ—…λ‘œλ“œ

  3. 일반 파일 (1MB - 100MB): ν‘œμ€€ 파일 μ—…λ‘œλ“œ

  4. λŒ€μš©λŸ‰ 파일 (100MB - 1GB): User Token으둜 μ—…λ‘œλ“œ

  5. μ΄ˆλŒ€μš©λŸ‰ 파일 (> 1GB): 파일 μ •λ³΄λ§Œ 곡유

비동기 처리 및 λ™μ‹œμ„±

  • asyncio 기반 μ™„μ „ 비동기 κ΅¬ν˜„

  • λ½€λͺ¨λ„λ‘œ νƒ€μ΄λ¨Έμ˜ 병렬 μ‹€ν–‰ 지원

  • 락(Lock)을 ν†΅ν•œ ν΄λΌμ΄μ–ΈνŠΈ μ΄ˆκΈ°ν™” μ•ˆμ „μ„± 보μž₯

UTF-8 ν•œκΈ€ 지원

headers = { 'Content-Type': 'application/json; charset=utf-8' }

πŸ› 개발 κ³Όμ •μ—μ„œ κ²ͺ은 어렀움과 ν•΄κ²° 방법

1. ν•¨μˆ˜λ“€ κ°„μ˜ Input λ³€μˆ˜λͺ… 톡일 어렀움

문제: API ν•¨μˆ˜λ§ˆλ‹€ λ§€κ°œλ³€μˆ˜ 이름이 λ‹¬λΌμ„œ 일관성 λΆ€μ‘±

  • channel vs channel_id vs channels

  • text vs message vs content

ν•΄κ²°μ±…:

  • Slack API 곡식 λ¬Έμ„œ κΈ°μ€€μœΌλ‘œ λ³€μˆ˜λͺ… 톡일(ν–₯ν›„ μ—…λ°μ΄νŠΈ μ˜ˆμ •)

  • λ‚΄λΆ€ ν•¨μˆ˜μ—μ„œλŠ” μΌκ΄€λœ 넀이밍 μ»¨λ²€μ…˜ 적용

  • docstring에 λͺ…ν™•ν•œ λ§€κ°œλ³€μˆ˜ μ„€λͺ… μΆ”κ°€

async def send_message( self, channel: str, # κ°€λŠ₯ν•œ 뢀뢄듀은 channel 둜 톡일 μ˜ˆμ • text: str, # 톡일: text thread_ts: Optional[str] = None ) -> Dict[str, Any]:

2. Input-Output λ³€μˆ˜λͺ… μ°ΎκΈ° 어렀움

문제: Slack API μ‘λ‹΅μ˜ λ³΅μž‘ν•œ 쀑첩 ꡬ쑰둜 ν•„μš”ν•œ 데이터 μΆ”μΆœ 어렀움

ν•΄κ²°μ±…:

  • API 응닡을 둜그둜 좜λ ₯ν•˜μ—¬ ꡬ쑰 νŒŒμ•…

  • 곡톡 데이터 μΆ”μΆœ ν•¨μˆ˜ μž‘μ„±

  • 응닡 데이터 μ •κ·œν™” 및 ν¬λ§·νŒ…

# 응닡 데이터 μ •κ·œν™” μ˜ˆμ‹œ formatted_messages.append({ 'text': msg.get('text', ''), 'user': msg.get('user', 'Unknown'), 'timestamp': readable_time, 'ts': msg.get('ts', ''), # ... ν•„μš”ν•œ ν•„λ“œλ§Œ μΆ”μΆœ })

3. Outdated file_upload ν•¨μˆ˜λ₯Ό μ΅œμ‹  λ²„μ „μœΌλ‘œ μ‚¬μš©ν•˜κΈ°κΉŒμ§€ λ§Žμ€ μ‹œν–‰μ°©μ˜€

문제: Slack의 파일 μ—…λ‘œλ“œ APIκ°€ μ—¬λŸ¬ 번 λ³€κ²½λ˜μ–΄ κΈ°μ‘΄ 방식 deprecated

ν•΄κ²°μ±…:

  • files.upload (deprecated) β†’ files.getUploadURLExternal + files.completeUploadExternal

  • Slack SDK와 κΈ°μ‘΄ REST API의 ν•˜μ΄λΈŒλ¦¬λ“œ 접근법

  • 파일 크기별 λ‹€λ₯Έ μ—…λ‘œλ“œ μ „λž΅ κ΅¬ν˜„

# μƒˆλ‘œμš΄ 파일 μ—…λ‘œλ“œ ν”Œλ‘œμš° # 1. μ—…λ‘œλ“œ URL μš”μ²­ upload_response = await self._make_request('files.getUploadURLExternal', 'POST', upload_data) # 2. μ™ΈλΆ€ URL둜 파일 μ—…λ‘œλ“œ async with self._session.put(upload_url, data=file_content) as response: # 파일 μ—…λ‘œλ“œ # 3. μ—…λ‘œλ“œ μ™„λ£Œ 처리 complete_response = await self._make_request('files.completeUploadExternal', 'POST', complete_data)

4. User Token이 ν•„μš”ν•œ 경우 vs Bot Token만으둜 ν•΄κ²°λ˜λŠ” 경우

문제: μ–΄λ–€ κΈ°λŠ₯에 μ–΄λ–€ 토큰이 ν•„μš”ν•œμ§€ νŒŒμ•…ν•˜κΈ° 어렀움

ν•΄κ²°μ±…:

  • κΈ°λŠ₯별 토큰 μš”κ΅¬μ‚¬ν•­ λͺ…ν™•νžˆ λΆ„λ₯˜

  • 이쀑 토큰 μ‹œμŠ€ν…œμœΌλ‘œ μžλ™ 선택

  • 토큰 λΆ€μ‘± μ‹œ λͺ…ν™•ν•œ μ•ˆλ‚΄ λ©”μ‹œμ§€

# Bot Token으둜 κ°€λŠ₯ν•œ κΈ°λŠ₯ - λ©”μ‹œμ§€ 전솑 (chat.postMessage) - 채널 λͺ©λ‘ (conversations.list) - μ‚¬μš©μž λͺ©λ‘ (users.list) - 파일 μ—…λ‘œλ“œ (< 100MB) # User Token이 ν•„μš”ν•œ κΈ°λŠ₯ - λ©”μ‹œμ§€ 검색 (search.messages) - λŒ€μš©λŸ‰ 파일 μ—…λ‘œλ“œ (> 100MB)

5. GET vs POST의 차이

문제: μ–Έμ œ GET을 μ“°κ³  μ–Έμ œ POSTλ₯Ό 써야 ν•˜λŠ”μ§€ ν˜Όλž€

ν•΄κ²°μ±…:

  • Slack API λ¬Έμ„œμ˜ HTTP λ©”μ†Œλ“œ μ •ν™•νžˆ 확인

  • 데이터 μ‘°νšŒλŠ” GET, 데이터 생성/μˆ˜μ •μ€ POST

  • ν†΅μΌλœ _make_request ν•¨μˆ˜λ‘œ 처리

# GET: 데이터 쑰회 await self._make_request('conversations.list', 'GET', params) await self._make_request('users.list', 'GET', params) # POST: 데이터 생성/μˆ˜μ • await self._make_request('chat.postMessage', 'POST', data) await self._make_request('files.getUploadURLExternal', 'POST', data)

6. 기타 ν•΄κ²°ν•œ μ΄μŠˆλ“€

  • Rate Limiting: μ§€μˆ˜ λ°±μ˜€ν”„μ™€ μž¬μ‹œλ„ 둜직

  • Error Handling: 각 μ—λŸ¬ μ½”λ“œλ³„ λ§žμΆ€ν˜• ν•΄κ²° μ œμ•ˆ

  • UTF-8 Encoding: ν•œκΈ€ λ©”μ‹œμ§€ μ™„λ²½ 지원

  • Async Safety: λ½€λͺ¨λ„λ‘œ νƒ€μ΄λ¨Έμ˜ λ™μ‹œ μ‹€ν–‰ 처리

πŸ“Š μ„±λŠ₯ 및 μ œν•œμ‚¬ν•­

파일 μ—…λ‘œλ“œ μ œν•œ

  • 무료 ν”Œλžœ: μ΅œλŒ€ 5GB μ›Œν¬μŠ€νŽ˜μ΄μŠ€ μŠ€ν† λ¦¬μ§€

  • κ°œλ³„ 파일: μ΅œλŒ€ 1GB (유료 ν”Œλžœμ—μ„œ)

  • Bot Token: μ΅œλŒ€ 100MB 파일 μ—…λ‘œλ“œ

  • User Token: μ΅œλŒ€ 1GB 파일 μ—…λ‘œλ“œ

API Rate Limits

  • Tier 1 λ©”μ†Œλ“œ: 1+ per minute

  • Tier 2 λ©”μ†Œλ“œ: 20+ per minute

  • Tier 3 λ©”μ†Œλ“œ: 50+ per minute

  • Tier 4 λ©”μ†Œλ“œ: 100+ per minute

πŸ” ν…ŒμŠ€νŠΈ 방법

1. μ—°κ²° ν…ŒμŠ€νŠΈ

# μ„œλ²„ μ‹€ν–‰ ν›„ Claudeμ—μ„œ ν…ŒμŠ€νŠΈ test_slack_connection()

2. κΈ°λ³Έ κΈ°λŠ₯ ν…ŒμŠ€νŠΈ

# 채널 λͺ©λ‘ 쑰회 get_slack_channels() # λ©”μ‹œμ§€ 전솑 ν…ŒμŠ€νŠΈ send_slack_message("C08UZKK9Q4R", "ν…ŒμŠ€νŠΈ λ©”μ‹œμ§€μž…λ‹ˆλ‹€! πŸŽ‰")

3. κ³ κΈ‰ κΈ°λŠ₯ ν…ŒμŠ€νŠΈ

# 파일 μ—…λ‘œλ“œ ν…ŒμŠ€νŠΈ upload_file_to_slack("./test.txt", title="ν…ŒμŠ€νŠΈ 파일") # λ½€λͺ¨λ„λ‘œ 타이머 ν…ŒμŠ€νŠΈ start_pomodoro_timer("work", duration_minutes=25, custom_name="ν…ŒμŠ€νŠΈ μž‘μ—…")

🀝 κΈ°μ—¬ 방법

  1. 이슈 제보: GitHub Issues μ‚¬μš©

  2. κΈ°λŠ₯ μ œμ•ˆ: Feature Request ν…œν”Œλ¦Ώ μ‚¬μš©

  3. μ½”λ“œ κΈ°μ—¬: Pull Request ν™˜μ˜

  4. λ¬Έμ„œ κ°œμ„ : README 및 docstring κ°œμ„ 

πŸ“„ λΌμ΄μ„ μŠ€

이 ν”„λ‘œμ νŠΈλŠ” MIT λΌμ΄μ„ μŠ€λ₯Ό λ”°λ¦…λ‹ˆλ‹€.

πŸ™‹β€β™‚οΈ 문의 및 지원

  • 개발자: JunHyuck Kwon

  • 버전: 8.5.2 (Complete Implementation)

  • μ΅œμ’… μ—…λ°μ΄νŠΈ: 2025-06-04


과제 완성도: βœ… ν•„μˆ˜ 4개 + βœ… 선택 4개 + βœ… λ³΄λ„ˆμŠ€ 4개 + βœ… μœ ν‹Έλ¦¬ν‹° 4개 = 총 16개 κΈ°λŠ₯ μ™„μ „ κ΅¬ν˜„

이 ν”„λ‘œμ νŠΈλ₯Ό 톡해 μ‹€μ œ μ—…λ¬΄μ—μ„œ ν™œμš©ν•  수 μžˆλŠ” κ³ ν’ˆμ§ˆ Slack 연동 도ꡬλ₯Ό ꡬ좕할 수 μžˆμŠ΅λ‹ˆλ‹€! πŸš€

-
security - not tested
F
license - not found
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

A comprehensive Slack integration server that enables sending messages, managing channels, uploading files, and running Pomodoro timers through FastMCP v2.

  1. πŸ“‹ ν”„λ‘œμ νŠΈ κ°œμš”
    1. 🎯 μ£Όμš” νŠΉμ§•
  2. πŸš€ κΈ°λŠ₯ λͺ©λ‘
    1. πŸ”΄ ν•„μˆ˜ κΈ°λŠ₯ (Required Features - 4개)
    2. 🟑 선택 κΈ°λŠ₯ (Optional Features - 4개)
    3. 🟒 λ³΄λ„ˆμŠ€ κΈ°λŠ₯ (Bonus Features - 4개)
    4. πŸ› οΈ μœ ν‹Έλ¦¬ν‹° κΈ°λŠ₯
  3. πŸ“¦ μ„€μΉ˜ 및 μ‹€ν–‰ 방법
    1. 1. ν”„λ‘œμ νŠΈ μ΄ˆκΈ°ν™”
    2. 2. ν™˜κ²½ λ³€μˆ˜ μ„€μ •
    3. 3. Slack App μ„€μ •
    4. 4. μ„œλ²„ μ‹€ν–‰
  4. πŸ’‘ μ‚¬μš©λ²• 및 μ˜ˆμ‹œ
    1. κΈ°λ³Έ λ©”μ‹œμ§€ 전솑
    2. 파일 μ—…λ‘œλ“œ (슀마트 처리)
    3. λ½€λͺ¨λ„λ‘œ 타이머 μ‚¬μš©
    4. λ©”μ‹œμ§€ 검색 (User Token ν•„μš”)
  5. πŸ—οΈ ν”„λ‘œμ νŠΈ ꡬ쑰
    1. πŸ”§ 기술적 κ΅¬ν˜„ 세뢀사항
      1. 이쀑 토큰 μ‹œμŠ€ν…œ
      2. 슀마트 파일 μ—…λ‘œλ“œ μ „λž΅
      3. 비동기 처리 및 λ™μ‹œμ„±
      4. UTF-8 ν•œκΈ€ 지원
    2. πŸ› 개발 κ³Όμ •μ—μ„œ κ²ͺ은 어렀움과 ν•΄κ²° 방법
      1. 1. ν•¨μˆ˜λ“€ κ°„μ˜ Input λ³€μˆ˜λͺ… 톡일 어렀움
      2. 2. Input-Output λ³€μˆ˜λͺ… μ°ΎκΈ° 어렀움
      3. 3. Outdated file_upload ν•¨μˆ˜λ₯Ό μ΅œμ‹  λ²„μ „μœΌλ‘œ μ‚¬μš©ν•˜κΈ°κΉŒμ§€ λ§Žμ€ μ‹œν–‰μ°©μ˜€
      4. 4. User Token이 ν•„μš”ν•œ 경우 vs Bot Token만으둜 ν•΄κ²°λ˜λŠ” 경우
      5. 5. GET vs POST의 차이
      6. 6. 기타 ν•΄κ²°ν•œ μ΄μŠˆλ“€
    3. πŸ“Š μ„±λŠ₯ 및 μ œν•œμ‚¬ν•­
      1. 파일 μ—…λ‘œλ“œ μ œν•œ
      2. API Rate Limits
    4. πŸ” ν…ŒμŠ€νŠΈ 방법
      1. 1. μ—°κ²° ν…ŒμŠ€νŠΈ
      2. 2. κΈ°λ³Έ κΈ°λŠ₯ ν…ŒμŠ€νŠΈ
      3. 3. κ³ κΈ‰ κΈ°λŠ₯ ν…ŒμŠ€νŠΈ
    5. 🀝 κΈ°μ—¬ 방법
      1. πŸ“„ λΌμ΄μ„ μŠ€
        1. πŸ™‹β€β™‚οΈ 문의 및 지원

          Related MCP Servers

          • A
            security
            A
            license
            A
            quality
            MCP Server for the Slack API, enabling Claude to interact with Slack workspaces.
            Last updated -
            11,120
            69,516
            MIT License
            • Apple
          • -
            security
            F
            license
            -
            quality
            An MCP server that enables LLMs to access Slack's search functionality to retrieve users, channels, messages, and thread replies from a Slack workspace.
            Last updated -
            3
          • A
            security
            A
            license
            A
            quality
            The most powerful MCP server for Slack Workspaces. This integration supports both Stdio and SSE transports, proxy settings and does not require any permissions or bots being created or approved by Workspace admins 😏.
            Last updated -
            2
            755
            MIT License
            • Apple
            • Linux
          • -
            security
            F
            license
            -
            quality
            A FastMCP-based server that provides complete Slack integration for Cursor IDE, allowing users to interact with Slack API features using natural language.
            Last updated -

          View all related MCP servers

          MCP directory API

          We provide all the information about MCP servers via our MCP API.

          curl -X GET 'https://glama.ai/api/mcp/v1/servers/yeoamlog/slack-mcp-server'

          If you have feedback or need assistance with the MCP directory API, please join our Discord server