每日 MCP Server

Slack MCP:让 LLM 直接读写 Slack 消息、频道与文件的官方服务器

2026-08-01
网络仓库
支持客户端:
Claude CodeCursorVS CodeContinueCline
MCPSlack企业协同消息集成

简介

Slack MCP 是 ModelContextProtocol 官方维护的企业协同服务器,通过 Slack Web API 让 LLM 客户端能够发送消息、搜索频道、读取历史记录、上传文件、管理用户列表。无需自建 Slack Bot 轮询逻辑,一条 npx 命令即可让 Claude Code、Cursor、VS Code 等 MCP 客户端变成 Slack 助理。本文梳理核心能力、Bot Token 申请、各客户端配置与实战注意事项。

安装命令

npx -y @modelcontextprotocol/server-slack

简介

Slack MCP 是 ModelContextProtocol 官方仓库维护的企业协同服务器。它把 Slack Web API 包装为 MCP 工具,让任何兼容 MCP 的客户端都能通过统一协议操作 Slack,无需各自实现 OAuth 流程、无需维护事件订阅、无需轮询消息历史。

对企业用户而言,这意味着:让 AI 助理直接帮你"发个消息到 #engineering 频道"、"查一下昨天 #product 频道讨论了什么"、"把这个文件传到 #design"。

核心能力

工具名用途关键参数
slack_list_channels列出可访问的频道limit(默认 100)、cursor
slack_post_message发送消息到频道channel_id、text
slack_reply_to_thread回复某条消息的 threadchannel_id、thread_ts、text
slack_get_channel_history读取频道历史消息channel_id、limit
slack_get_thread_replies读取 thread 回复channel_id、thread_ts
slack_get_users列出工作区成员limit、cursor
slack_get_user_profile查询成员详情user_id
slack_upload_file上传文件到频道channels、filename、content 或 file_data
slack_search_messages搜索消息(需 search:read)query、count
slack_add_reaction给消息加 emoji 反应channel、timestamp、name

申请 Slack Bot Token

步骤 1:创建 Slack App

  1. 访问 https://api.slack.com/apps → 点击 Create New App
  2. 选择 From scratch → 填写 App 名称和工作区

步骤 2:配置 Bot Token Scopes

在 OAuth & Permissions 页面添加以下 Scopes:

channels:history       # 读取公开频道消息
channels:read          # 列出公开频道
chat:write             # 发送消息
files:write            # 上传文件
reactions:write        # 添加反应
search:read            # 搜索消息
users:read             # 读取成员列表
users.profile:read     # 读取成员资料
groups:history         # 读取私有频道(可选)
groups:read            # 列出私有频道(可选)

步骤 3:安装到工作区

点击 Install to Workspace → 授权 → 复制 Bot User OAuth Token(形如 xoxb-xxxxxxxx-xxxxxxxx)

步骤 4:邀请 Bot 进入频道

在 Slack 中对应频道输入 /invite @你的Bot名,否则 Bot 无法读写该频道。

各客户端配置示例

Claude Code(CLI)

编辑 ~/.claude/claude_desktop_config.json:

{
  "mcpServers": {
    "slack": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-slack"],
      "env": {
        "SLACK_BOT_TOKEN": "xoxb-your_token_here"
      }
    }
  }
}

启动后输入 /mcp 即可看到 slack 已连接。

Cursor

编辑 ~/.cursor/mcp.json:

{
  "mcpServers": {
    "slack": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-slack"],
      "env": {
        "SLACK_BOT_TOKEN": "xoxb-your_token_here"
      }
    }
  }
}

VS Code(Continue 插件)

编辑 ~/.continue/config.json:

{
  "experimental": {
    "modelContextProtocolServers": [
      {
        "transport": { "type": "stdio", "command": "npx", "args": ["-y", "@modelcontextprotocol/server-slack"] },
        "env": { "SLACK_BOT_TOKEN": "xoxb-your_token_here" }
      }
    ]
  }
}

Cline 插件

通过 Cline: MCP Settings 命令打开 cline_mcp_settings.json,结构与 Claude Desktop 一致。

实战场景

场景 1:让 Claude Code 做"会议纪要助理"

读取 #engineering 频道昨天 14:00-16:00 的所有消息,
提取讨论要点,整理成 Markdown 会议纪要,
然后发到 #meeting-notes 频道。

Claude Code 会依次调用 slack_get_channel_history → 处理时间戳过滤 → 整理要点 → slack_post_message。

场景 2:让 Cursor 做"工单分类助手"

每 10 分钟读取 #support 频道新消息,
按 bug / feature / 询问 三类打标签,
回复 thread 给出分类与建议处理路径。

配合 cron + Cursor MCP 调用即可实现半自动化。

场景 3:让 VS Code 做"代码评审通知员"

读取当前打开的 PR diff,
写一段中文评审摘要,
发到 #code-review 频道并 @ 提交者。

Cline + Continue 可直接调用 slack_post_message 完成通知。

场景 4:跨频道信息检索

搜索工作区内所有提到"Migration"的消息,
按时间倒序整理成表格,
包含频道、发言人、时间、链接。

slack_search_messages 支持完整 Slack 搜索语法(from:、in:、after:、before:)。

与 Webhook 方案对比

方案实时性双向交互配置复杂度MCP 兼容
Slack MCP按需查询✅ 读写低✅
Slack Event API(Webhook)实时推送需自建服务高❌
Slack Bolt SDK实时✅中❌
手动 Slack Web API按需✅高❌

MCP 方案的优势:零代码接入 AI 客户端,适合个人与小团队快速搭建 AI 助理。

注意事项

  1. Token 保密:SLACK_BOT_TOKEN 切勿提交到 Git,用 .env 或系统密钥链管理。
  2. 频道邀请:Bot 必须被 /invite 到目标频道才能读写,私有频道尤其重要。
  3. Rate Limit:Slack API 限制约 1 次/秒,超出返回 429,MCP 服务器已内置退避重试。
  4. 消息历史:channels:history 默认只能读最近 10000 条,更早需 Enterprise Grid。
  5. 文件上传:slack_upload_file 单文件上限 1GB,但 MCP 传输大文件较慢,建议走 URL。
  6. 搜索权限:search:read 需工作区管理员审批,免费版工作区可能无此权限。
  7. Thread 回复:slack_reply_to_thread 必须传 thread_ts,否则会发到频道主层级。
  8. 中文消息:Slack API 完全支持 UTF-8,但部分 MCP 客户端在 Windows 上可能有编码问题,建议用 UTF-8 终端。

安全建议

  • 最小权限原则:只申请实际需要的 Scope,避免 admin 类权限
  • 频道白名单:在 Prompt 中限定 Bot 只能操作特定频道,防止误发
  • 操作审计:让 Bot 在每次发送消息前先在本地日志记录
  • 测试环境:先在测试工作区验证,再部署到生产工作区
  • Token 轮换:每 90 天轮换一次 Bot Token

小结

Slack MCP 是企业用户最直接的 AI 协同入口:一条 npx、一个 Bot Token,就能让任意 MCP 客户端成为 Slack 助理。对于需要"读消息、发消息、查历史、传文件"的办公场景,几乎是必装组件。建议搭配 Filesystem MCP(管理本地文件)和 Brave Search MCP(联网搜索)组成企业办公三件套。

下一篇我们会讲 Google Drive MCP,看如何让 LLM 读写 Google Docs/Sheets/Drive。

相关推荐

查看更多 →
MCP网络

Slack MCP:让 AI 接入团队消息流,自动跟进任务与决策

团队的真知灼见都埋在 Slack 频道里——决策、反馈、待办、闲聊。Slack MCP 让 Claude/Cursor 直接读频道历史、发消息、查线程,把 AI 从'被问才答'升级成'主动协作'。本文拆解安装配置、核心能力、5 个实战场景与权限管控要点。

2026-08-15
#MCP#Slack
MCP编程开发

MCP Resources 实战:让服务端把 8 万行设计文档喂给 Agent,附四套客户端配置与13 行排查表

Tools 是「Agent 问你答」,Resources 是「你问Agent 答」——同一个 MCP Server 里,方向相反的两种能力,而且很多人在写 Server 时只实现了 Tools,漏掉了 Resources。结果是文档、规范、schema、日志这类只读数据只能靠 Agent 一个个调 Tool 去捞,每次捞都要过一次模型判断,成本高还不稳定。本文讲透MCP 四大原语里的第二个:Resources。涵盖 resources/list、resources/read、resources/templates/list 三个方法与 URI 模板机制(RFC 6570 展开规则),以及 Resource 与 Tool 的选型对照(把同一份数据做成 Tool 还是 Resource 的实测差异)。给出一个可运行的「设计文档中心」Server 完整实现(含 40+ 行 TypeScript,含分页、版本快照、访问审计),以及 Claude Code / Cursor / VS Code + Copilot / Trae 四套带中文注释的配置 JSON。三个实战场景:Agent 读设计文档回答「这个接口为什么这么设计」、按版本读取历史 schema 做迁移校验、把资源目录挂进 IDE 侧边栏。另含资源数量膨胀到 500+ 时的分页与 URI 命名规范、五条安全红线(为什么资源 URI 绝不能暴露绝对路径和凭据),以及 13 行故障排查表。

2026-10-13
#MCP#Model Context Protocol
MCP开发

MCP Elicitation 实战:让服务端在缺参数时反向向用户提问——受限 Schema 设计 + 四套客户端配置 + 13 行排查表

写 MCP Server 的人迟早会遇到一个尴尬场景:工具必填参数用户没给,服务端要么猜一个(猜错就出事),要么返回一个干巴巴的「缺少参数 xx」让 Agent 自己去追问(Agent 经常追问得驴唇不对马嘴)。MCP 协议里的 Elicitation 就是为这个场景设计的第三个「反向能力」——服务端可以在执行过程中主动向客户端发起一次提问,由客户端把问题渲染成表单弹给用户,用户填完再回传,全程服务端不需要自己实现任何 UI、不需要存任何凭据。本文讲透它的机制与边界:elicitation/create 请求的完整结构、为什么 requestedSchema 被刻意限制成只支持原始类型(这是安全设计不是能力不足)、用户的三种响应(accept / decline / cancel)各自的语义差异、以及最关键的——为什么不能在 Elicitation 里索取密码和 API Key。含 TypeScript SDK 完整实现(含类型定义与降级路径)、Claude Code / Cursor / VS Code + Copilot / Trae 四套带中文注释的配置、三个实战场景(部署确认 / 缺失参数补全 / 敏感操作二次确认)、与 Sampling / 传统参数校验的选型对比、六条安全注意事项,以及 13 行故障排查表。

2026-10-12
#MCP#Model Context Protocol
MCP开发

MCP Roots 与 Sampling 实战:让服务端主动划边界、反向要推理——四套客户端配置 + 14 行排查表

多数人写 MCP Server 只用到 Resources / Tools / Prompts 三项,Roots 和 Sampling 这两个反向能力基本闲置,结果就是 Server 既不知道自己该在哪干活,也没有推理能力。本文把这两个方向的能力讲透:Roots 是客户端告诉服务端「工作区边界在哪」的机制(URI 列表、roots/list 双向协商、listChanged 动态通知、路径穿越的必修防御),Sampling 是服务端反过来向客户端的 LLM 请求一次推理的机制(服务端不知道任何 API Key,模型由客户端挑、账由客户端付、人可以卡在中间审批)。含 TypeScript SDK 完整实现代码(含 sampling/createMessage 的类型定义与 human-in-the-loop 回调)、Claude Code / Cursor / VS Code + Copilot / Trae 四套带中文注释的配置、三个实战场景(单仓守卫 / 日志归因摘要 / 隐私脱敏代理)、与其他方案的选型对比表、六条安全注意事项,以及 14 行故障排查表。

2026-10-10
#MCP#Model Context Protocol