Slack Explorer MCP

io.github.shibayu36由 GitHub 帳號 shibayu36 發布v0.12.0更新於 Oct 24, 2026

MCP server specialized in retrieving information from Slack messages and threads

已驗證STDIO僅桌面知識與記憶溝通與協作

概覽

AI 產生的概覽

唯讀的 Slack 檢索伺服器,讓助理搜尋該使用者權杖可見的訊息、討論串、檔案、畫布與使用者資料。

可以做什麼
  • 依頻道、寄件者、日期範圍、表情回應、附件與排序方式搜尋訊息
  • 分頁讀取某則訊息討論串的所有回覆
  • 批次查詢使用者資料,並依顯示名稱尋找使用者
  • 搜尋畫布、PDF、圖片、試算表等檔案,並取得畫布的 HTML 內容
適用情境
適合讓助理翻查 Slack 歷史紀錄:在頻道與私訊中找回過去的討論、決策或附件,或完整取得某個討論串及相關人員資訊,而不必離開聊天用戶端。
執行需求
以 Docker 容器(ghcr.io/shibayu36/slack-explorer-mcp)在本機執行,通常使用 stdio。需要一個設定頻道、私訊、搜尋、使用者與檔案歷史權限的 Slack 應用程式,以及 Slack 使用者 OAuth 權杖(xoxp-),透過 SLACK_USER_TOKEN 傳入;設定 TRANSPORT=http 時改用 X-Slack-User-Token 標頭。
安裝前請注意
此 Slack 使用者權杖可讀取該使用者可見的一切內容,包括私有頻道與私訊,應視為敏感機密。HTTP 模式下權杖經標頭傳輸,且伺服器預設綁定所有網路介面,需限制主機與連接埠。檢索到的訊息、檔案與使用者資料(含電子郵件地址)會傳送給模型供應商。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Slack Explorer MCP,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Slack Explorer MCP Server

A Model Context Protocol (MCP) server specialized in retrieving information from Slack messages and threads. It provides tools to access messages that the authenticated user can view using a User Token (xoxp).

Available Tools

  • Message Search (search_messages)

    • Search Slack messages with advanced filtering options. You can search by channel, user, date range, and specific features (reactions, files, etc.).
    • Parameters
      • query: Basic search query. Use dedicated fields for inclusion modifiers (bare modifiers in this field are rejected). Exclusion modifiers prefixed with - (e.g., -in:#channel) ARE allowed here
      • in_channel: Filter by channel name (e.g., "general", "team-dev")
      • from_user: Search messages from specific user (User ID)
      • with: Search DMs/threads with specific users (array of User IDs)
      • before, after, on: Date range filtering (YYYY-MM-DD format)
      • during: Period specification (e.g., "July", "2023")
      • has: Messages containing specific features (emoji, "pin", "file", "link", "reaction")
      • hasmy: Messages where you reacted with specific emoji
      • sort: Sort method ("score" or "timestamp")
      • count: Number of results per page (1-100, default: 20)
      • page: Page number (1-100, default: 1)
  • Thread Replies (get_thread_replies)

    • Get all replies in a message thread. Supports pagination for efficiently handling large numbers of replies.
    • Parameters
      • channel_id: Channel ID (required)
      • thread_ts: Parent message timestamp (required)
      • limit: Number of replies to retrieve (1-1000, default: 100)
      • cursor: Pagination cursor
  • User Profiles (get_user_profiles)

    • Get profile information for multiple users in bulk. Retrieve display names, real names, email addresses, and other profile information by specifying a list of user IDs.
    • Parameters
      • user_ids: Array of user IDs (required, max 100)
  • Search Users by Display Name (search_users_by_name)

    • Search users by their display name. Supports both exact match and partial match search with case sensitivity.
    • Parameters
      • display_name: Display name to search for (required)
      • exact: Enable exact match search
  • File Search (search_files)

    • Search for files such as canvases, PDFs, and images. You can filter by file type, channel, user, and date range.
    • Parameters
      • query: Basic search query. Use dedicated fields for inclusion modifiers (bare modifiers in this field are rejected). Exclusion modifiers prefixed with - (e.g., -type:pdfs) ARE allowed here
      • types: Filter by file types (e.g., ["canvases", "pdfs"]). Available types: lists, canvases, documents, emails, images, pdfs, presentations, snippets, spreadsheets, audio, videos
      • in_channel: Filter by channel name (e.g., "general", "team-dev")
      • from_user: Search files from specific user (User ID)
      • with_users: Search files in DMs/threads with specific users (array of User IDs)
      • before, after, on: Date range filtering (YYYY-MM-DD format)
      • count: Number of results per page (1-100, default: 20)
      • page: Page number (1-100, default: 1)
  • Canvas Content (get_canvas_content)

    • Get HTML content of Slack canvases. Retrieve canvas content by specifying canvas IDs.
    • Parameters
      • canvas_ids: Array of canvas IDs (required, max 20)

Setup

Getting a Slack User Token

  1. Create an app at Slack API
  2. Add the following User Token Scopes in OAuth & Permissions:
    • channels:history - For public channels
    • groups:history - For private channels
    • im:history - For direct messages
    • mpim:history - For group direct messages
    • search:read - For message search
    • users.profile:read - For user profiles
    • users:read - For user information
    • files:read - For file content access
  3. Install the app to your workspace
  4. Get the User OAuth Token (starts with xoxp-)
    • Tip: To use with multiple users in the same workspace, add them as Collaborators and have each user reinstall from OAuth & Permissions to get their own User OAuth Token

MCP Server Configuration

  1. Configure mcp.json

    json
    {  "mcpServers": {    "slack-explorer-mcp": {      "command": "docker",      "args": ["run", "-i", "--rm", "--pull", "always",        "-e", "SLACK_USER_TOKEN=xoxp-your-token-here",        "ghcr.io/shibayu36/slack-explorer-mcp:latest"      ]    }  }}

    If you're using Claude Code:

    bash
    claude mcp add slack-explorer-mcp -- docker run -i --rm --pull always \  -e SLACK_USER_TOKEN=xoxp-your-token-here \  ghcr.io/shibayu36/slack-explorer-mcp:latest
  2. Use the agent to perform Slack searches

    Examples:

    • "Search for meeting-related messages in the general channel from last week"
    • "Find messages from @john.doe about 'project'"
    • "Get all thread replies for this post"

Usage

Common Search Patterns

  • Search in a specific channel

    Search for "release" messages in the general channel
  • Search messages from a specific user

    Search for yesterday's messages from @john.doe
  • Search messages with reactions

    Search for messages with :fire: reactions
  • Search messages you reacted to

    Search for messages where you reacted with :eyes:
  • Search messages with file attachments

    Search for messages with file attachments

Using as Streamable HTTP Server

By default, the server uses stdio for MCP communication. You can start it as a Streamable HTTP server by setting the TRANSPORT=http environment variable. In HTTP mode, pass the Slack token using the X-Slack-User-Token header.

Starting the server:

bash
# Start HTTP server (default: all interfaces 0.0.0.0, port 8080)docker run -i --rm --pull always \  -e TRANSPORT=http \  -p 8080:8080 \  ghcr.io/shibayu36/slack-explorer-mcp:latest
# Start with custom host and portdocker run -i --rm --pull always \  -e TRANSPORT=http \  -e HTTP_HOST=127.0.0.1 \  -e HTTP_PORT=9090 \  -p 9090:9090 \  ghcr.io/shibayu36/slack-explorer-mcp:latest

來源:README.md,提交 ea0b44d

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.12.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分