Slack MCP服务器
MCP服务器 Slack Web API 与建 Dedalus MCP framework。凭据由以下方式保护 多思 --您的服务器代码永远看不到原始令牌。
特性
- 跨消息、文件、用户和渠道的全面搜索
- 支持线程回复的消息发送
- 频道列表、历史检索和详细信息
- 画布创建、编辑和阅读,实现丰富的文档协作
- 用户配置文件查找
- 所有列表端点上的基于光标的分页
- DAuth处理Slack的分层速率限制
设置
1.创建Slack应用程序
- 首选 api.slack.com/apps 并创建新应用程序
- 在...之下 OAuth和权限,添加下面列出的范围
- 将应用程序安装到您的工作区
- 复制 Bot用户OAuth令牌 (
xoxb-...)或 用户OAuth令牌 (xoxp-...)
2.所需范围
| 范围 |
需要 |
channels:read |
list_channels, search_channels, get_channel_info |
channels:history |
get_channel_history, get_thread_replies |
groups:read |
专用频道接入 |
groups:history |
私人频道历史 |
chat:write |
send_message |
users:read |
search_users |
users.profile:read |
get_user_profile |
search:read |
search_messages, search_files (仅限用户令牌) |
canvases:read |
get_canvas |
canvases:write |
create_canvas, update_canvas |
注: 搜索工具(search_messages, search_files)要求a 用户令牌 (xoxp-...).所有其他工具都使用机器人令牌。
3.配置环境
填写您的令牌和Dedalus凭据:
DEDALUS_AS_URL=https://as.dedaluslabs.ai
DEDALUS_API_KEY=your-dedalus-api-key
SLACK_TOKEN=xoxb-your-bot-token
4.安装并运行
pip install -e .
python -m src.main
服务器在端口8080上启动。首先测试连接:
python -m src.client --test-connection
可用工具
搜索
| 工具 |
说明 |
search_messages |
在工作区中搜索邮件(需要用户令牌) |
search_files |
在工作区中搜索文件(需要用户令牌) |
search_users |
按名称或显示名称列出/搜索用户 |
search_channels |
按名称列出/搜索频道 |
频道
| 工具 |
说明 |
list_channels |
列出所有可访问的频道并分页 |
get_channel_info |
获取特定频道的详细元数据 |
get_channel_history |
从频道检索消息历史记录 |
get_thread_replies |
获取消息线程中的所有回复 |
消息传递
| 工具 |
说明 |
send_message |
向频道发送消息或在帖子中回复 |
画布
| 工具 |
说明 |
create_canvas |
使用markdown内容创建新画布 |
update_canvas |
替换现有画布的内容 |
get_canvas |
阅读画布的部分和内容 |
用户
| 工具 |
说明 |
get_user_profile |
获取用户的详细个人资料信息 |
项目结构
slack-mcp/
├── src/
│ ├── __init__.py
│ ├── main.py # DAuth connection + server config
│ ├── tools.py # All 13 Slack tools
│ └── client.py # Test client
├── pyproject.toml
├── .env.example
└── README.md
参考文献
许可证
麻省理工学院