Slack MCP Server

Slack MCP Server

Slack MCP 伺服器是一個模型上下文協議(MCP)伺服器,將 AI 代理(如 Claude Desktop 或任何兼容 MCP 的工具)連接到 Slack 工作區。這使得可以通過標準化接口安全地管理 Slack 頻道、發送信息和工作區互動。它允許大型語言模型(LLMs)輕鬆地閱讀、搜索和發送消息,管理頻道並訪問 Slack 資源。

Author: modelcontextprotocol


查看協議

什麼是 Slack MCP 伺服器?

Slack MCP 伺服器將 Slack 工作區的功能(如閱讀和發佈消息或管理頻道)作為標準化的 MCP 工具和資源。這讓 AI 代理可以安全地與你的 Slack 工作區互動,發送和獲取消息、訪問頻道歷史、管理成員等,而不需要自定義插件或手動編寫腳本。此過程不需要侵入式的訪問或工作區管理權限,使其成為 Slack 環境和 AI 驅動工作流程之間的靈活且安全的連接器。

如何配置 Slack MCP 伺服器

  1. 安裝 Slack MCP 伺服器
    • (對於 TypeScript)
      npx -y @modelcontextprotocol/server-slack
      
    • (對於 Python)
      pip install mcp-server-slack
      python -m mcp_server_slack
      
  2. 獲取所需的 Slack 令牌
    • 你需要一個具有適當範圍的 Slack 用戶令牌或機器人令牌(對於大多數功能需要 channels:historychannels:readchat:write 等)。
    • 通常,你不需要工作區管理令牌。
  3. 設置環境變量
    • 在運行伺服器之前,將所需令牌設置為環境變量:
      export SLACK_BOT_TOKEN="xoxb-***"
      export SLACK_USER_TOKEN="xoxp-***"
      # 使用合適的令牌。
      
  4. 添加到你的 MCP 客戶端配置
    • 在 Claude Desktop 或其他客戶端中註冊伺服器。示例:
      {
        "mcpServers": {
          "slack": {
            "command": "npx",
            "args": ["-y", "@modelcontextprotocol/server-slack"],
            "env": {
              "SLACK_BOT_TOKEN": "<your-slack-token>"
            }
          }
        }
      }
      
  5. 啟動你的客戶端/伺服器
    • 運行 MCP 客戶端(例如 Claude Desktop)。Slack MCP 伺服器將自動啟動並可用。

如何使用 Slack MCP 伺服器

  • 配置完成後,你的 MCP 兼容客戶端(例如 Claude Desktop)將自動啟用新的 Slack 命令和上下文工具。
  • 通過調用 tools/list 功能列出可用工具,如在聊天中使用 /tools/list 或通過客戶端的工具選擇器。
  • 使用工具命令如 send_messagelist_channelssearch_messages,通過你的 AI 代理像操作 Slack 一樣與 Slack 頻道互動。
  • 互動示例:
    • 「請列出我們 Slack 工作區中的所有頻道。」
    • 「向 #random 發送消息:嘿,團隊,這裡有個更新...
    • 「搜索有關最近項目的討論,包含 'launch'。」
  • 所有操作都是基於令牌的權限進行的;不會在允許的頻道或用戶之外執行任何操作。

主要特點

  • 頻道管理:列出頻道、加入/離開、創建或存檔頻道。
  • 消息發送:向任何被允許的頻道或私信發送和閱讀消息。
  • 消息搜索:在頻道中搜索相關對話。
  • 工作區發掘:檢索有關用戶、頻道和消息的元數據。
  • 尊重權限:在提供的 Slack 令牌範圍內運作;不需要過多的權限。
  • 無縫集成:與 Claude Desktop 及任何兼容 MCP 的客戶端配合使用,自動暴露 Slack 為工具和資源。
  • 不需要機器人批准:可以使用個人或機器人令牌運行,而不需要 Slack 工作區管理權限。

使用案例

  • 自動化會議助手:讓 LLM 總結討論主題、提取行動項目或自動發佈每日站立報告到 Slack。
  • 智能頻道監控:搜索問題、提及或關鍵字,並觸發工作流程或自動響應。
  • 上下文 AI 回復:AI 可以閱讀最近的對話歷史並在任何頻道中製作個性化回復。
  • 批量消息操作:根據 AI 驅動的提示,存檔、刪除或轉發頻道中的消息。
  • 上線機器人:在新成員加入時發送歡迎消息或上線指導。
  • 事件響應:監控錯誤或事件頻道以獲取警報,總結對話並發佈狀態更新。

常見問題

Q1: Slack MCP 伺服器需要管理員權限或特別批准嗎?
A1: 不需要。你只需一個具有正確範圍的用戶或機器人令牌(例如 channels:readchat:write),但通常不需要工作區管理權限或為大多數功能註冊自定義 Slack 應用。

Q2: AI 代理能讀取我的私信或 DM 嗎?
A2: AI 代理只能訪問機器人/用戶令牌允許訪問的 DM 或頻道。私密對話僅在你的令牌授予該範圍的情況下可訪問;所有內容都保持權限範圍內。

Q3: 如何執行權限和安全性?
A3: MCP 伺服器嚴格根據令牌的能力運作。它無法執行任何超出 Slack 令牌所允許範圍的操作,確保 AI 和你的工作區之間的安全橋接。

Q4: 如果我的 Slack 令牌過期或被撤回,會發生什麼?
A4: MCP 伺服器將失去訪問權限。只需通過更新環境變量並重新啟動伺服器來提供一個有效的新令牌即可。

Q5: 我可以為不同的工作區運行多個 Slack MCP 伺服器嗎?
_A5: 當然可以。你可以啟動具有不同令牌/配置的單獨伺服器實例,每個都在你的 MCP 客戶端中映射到特定工作區。