תקציר ערוצים לבוקר
Every weekday at 8:30, read yesterday's messages in my team channel, summarize the decisions made and anything that mentions me, and save it as slack-digest.md in my Notes folder.
שרת MCP מאומת: Slack
רשימת הכלים למטה היא לכידה חיה מהשרת הרץ; קריאת כלי מאומתת עדיין ממתינה להרשאות.
התשובה הקצרה
אומת לאחרונה 2026-08-03
שרת ה-MCP ל-Slack מחבר עוזר AI למרחב עבודה ב-Slack: רשימת ערוצים, קריאת היסטוריה ושרשורים, שליחת הודעות, הוספת תגובות אמוג׳י ואיתור אנשים. בשנת 2026 השם הזה מכסה שלושה דברים שונים, וההבדל ביניהם חשוב. החבילה שכמעט כל מדריך עדיין מפנה אליה, @modelcontextprotocol/server-slack, נמצאת בארכיון: npm מסמן אותה כמיושנת והקוד שלה עבר למאגר servers-archived. היא עדיין מותקנת ועדיין רצה, ולכן הרצנו אותה, ספרנו את כל 8 הכלים שהיא חושפת ושמרנו את הפלט הגולמי, כולל השגיאות המדויקות שהיא מחזירה כשאישור הגישה שגוי. Slack עצמה מפעילה היום שרת MCP מארח רשמי בכתובת mcp.slack.com שמנהל מרחב העבודה צריך לאשר, ו-korotovsky/slack-mcp-server הוא שרת הקהילה המתוחזק שמתקינים לבד. שלושתם נמצאים בעמוד הזה, עם הקבלות לכל אחד. [1][3][9][7]
אימות
השיטה
הרצנו את השרת עם npx על גבי stdio, השלמנו את לחיצת היד של MCP וקראנו ל-tools/list. טבלת הכלים למטה היא התשובה הזו, מילה במילה, וגרסת הפרוטוקול למעלה נקראה ישירות מתשובת ה-initialize הגולמית. החבילה יוצאת מיד אם SLACK_BOT_TOKEN ו-SLACK_TEAM_ID אינם מוגדרים, לכן הגדרנו את שניהם לערכי דמה ברורים במקום טוקן אמיתי של מרחב עבודה: מספיק כדי להפעיל את השרת ולספור מה הוא מציע, לא מספיק כדי להגיע ל-Slack. קריאת הכלי היחידה שביצענו חזרה עם invalid_auth של Slack עצמה, מודפסת למטה. קריאה מאומתת עדיין ממתינה להרשאות.
הודעת הפתיחה של השרת
Starting Slack MCP Server... Connecting server to transport... Slack MCP Server running on stdio
קריאת כלי אמיתית אחת
tools/call slack_list_channels {"limit": 5}{"ok":false,"error":"invalid_auth"}שורות אמיתיות מהתוצאה שנלכדה: מספיק כדי להוכיח שהקריאה נענתה.
כלים
השרת ענה ל-tools/list עם 8 כלים בתאריך 2026-08-03. השמות, התיאורים והפרמטרים למטה הם המילים שלו עצמו, מועתקים מהתשובה הזו וללא עריכה.
| כלי | מה הוא עושה |
|---|---|
| slack_list_channelslimitcursor | List public or pre-defined channels in the workspace with pagination |
| slack_post_messagechannel_id*text* | Post a new message to a Slack channel |
| slack_reply_to_threadchannel_id*thread_ts*text* | Reply to a specific message thread in Slack |
| slack_add_reactionchannel_id*timestamp*reaction* | Add a reaction emoji to a message |
| slack_get_channel_historychannel_id*limit | Get recent messages from a channel |
| slack_get_thread_replieschannel_id*thread_ts* | Get all replies in a message thread |
| slack_get_userscursorlimit | Get a list of all users in the workspace with their basic profile information |
| slack_get_user_profileuser_id* | Get detailed profile information for a specific user |
פרמטרים המסומנים ב-* הם חובה.
התקנה
העתיקו את הבלוק של האפליקציה שלכם. כל אחד מהם הוא ההגדרה המדויקת שאיתה אימתנו את השרת.
פתחו את הקובץ ~/Library/Application Support/Claude/claude_desktop_config.json (בתוך Claude Desktop: Settings, אחר כך Developer, אחר כך Edit Config) והוסיפו:
{
"mcpServers": {
"slack": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-slack"
],
"env": {
"SLACK_BOT_TOKEN": "xoxb-your-bot-token",
"SLACK_TEAM_ID": "T01234567"
}
}
}
}הדביקו את הטוקן ואת מזהה מרחב העבודה שלכם, ואז סגרו ופתחו מחדש את Claude Desktop. אם מנהל ה-Slack שלכם אישר זאת, יש מסלול שני בלי JSON בכלל: Slack מפעילה שרת MCP מארח רשמי, ו-Claude Desktop מוסיף אותו מעמוד ה-Connectors במקום. [11][5][10]
פקודה אחת בטרמינל:
claude mcp add --env SLACK_BOT_TOKEN=xoxb-your-bot-token --env SLACK_TEAM_ID=T01234567 --transport stdio slack -- npx -y @modelcontextprotocol/server-slack
כל מה שאחרי המקף הכפול הוא הפקודה המדויקת ש-Claude Code יריץ. הדגל --transport יושב בין זוג ה---env האחרון לבין שם השרת בכוונה: התיעוד מזהיר ששם שמופיע מיד אחרי --env נקרא כזוג KEY=value נוסף ונדחה. ל-Slack יש גם תוסף ל-Claude Code שמחבר את השרת המארח שלה דרך OAuth במקום. [12][10]
הוסיפו ל-~/.cursor/mcp.json עבור כל הפרויקטים, או ל-.cursor/mcp.json בתוך פרויקט אחד:
{
"mcpServers": {
"slack": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-slack"
],
"env": {
"SLACK_BOT_TOKEN": "xoxb-your-bot-token",
"SLACK_TEAM_ID": "T01234567"
}
}
}
}Cursor קורא את הקובץ מחדש אחרי הפעלה מחדש. התייחסו אליו כמו לכל קובץ שיש בו טוקן: זהו טקסט גלוי על הדיסק, לכן שמרו אותו מחוץ למאגר קוד שאתם דוחפים. [13]
בלי קובץ JSON ובלי טרמינל. ב-Routines: Settings, אחר כך Assistant, אחר כך Connections, אחר כך Add MCP Server. העבירו את הטופס ל-Command (stdio) והזינו:
Name Slack Command npx Arguments -y @modelcontextprotocol/server-slack Environment Variables SLACK_BOT_TOKEN xoxb-your-bot-token SLACK_TEAM_ID T01234567
הערך בשדה ה-Arguments מתפצל לפי רווחים, לכן השאירו אותו בדיוק בשלוש המילים האלה. הטוקן נכנס ל-Environment Variables, לעולם לא ל-Arguments. לחצו קודם על Test Connection: שרת תקין עונה עם מספר הכלים שלו, שמונה עבור השרת הזה. [14][5]
בלי טרמינל
אם מעולם לא פתחתם את הטרמינל ואין לכם כוונה להתחיל, זה המסלול שלכם. Routines היא אפליקציית Mac שמריצה שרתי MCP בשבילכם: ממלאים כמה שדות פעם אחת, והכלים של השרת זמינים ל-AI שלכם בצ׳אט ובשגרות מתוזמנות. החלק המסובך היחיד הוא הטוקן של Slack, וזו עקיפה של חמש דקות באתר של Slack עצמה.
01
הורידו את האפליקציה מ-getroutines.ai/download, גררו אותה ל-Applications והתחברו.
02
היכנסו ל-api.slack.com/apps, לחצו Create New App, בחרו From scratch ובחרו את מרחב העבודה שלכם. תחת OAuth & Permissions הוסיפו את ההרשאות שהשרת צריך: channels:history, channels:read, chat:write, reactions:write, users:read ו-users.profile:read. לחצו Install to Workspace, ואז העתיקו את ה-Bot User OAuth Token שמתחיל ב-xoxb- ונשמר שם. תצטרכו גם את מזהה מרחב העבודה, זה שמתחיל באות T.
03
חזרה ב-Routines, לחצו על החשבון שלכם בתחתית סרגל הצד ובחרו Settings. פתחו את הקטע Assistant, אחר כך את הלשונית Connections, גללו אל MCP Servers ולחצו על Add MCP Server.
04
הטופס נפתח במצב URL (SSE/HTTP) כברירת מחדל. העבירו אותו ל-Command (stdio): השרת הזה הוא פקודה, לא כתובת אינטרנט. Name: Slack. Command: npx. Arguments: -y @modelcontextprotocol/server-slack, בדיוק שלוש המילים האלה.
05
תחת Environment Variables הוסיפו את SLACK_BOT_TOKEN עם הטוקן שמתחיל ב-xoxb- ואת SLACK_TEAM_ID עם מזהה מרחב העבודה. לחצו Test Connection: Routines מפעילה את השרת בלי לשמור אותו ומדווחת כמה כלים היא מצאה, שמונה עבור השרת הזה. אחר כך לחצו Add Server.
06
הכלים עובדים בצ׳אט מיד. כדי לתת לשגרה מתוזמנת להשתמש בהם, פתחו את השגרה, מצאו את הכרטיס Tools & connections וסמנו את השרת תחת Apps.
רעיונות לשגרות
אחרי שהשרת מחובר, שגרה מתוזמנת יכולה להשתמש בכלים שלו גם כשאתם לא מול המסך. העתיקו פרומפט, הדביקו אותו ב-Routines ובחרו שעה. הפרומפטים כתובים באנגלית בכוונה, מדביקים אותם בדיוק כפי שהם.
Every weekday at 8:30, read yesterday's messages in my team channel, summarize the decisions made and anything that mentions me, and save it as slack-digest.md in my Notes folder.
Every Wednesday at 15:00, look through the last seven days of messages in my project channel, list the threads where someone asked a question that never got a reply, and write them to open-threads.md with a link to each thread.
Every Friday at 16:30, read this week's messages in my project channel, draft a five-line summary of what shipped and what is still open, show it to me for approval, and then post it to that same channel.
פתרון תקלות
שגיאות אמיתיות שנלכדו בריצת האימות, מודפסות בדיוק כפי שהשרת החזיר אותן.
מה רואים
Please set SLACK_BOT_TOKEN and SLACK_TEAM_ID environment variables
הפתרון
שני המשתנים הם חובה והשרת בודק אותם לפני כל דבר אחר. SLACK_BOT_TOKEN הוא ה-Bot User OAuth Token שמתחיל ב-xoxb-, ו-SLACK_TEAM_ID הוא מזהה מרחב העבודה, שמתחיל באות T. ב-Claude Desktop וב-Cursor הם נכנסים לבלוק ה-env; ב-Routines הם נכנסים ל-Environment Variables, לא ל-Arguments.
מה רואים
{"ok":false,"error":"invalid_auth"}הפתרון
זו התשובה של Slack, לא של השרת: השרת העביר את הטוקן שלכם הלאה ו-Slack דחתה אותו. זה בדיוק מה שהריצה שלנו הפיקה, כי הפעלנו את השרת עם טוקן דמה בכוונה. בדקו שהעתקתם את ה-Bot User OAuth Token ולא את ה-Signing Secret או את ה-App-Level Token, שהאפליקציה עדיין מותקנת במרחב העבודה, ושהטוקן לא הוחלף.
מה רואים
npm warn deprecated @modelcontextprotocol/server-slack@2025.4.25: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
הפתרון
מדויק, וזו לא תקלה: ההתקנה ממשיכה והשרת רץ. שרת ה-Slack הרשמי של הפרויקט הועבר למאגר servers-archived, וגרסת ה-npm האחרונה שלו מתוארכת ל-2025-04-25. אם אתם רוצים משהו בתחזוקה פעילה, השתמשו בשרת ה-MCP המארח של Slack עצמה או בשרת הקהילה korotovsky/slack-mcp-server במקום.
מה רואים
{"level":"fatal","timestamp":"2026-08-03T06:07:04+03:00","message":"Authentication required: Either SLACK_MCP_XOXP_TOKEN, SLACK_MCP_XOXB_TOKEN, or both SLACK_MCP_XOXC_TOKEN and SLACK_MCP_XOXD_TOKEN must be provided","app":"slack-mcp-server","stacktrace":"github.com/korotovsky/slack-mcp-server/pkg/provider.New\n\t/Users/runner/work/slack-mcp-server/slack-mcp-server/pkg/provider/api.go:682\nmain.main\n\t/Users/runner/work/slack-mcp-server/slack-mcp-server/cmd/slack-mcp-server/main.go:71\nruntime.main\n\t/Users/runner/hostedtoolcache/go/1.25.9/arm64/src/runtime/proc.go:285"}הפתרון
זו הפקודה npx -y slack-mcp-server בלי שום אישור גישה. הוא משתמש בקבוצת משתנים אחרת מזו של שרת הפרויקט, והוא מאמת אותם מול Slack עוד לפני שהוא מוכן לדבר MCP בכלל, כך שערך דמה לא ייתן לכם רשימת כלים. תנו לו אחד מבין SLACK_MCP_XOXP_TOKEN, SLACK_MCP_XOXB_TOKEN, או את הצמד SLACK_MCP_XOXC_TOKEN ו-SLACK_MCP_XOXD_TOKEN. הקפדנות הזו היא הסיבה שטבלת הכלים בעמוד הזה נספרה מהשרת שבארכיון במקום.
מה רואים
{"jsonrpc":"2.0","id":null,"error":{"code":-32001,"message":"missing_token"}}הפתרון
קיבלנו את זה כתשובת HTTP 401 מהכתובת https://mcp.slack.com/mcp בלי אישורי גישה מצורפים. השרת המארח של Slack אינו שרת שמדביקים לו טוקן: הוא דורש חיבור OAuth, ומנהל מרחב העבודה צריך לאשר קודם את לקוח ה-MCP. הוסיפו אותו דרך זרימת המחבר או התוסף של הלקוח שלכם, שמריצה את לחיצת היד של OAuth בשבילכם, במקום להפנות אליו כתובת גולמית.
שאלות נפוצות
זו תוכנה קטנה שיושבת בין עוזר AI לבין מרחב עבודה ב-Slack ומדברת את פרוטוקול ה-Model Context Protocol. אחרי החיבור, עוזר כמו Claude יכול להציג רשימת ערוצים, לקרוא היסטוריית ערוץ ותשובות בשרשור, לשלוח הודעות, להוסיף תגובות אמוג׳י ולאתר אנשים. הגרסה שהרצנו כאן רצה כתהליך מקומי על ה-Mac שלכם ומדברת עם אפליקציית ה-AI על גבי stdio. [5][6]
יש שלוש תשובות אמיתיות. Slack מפעילה היום שרת MCP מארח רשמי בכתובת mcp.slack.com, שמתחברים אליו דרך OAuth ושמנהל מרחב העבודה צריך לאשר: זה המסלול הבטוח ביותר בתוך חברה. korotovsky/slack-mcp-server הוא שרת הקהילה המתוחזק שמריצים לבד, והוא הבחירה אם אתם רוצים תהליך מקומי עם חיפוש והודעות פרטיות. החבילה שבעמוד הזה, @modelcontextprotocol/server-slack, נמצאת בארכיון ומסומנת כמיושנת, והיא עדיין מה שרוב המדריכים מציגים; היא עובדת, אבל אף אחד לא מתקן אותה. [9][7][8][1][3]
השרת הרץ חושף 8 כלים: קריאה (slack_list_channels, slack_get_channel_history, slack_get_thread_replies), כתיבה (slack_post_message, slack_reply_to_thread, slack_add_reaction) ואנשים (slack_get_users, slack_get_user_profile). הטבלה למעלה היא פלט ה-tools/list החי, מילה במילה. השרת המארח של Slack מציע מערכת רחבה יותר, כולל חיפוש בהודעות ובקבצים ועריכת קנבסים. [9]
טוקן בוט של Slack שמתחיל ב-xoxb-, ולצדו מזהה מרחב העבודה שמתחיל באות T. יוצרים את שניהם על ידי בניית אפליקציית Slack בכתובת api.slack.com/apps והתקנתה במרחב העבודה. ה-README מפרט את ההרשאות שהכלים צריכים: channels:history, channels:read, chat:write, reactions:write, users:read ו-users.profile:read. בהתאם להגדרות מרחב העבודה, התקנת אפליקציה עשויה לדרוש אישור של מנהל. [5]
שתי שאלות נפרדות מסתתרות כאן. הקוד הוא קובץ TypeScript אחד בן 582 שורות שקורא רק ל-Slack Web API, ואפשר לקרוא אותו בישיבה אחת; אבל אין לו מתחזק, ולכן שום דבר בו לא יתוקן. השאלה הגדולה יותר היא היקף: הטוקן שאתם מדביקים יכול לשלוח הודעות ולהגיב בשם האפליקציה שלכם, לכן הגדירו את אפליקציית ה-Slack בצמצום, הזמינו את הבוט רק לערוצים שהוא צריך, וזכרו שמשתנה אופציונלי בשם SLACK_CHANNEL_IDS יכול לקבע את slack_list_channels לרשימה סגורה. [6][5]
לא. ב-Routines ממלאים את השדות בהגדרות ולוחצים Test Connection; המדריך למעלה מראה כל לחיצה, כולל הצד של Slack. Claude Desktop דורש עריכה חד-פעמית של קובץ JSON קטן, או בלי קובץ בכלל אם משתמשים במחבר של Slack. רק Claude Code הוא כלי טרמינל מטבעו. [14][11][10]
כי ספירת כלים לא נוגעת ב-Slack בכלל. השרת בודק ש-SLACK_BOT_TOKEN ו-SLACK_TEAM_ID קיימים, עולה, ועונה ל-tools/list מתוך הקוד שלו עצמו, ולכן ערך דמה מספיק כדי שיתאר את עצמו בכנות. ברגע שכלי באמת רץ, הבקשה יוצאת ל-Slack וערך הדמה נחשף, וזה ה-invalid_auth בקריאת הדוגמה למעלה. לכן העמוד הזה נושא את התג הכתום: טבלת הכלים היא לכידה אמיתית, וקריאה מאומתת עדיין ממתינה להרשאות.
מקורות
כל מה שבעמוד הזה שלא ראינו בעצמנו בריצה מקושר כאן, עם התאריך שבו קראנו אותו. לגבי השאר, הריצה עצמה היא הקבלה.
[1]
Latest version 2025.4.25, published 2025-04-25, flagged deprecated: Package no longer supported.
[2]
[3]
Archived repository, 293 stars, last push 2025-05-28, per the GitHub API. Described as reference MCP servers that are no longer maintained.
[4]
MIT License, Copyright (c) 2024 Anthropic, PBC.
[5]
The bot scopes, the xoxb- token, the team ID and the optional SLACK_CHANNEL_IDS variable.
[6]
582 lines; instantiates StdioServerTransport, so the server speaks stdio.
[7]
The maintained community server, written in Go. 1,763 stars, last push 2026-07-16, MIT, per the GitHub API.
[8]
Latest version 1.3.0, published 2026-05-14, maintainer korotovsky.
[9]
Slack's own hosted MCP server: search, messages, canvases, users, and admin approval of MCP clients.
[10]
The hosted endpoint https://mcp.slack.com/mcp over HTTP with OAuth, plus the Claude Code plugin install.
[11]
The official Claude Desktop quickstart and the config file location.
[12]
The claude mcp add syntax for local stdio servers, and the warning about placing the server name straight after --env.
[13]
The mcp.json shape, including the env block, and the file locations.
[14]
How Routines runs one-click OAuth connectors and any MCP server.
העמוד הזה מתאר את Slack כפי שהתנהג בריצה מתוארכת אחת על Mac אחד. גרסאות משתנות: אם משהו כאן כבר לא תואם למה שאתם רואים, תאריך הלכידה בראש העמוד אומר בן כמה הצילום.
מאחורי המדריך הזה
Routines, האפליקציה שמאחורי המדריך הזה, מריצה שרתי MCP כמו זה בלי טרמינל: כך עובדים המחברים. התקצירים שהיא כותבת נשארים קובצי markdown על ה-Mac שלכם, ואין חשבון ענן לשלם. להורדת Routines