mcpField
S
Slack Explorer MCP

Slack Explorer MCP

本地服务
github.com/shibayu36通信协作5025 周前更新

关于 Slack Explorer MCP

Slack Explorer MCP 是专门用于检索 Slack 消息和线程信息的 MCP 服务,使用用户令牌(xoxp)访问当前用户可见的内容。适合需要在 AI 客户端中查询 Slack 历史信息的用户。

主要功能

  1. 01按频道、用户、日期等条件搜索消息
  2. 02获取消息线程的全部回复
  3. 03批量查询用户资料
  4. 04搜索文件并读取画布内容
  5. 05支持 stdio 与 Streamable HTTP 两种传输方式

适用场景

  1. 01在 AI 客户端中查找上周某频道的相关讨论
  2. 02获取某条消息的全部线程回复进行总结
  3. 03按关键词或文件类型查找 Slack 中的文件与画布

MCP 相关

该项目是 MCP 服务,向 MCP 客户端暴露消息搜索、线程回复、用户资料、文件搜索和画布内容等工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"shibayu36-slack-explorer": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/shibayu36/slack-explorer-mcp:0.12.0"
]
}
}
}
启动命令docker run -i --rm ghcr.io/shibayu36/slack-explorer-mcp:0.12.0

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocighcr.io/shibayu36/slack-explorer-mcp:0.12.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Slack Explorer MCP Server

一个专门用于检索 Slack 消息和线程信息的模型上下文协议(MCP)服务。它使用用户令牌(xoxp)提供工具,以访问经过身份验证的用户可查看的消息。

可用工具

  • 消息搜索(search_messages)

    • 使用高级筛选选项搜索 Slack 消息。可按频道、用户、日期范围和特定特征(回应、文件等)搜索。
    • 参数
      • query:基本搜索查询。包含修饰符请使用专用字段(此字段不接受未指定字段的修饰符)。此处允许使用前缀为 - 的排除修饰符(例如,-in:#channel)。
      • in_channel:按频道名称筛选(例如,“general”、“team-dev”)
      • from_user:搜索特定用户发出的消息(用户 ID)
      • with:搜索与特定用户的私信/线程(用户 ID 数组)
      • before、after、on:按日期范围筛选(YYYY-MM-DD 格式)
      • during:指定时间段(例如,“July”、“2023”)
      • has:包含特定特征的消息(表情符号、“pin”、“file”、“link”、“reaction”)
      • hasmy:你使用特定表情符号回应过的消息
      • sort:排序方式(“score”或“timestamp”)
      • count:每页结果数(1-100,默认值:20)
      • page:页码(1-100,默认值:1)
  • 线程回复(get_thread_replies)

    • 获取消息线程中的所有回复。支持分页,以便高效处理大量回复。
    • 参数
      • channel_id:频道 ID(必填)
      • thread_ts:父消息时间戳(必填)
      • limit:要检索的回复数(1-1000,默认值:100)
      • cursor:分页游标
  • 用户资料(get_user_profiles)

    • 批量获取多位用户的资料信息。指定用户 ID 列表,即可检索显示名称、真实姓名、电子邮件地址及其他资料信息。
    • 参数
      • user_ids:用户 ID 数组(必填,最多 100 个)
  • 按显示名称搜索用户(search_users_by_name)

    • 按用户的显示名称搜索。支持区分大小写的精确匹配和部分匹配搜索。
    • 参数
      • display_name:要搜索的显示名称(必填)
      • exact:启用精确匹配搜索
  • 文件搜索(search_files)

    • 搜索画布、PDF 和图片等文件。可按文件类型、频道、用户和日期范围筛选。
    • 参数
      • query:基本搜索查询。包含修饰符请使用专用字段(此字段不接受未指定字段的修饰符)。此处允许使用前缀为 - 的排除修饰符(例如,-type:pdfs)。
      • types:按文件类型筛选(例如,["canvases", "pdfs"])。可用类型:lists、canvases、documents、emails、images、pdfs、presentations、snippets、spreadsheets、audio、videos
      • in_channel:按频道名称筛选(例如,“general”、“team-dev”)
      • from_user:搜索特定用户的文件(用户 ID)
      • with_users:搜索与特定用户的私信/线程中的文件(用户 ID 数组)
      • before、after、on:按日期范围筛选(YYYY-MM-DD 格式)
      • count:每页结果数(1-100,默认值:20)
      • page:页码(1-100,默认值:1)
  • 画布内容(get_canvas_content)

    • 获取 Slack 画布的 HTML 内容。指定画布 ID 即可检索画布内容。
    • 参数
      • canvas_ids:画布 ID 数组(必填,最多 20 个)

设置

获取 Slack 用户令牌
  1. 在 Slack API 中创建应用
  2. 在 OAuth & Permissions 中添加以下用户令牌范围:
    • channels:history - 用于公共频道
    • groups:history - 用于私密频道
    • im:history - 用于私信
    • mpim:history - 用于群组私信
    • search:read - 用于搜索消息
    • users.profile:read - 用于用户个人资料
    • users:read - 用于用户信息
    • files:read - 用于访问文件内容
  3. 将应用安装到你的工作区
  4. 获取用户 OAuth 令牌(以 xoxp- 开头)
    • 提示:若要在同一工作区中供多个用户使用,请将他们添加为协作者,并让每位用户从 OAuth & Permissions 重新安装应用,以获取各自的用户 OAuth 令牌
MCP 服务配置
  1. 配置 mcp.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"
          ]
        }
      }
    }
    

    如果你使用 Claude Code:

    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. 使用 Agent 执行 Slack 搜索

    示例:

    • “搜索上周 general 频道中与会议相关的消息”
    • “查找 @john.doe 关于 ‘project’ 的消息”
    • “获取此帖子的所有串回复”

用法

常见搜索模式
  • 在特定频道中搜索

    Search for "release" messages in the general channel
    
  • 搜索特定用户发送的消息

    Search for yesterday's messages from @john.doe
    
  • 搜索带有表情回应的消息

    Search for messages with :fire: reactions
    
  • 搜索你回应过的消息

    Search for messages where you reacted with :eyes:
    
  • 搜索带有文件附件的消息

    Search for messages with file attachments
    
用作 Streamable HTTP 服务

默认情况下,服务使用 stdio 进行 MCP 通信。你可以通过设置 TRANSPORT=http 环境变量,将其作为 Streamable HTTP 服务启动。在 HTTP 模式下,通过 X-Slack-User-Token 标头传递 Slack 令牌。

启动服务:

# 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 port
docker 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

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。