Slack MCP服务器
用于Slack API的MCP服务器,使Claude能够与Slack工作空间进行交互。
工具
slack_list_channels
- 列出工作区中的公共或预定义频道 - 可选输入: - limit (数字,默认值:100,最大值:200):要返回的最大通道数 - cursor (string):下一页的分页光标 - 返回:通道列表及其ID和信息
slack_post_message
- 在Slack频道发布新消息 - 所需输入: - channel_id (string):要发布的频道的ID - text (string):要发布的消息文本 - 返回:消息发布确认和时间戳
slack_reply_to_thread
- 回复特定消息线程 - 所需输入: - channel_id (string):包含线程的通道 - thread_ts (string):父消息的时间戳 - text (string):回复文本 - 返回:回复确认和时间戳
slack_add_reaction
- 在消息中添加表情符号反应 - 所需输入: - channel_id (string):包含消息的通道 - timestamp (string):要响应的消息时间戳 - reaction (字符串):不带冒号的表情符号名称 - 返回:反应确认
slack_get_channel_history
- 从频道获取最新消息 - 所需输入: - channel_id (string):通道ID - 可选输入: - limit (数字,默认值:10):要检索的邮件数 - 返回:消息及其内容和元数据的列表
slack_get_thread_replies
- 获取消息线程中的所有回复 - 所需输入: - channel_id (string):包含线程的通道 - thread_ts (string):父消息的时间戳 - 返回:回复列表及其内容和元数据
slack_get_users
- 获取包含基本配置文件信息的工作区用户列表 - 可选输入: - cursor (string):下一页的分页光标 - limit (数字,默认值:100,最大值:200):可返回的最大用户数 - 返回:用户及其基本配置文件的列表
slack_get_user_profile
- 获取特定用户的详细个人资料信息 - 所需输入: - user_id (string):用户的ID - 返回:详细的用户配置文件信息
设置
- 创建Slack应用程序:
- 访问 Slack应用程序页面 - 点击“创建新应用” - 选择“从头开始” - 命名您的应用程序并选择您的工作区
- 配置Bot令牌范围:
导航到“OAuth和权限”并添加以下范围:
- channels:history -查看公共频道中的消息和其他内容 - channels:read -查看基本频道信息 - chat:write -以应用程序的身份发送消息 - reactions:write -在消息中添加表情符号反应 - users:read -查看用户及其基本信息 - users.profile:read -查看用户的详细资料
- 将应用程序安装到工作区:
- 点击“安装到工作区”并授权应用程序 - 保存以开头的“Bot用户OAuth令牌” xoxb-
- 获取您的团队ID(以
T)通过以下方式 本指南
使用Claude Desktop
将以下内容添加到您的 claude_desktop_config.json:
NPX
{
"mcpServers": {
"slack": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-slack"
],
"env": {
"SLACK_BOT_TOKEN": "xoxb-your-bot-token",
"SLACK_TEAM_ID": "T01234567",
"SLACK_CHANNEL_IDS": "C01234567, C76543210"
}
}
}
}码头工人
{
"mcpServers": {
"slack": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SLACK_BOT_TOKEN",
"-e",
"SLACK_TEAM_ID",
"-e",
"SLACK_CHANNEL_IDS",
"mcp/slack"
],
"env": {
"SLACK_BOT_TOKEN": "xoxb-your-bot-token",
"SLACK_TEAM_ID": "T01234567",
"SLACK_CHANNEL_IDS": "C01234567, C76543210"
}
}
}
}使用VS代码
要快速安装,请单击下面的安装按钮之一。..
]() ]()
对于手动安装,请将以下JSON块添加到VS Code中的用户设置(JSON)文件中。您可以按 Ctrl + Shift + P 和打字 Preferences: Open Settings (JSON).
您可以选择将其添加到名为的文件中 .vscode/mcp.json 在您的工作空间中。这将允许您与他人共享配置。
请注意mcp中不需要密钥.vscode/mcp.json文件。
NPX
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "slack_bot_token",
"description": "Slack Bot Token (starts with xoxb-)",
"password": true
},
{
"type": "promptString",
"id": "slack_team_id",
"description": "Slack Team ID (starts with T)"
}
],
"servers": {
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"],
"env": {
"SLACK_BOT_TOKEN": "${input:slack_bot_token}",
"SLACK_TEAM_ID": "${input:slack_team_id}"
}
}
}
}
}码头工人
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "slack_bot_token",
"description": "Slack Bot Token (starts with xoxb-)",
"password": true
},
{
"type": "promptString",
"id": "slack_team_id",
"description": "Slack Team ID (starts with T)"
}
],
"servers": {
"slack": {
"command": "docker",
"args": ["run", "-i", "--rm", "mcp/slack"],
"env": {
"SLACK_BOT_TOKEN": "${input:slack_bot_token}",
"SLACK_TEAM_ID": "${input:slack_team_id}"
}
}
}
}
}环境变量
SLACK_BOT_TOKEN:必填。以开头的Bot用户OAuth令牌xoxb-.SLACK_TEAM_ID:必填。您的Slack工作区ID以开头T.SLACK_CHANNEL_IDS:可选。以逗号分隔的通道ID列表,用于限制通道访问(例如,“C01234567,C76543210”)。如果未设置,将列出所有公共频道。
故障排除
如果遇到权限错误,请验证:
- 所有必需的范围都已添加到您的Slack应用程序中
- 应用程序已正确安装到您的工作区
- 令牌和工作区ID已正确复制到您的配置中
- 该应用程序已添加到它需要访问的频道中
构建
Docker构建:
docker build -t mcp/slack -f src/slack/Dockerfile .许可证
此MCP服务器根据MIT许可证获得许可。这意味着您可以根据MIT许可证的条款和条件自由使用、修改和分发软件。有关更多详细信息,请参阅项目存储库中的LICENSE文件。
