用途:借助 Rube MCP(Composio)的 Slack 工具集,自动化 Slack 工作区中的消息发送、搜索、频道与用户管理、表情回应、线程回复及定时发送等操作。
前提条件:Rube MCP 已连接(RUBE_SEARCH_TOOLS 可用);通过 RUBE_MANAGE_CONNECTIONS 并指定 toolkit slack 建立有效的 Slack 连接。每次操作前应先调用 RUBE_SEARCH_TOOLS 获取当前工具 schema。
设置:在客户端配置中添加 MCP 服务器 https://rube.app/mcp,无需 API 密钥;确认 RUBE_SEARCH_TOOLS 有响应;调用 RUBE_MANAGE_CONNECTIONS 并指定 slack;若连接非 ACTIVE,按返回的授权链接完成 Slack OAuth;确认状态为 ACTIVE 后再运行工作流。
主要能力与用法:
- 发送消息:用 SLACK_FIND_CHANNELS 解析频道 ID(需 query 参数),必要时用 SLACK_LIST_ALL_CHANNELS 兜底,用 SLACK_FIND_USERS、SLACK_OPEN_DM 处理私信或提及,再用 SLACK_SEND_MESSAGE 发送;优先使用 markdown_text。编辑消息用 SLACK_UPDATES_A_SLACK_MESSAGE,需保存频道与消息 ts。省略 thread_ts 会变成顶层消息。
- 搜索消息:SLACK_SEARCH_MESSAGES 支持 in:#channel、from:@user、before/after、has:link 等修饰符;结果在 response.data.messages.matches;用 SLACK_FETCH_MESSAGE_THREAD_FROM_A_CONVERSATION 展开线程,注意 has_more 与分页游标。
- 频道与用户管理:SLACK_FETCH_TEAM_INFO、SLACK_LIST_ALL_CHANNELS、SLACK_LIST_CONVERSATIONS、SLACK_LIST_ALL_USERS 等;工作区信息位于 response.data.team;列表接口需按 response_metadata.next_cursor 分页并按 id 去重;注意 HTTP 429 并遵循 Retry-After。
- 表情回应与线程:SLACK_ADD_REACTION_TO_AN_ITEM 需精确的频道 ID 与消息 timestamp,表情名称不带冒号;线程回复用 thread_ts。SLACK_FETCH_CONVERSATION_HISTORY 只返回主时间线,不含线程回复。
- 定时消息:SLACK_SCHEDULE_MESSAGE 使用 post_at 的 Unix 时间戳,最多提前 120 天。
限制:频道解析在私有频道且机器人未被邀请时可能为空;权限范围不足会导致 403,可用 SLACK_GET_APP_PERMISSION_SCOPES 检查;旧版 text、blocks 字段已弃用;新消息可能不会立即出现在搜索结果中。未提供的收费、价格等信息暂未说明。