Skip to main content
Glama

Slack MCP Server - Complete Implementation

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

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

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

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

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

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

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

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

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

Related MCP server: Slack Search MCP Server

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

πŸ”΄ ν•„μˆ˜ κΈ°λŠ₯ (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

Latest Blog Posts

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