Slack MCP服务器

一个基于HTTP的模型上下文协议(MCP)服务器,允许MCP兼容客户端(包括Claude Connectors和Strawberry Browser)与Slack工作区交互。

  • by kghamilton89
  • JavaScript
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 kghamilton89/slack-mcp

使用说明

Slack MCP服务器

基于HTTP的 模型上下文协议(MCP) 允许MCP兼容客户端的服务器(包括 克劳德连接器 和 草莓浏览器)与Slack工作区交互。

此服务器使用MCP协议公开Slack功能(频道、消息、用户和直接消息) 单个HTTP端点 并且被设计为部署在 铁路.

它的灵感来自最初的Anthropic MCP Slack示例,但经过改编 远程HTTP/SSE使用 而不是本地stdin/stdout。


特性

  • 列出公共Slack频道
  • 加入现有的公共渠道
  • 创建和管理公共渠道
  • 将消息发布到频道
  • 读取频道消息历史记录
  • 添加和删除表情符号反应
  • 阅读表情符号对消息的反应
  • 通过电子邮件或姓名查找Slack用户
  • 检索详细的用户配置文件
  • 打开并列出直接消息(DM)通道
  • 读取直接消息历史记录
  • 向用户发送直接消息(DM)
  • 创建、阅读、编辑和删除Slack画布

需求

  • GitHub帐户
  • Slack工作区,您可以在其中创建应用程序
  • 铁路账户

Slack应用程序设置

1.创建Slack应用程序

  1. 首选 https://api.slack.com/apps
  2. 点击 创建新应用程序
  3. 选择 从头开始
  4. 选择您的Slack工作区

2.配置Bot令牌作用域

导航到 OAuth和权限 并添加以下内容 Bot令牌范围:

  • app_mentions:read
  • canvases:read
  • canvases:write
  • channels:read
  • channels:history
  • channels:join
  • channels:manage
  • chat:write
  • im:read
  • im:write
  • im:history
  • reactions:read
  • reactions:write
  • users:read
  • users:read.email
  • users.profile:read

这些作用域是发布消息、阅读频道、查找用户、发送直接消息、管理Canvases以及使用MCP服务器可能执行的其他任务所必需的。

3.将应用程序安装到您的工作区

  1. 点击 安装到工作区
  2. 授权应用程序
  3. 复制 Bot用户OAuth令牌 (开始于 xoxb-)

4.获取您的Slack工作区(团队)ID

  1. 在浏览器中打开Slack
  2. 打开任何频道
  3. 从URL https://app.slack.com/client/T01234ABCD/C98765432,以开头的值 T 是您的工作区/团队ID

铁路部署

1.分叉存储库

  1. 将此存储库分叉到您自己的GitHub帐户

2.部署到铁路

  1. 首选 https://railway.app (使用我的推荐链接注册 如果需要)
  2. 点击 新项目
  3. 选择 从GitHub回购部署
  4. 选择您的分叉存储库
  5. Railway将自动检测Node.js应用程序并部署它

3.配置环境变量

在Railway中,打开您的服务并添加以下变量:

SLACK_BOT_TOKEN=xoxb-your-bot-token-here  
SLACK_TEAM_ID=T01234567
变量 必填 描述
SLACK_BOT_TOKEN 是 Slack Bot用户OAuth令牌
SLACK_TEAM_ID 是 Slack工作区/团队ID
PORT 否 铁路自动设置

保存变量后,Railway将自动重新部署服务。

4.验证部署

部署后,您的服务将在Railway生成的URL上可用。您可以验证该服务是否正在使用 /health 终点。


MCP端点

MCP服务器暴露在以下路径中: /sse/mcp

您的完整MCP端点将如下所示: https://your-service-name.up.railway.app/sse/mcp

此端点处理:

  • MCP初始化
  • 工具调用
  • 流媒体响应
  • 会话管理

连接到克劳德

  1. 打开克劳德>设置>连接器
  2. 点击 添加连接器
  3. 选择 MCP服务器
  4. 输入您的MCP端点URL:https://your-service-name.up.railway.app/sse/mcp
  5. 保存并连接

连接后,Claude可以在聊天中直接调用Slack工具。


连接到草莓浏览器

  1. 打开草莓>个人资料图片菜单>设置>集成>自定义MCP
  2. 配置草莓浏览器以使用MCP端点: https://your-service-name.up.railway.app/sse/mcp

工具

下面列出了服务器中包含的所有工具。

渠道和消息工具

  • slack_list_channels –列出公共Slack频道
  • slack_join_channel –加入现有的公共频道
  • slack_create_channel –创建新的公共频道
  • slack_rename_channel –重命名现有频道
  • slack_post_message –向频道发布消息
  • slack_get_channel_history –从频道获取最新消息
  • slack_add_reaction –在消息中添加表情符号反应
  • slack_remove_reaction –从消息中删除表情符号反应
  • slack_get_reactions –列出对消息的反应

用户和直接消息工具

  • slack_find_user –通过电子邮件或姓名查找用户
  • slack_get_user_profile –检索用户的个人资料信息
  • slack_open_dm –与用户打开直接消息(DM)通道
  • slack_list_dms –列出直接消息渠道
  • slack_get_dm_history –从DM通道获取消息历史记录
  • slack_send_dm –向用户发送直接消息

画布工具

  • slack_canvas_create –创建Slack画布
  • slack_canvas_get –检索Slack画布
  • slack_canvas_edit –编辑现有的Slack画布
  • slack_canvas_delete –删除Slack画布

贡献

欢迎问题和拉取请求。

免责声明

我只是一个在互联网上的人,你正在部署强大的代码,这对你自己和他人的数据隐私产生了严重影响。请确保您完全了解此过程,包括其风险,并保护您的Railway URL免受暴露,因为这将使任何人都可以直接访问您的Slack工作区。