article
README
🚀 Slack MCP 服务器
Slack MCP 服务器专为 Slack API 打造,它能够赋能 Claude,使其与 Slack 工作区实现交互,为工作沟通带来更多便利。
✨ 主要特性
本服务器提供了一系列实用工具,用于与 Slack 工作区进行交互,具体如下:
-
slack_list_channels:列出工作区中的公共频道。- 可选输入:
limit(数字,默认:100,最大值:200):返回的最大频道数量。cursor(字符串):分页游标的下一页标识符。
- 返回结果:包含 ID 和其他信息的频道列表。
- 可选输入:
-
slack_post_message:向 Slack 频道发送新消息。- 必填输入:
channel_id(字符串):要发送消息的目标频道 ID。text(字符串):待发送的消息文本。
- 返回结果:消息发布确认和时间戳。
- 必填输入:
-
slack_reply_to_thread:回复特定的消息线程。- 必填输入:
channel_id(字符串):包含线程的频道。thread_ts(字符串):父消息的时间戳。text(字符串):回复文本。
- 返回结果:回复确认和时间戳。
- 必填输入:
-
slack_add_reaction:为某条消息添加表情反应。- 必填输入:
channel_id(字符串):包含消息的频道。timestamp(字符串):要反应的消息的时间戳。reaction(字符串):表情符号名称(不带冒号)。
- 返回结果:反应确认。
- 必填输入:
-
slack_get_channel_history:获取频道中的近期消息。- 必填输入:
channel_id(字符串):目标频道 ID。
- 可选输入:
limit(数字,默认:10):要获取的消息数量。
- 返回结果:包含内容和其他元数据的消息列表。
- 必填输入:
-
slack_get_thread_replies:获取某条消息线程下的所有回复。- 必填输入:
channel_id(字符串):包含线程的频道。thread_ts(字符串):父消息的时间戳。
- 返回结果:包含 ID 和其他信息的回复列表。
- 必填输入:
-
slack_list_users:获取工作区中的用户列表。- 可选输入:
cursor(字符串):分页游标的下一页标识符。
- 返回结果:包含用户 ID、名称和角色等信息的用户列表。
- 可选输入:
📦 安装指南
创建 Slack 应用
- 访问 Slack 开发者门户,点击“Create New App”创建新应用。
- 填写应用的基本信息,如名称和描述,然后保存。
配置权限
- 进入刚创建的应用设置界面。
- 导航至“Permissions”(权限)部分。
- 启用所需的机器人权限,例如:
bot:允许机器人用户加入频道。channels:read:读取频道信息。messages:read:读取消息历史。messages:write:发送消息。
安装应用
- 返回到应用设置界面,找到“Install App”(安装应用)选项。
- 按照提示授权你的 Slack 工作区,并完成机器人用户的添加。
获取团队 ID 和 Bot Token
- 安装完成后,在“Basic Information”(基本信息)部分找到并记录下你的
Team ID(团队 ID)。 - 进入“Tokens & Signing Secret”(令牌与签名密钥)部分,生成一个新的
Bot User OAuth Token(机器人用户 OAuth 令牌),然后复制该令牌。
💻 使用示例
在 Claude Desktop 中的配置
以下是使用 JSON 格式的配置示例:
{
"mcp.servers": {
"slack.example.com:8090": {
"type": "http",
"url": "http://localhost:8090",
"headers": {
"Authorization": "Bearer YOUR_BOT_TOKEN"
}
}
}
}
Docker 构建命令
docker build -t mcp/slack -f src/slack/Dockerfile .
📚 详细文档
故障排除
如遇权限问题,请检查:
- 所需的所有权限是否已正确添加到 Slack 应用中。
- 应用是否已成功安装到目标工作区。
- 令牌和团队 ID 是否准确无误地配置在相关设置中。
- 应用是否已被添加至其需要访问的频道。
📄 许可证
此 MCP 服务器遵循 MIT 许可证。这意味着您可以自由使用、修改和分发软件,前提是遵守 MIT 许可证的条款和条件。更多详情,请参阅项目仓库中的 LICENSE 文件。
扫码联系在线客服