Slack用户MCP服务器
个人 MCP(模型上下文协议) 使用您的 用户令牌 (xoxp-...),让AI代理完全访问您的工作区,包括消息搜索、频道历史、DM和以自己的身份发布。
与基于机器人令牌的Slack集成不同,此服务器充当 你,因此它可以访问您所属的任何频道(包括私人频道和DM),并使用Slack搜索API。
特性
- 搜索邮件 --完整的Slack搜索语法(
from:me,in:#channel,has:link、日期过滤器等) - 频道历史 --从您所在的任何频道、DM或群消息中读取消息
- 发布消息 --以自己的身份(而不是机器人)发送消息
- 用户查找 --按姓名或电子邮件查找用户
- 线程读取 --获取一个线程中的所有回复
- 身份验证 --确认您的连接和身份
工具
| 工具 | 说明 |
|---|---|
slack_search_messages | 使用Slack查询语法搜索邮件 |
slack_list_channels | 列出频道(公共、私人、DM) |
slack_get_channel_history | 阅读频道的最新消息 |
slack_post_message | 以自己的身份发送消息 |
slack_lookup_user | 按姓名或电子邮件查找用户 |
slack_get_user_info | 按ID获取详细的用户资料 |
slack_get_thread | 阅读一个帖子中的所有回复 |
slack_auth_test | 验证您的连接 |
设置
1.创建Slack应用程序并获取用户令牌
- 首选 api.slack.com/apps 并创建新应用程序 从头开始
- 在...之下 OAuth和权限,添加这些 用户令牌范围:
- search:read - channels:read, channels:history - groups:read, groups:history - im:read, im:history - mpim:read, mpim:history - users:read, users:read.email - chat:write
- 将应用程序安装到您的工作区
- 复制 用户OAuth令牌 (开始于
xoxp-)
2.安装依赖关系并构建
cd slack-user-mcp-server
npm install
npm run build3.连接到克劳德桌面
将此添加到您的Claude Desktop配置中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json\ 视窗: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"slack-personal": {
"command": "node",
"args": ["/path/to/slack-user-mcp-server/dist/index.js"],
"env": {
"SLACK_USER_TOKEN": "xoxp-your-token-here"
}
}
}
}备注:如果你使用像这样的Node版本管理器fnm或nvm,使用完整路径node而不仅仅是"node".找到它fnm exec --using=default -- which node或nvm which default.
4.重新启动克劳德桌面
退出并重新打开Claude Desktop。服务器将出现在您的MCP连接中。
示例查询
连接后,您可以向您的AI助手询问以下问题:
- “搜索我最近的Slack消息”--使用
from:me - “最新的#general是什么?”--频道历史
- “查找有关第一季度预算的消息”--全文搜索
- “谁在营销团队?”——用户查询
- “向#general发送一条消息,说构建是绿色的”——以自己的身份发布
搜索语法
搜索工具支持所有 松弛搜索修饰符:
| 修改器 | 示例 | 说明 |
|---|---|---|
from: | from:me 或 from:@username | 来自用户的消息 |
in: | in:#channel | 频道中的消息 |
has: | has:link, has:reaction | 按属性筛选 |
before: / after: | after:2024-01-01 | 日期范围 |
is: | is:thread | 仅限线程消息 |
技术栈
- TypeScript
- MCP TypeScript SDK
- Slack Web API(通过获取)
- Zod用于输入验证
- stdio传输
