Slack MCP Server
An MCP server for Slack: channel history, threads, DMs, search and unreads, with posting off by default
Install
{
"mcpServers": {
"slack": {
"command": "npx",
"args": [
"-y",
"slack-mcp-server@latest",
"--transport",
"stdio"
],
"env": {
"SLACK_MCP_XOXP_TOKEN": "xoxp-..."
}
}
}
}Instead of xoxp you can set SLACK_MCP_XOXB_TOKEN or the SLACK_MCP_XOXC_TOKEN and SLACK_MCP_XOXD_TOKEN pair.
This is third-party code. Review the repository files before installing.
What it does
The server lets the agent read Slack channels, threads, DMs and group DMs, search messages with filters and collect unreads with DMs first. History can be fetched by time range or message count, and channels and users can be referenced by name. Posting, reactions and marking as read are enabled through separate variables and can be limited to specific channels. It works with a user token, a bot token or browser session tokens.
Who it is for. For Slack users who want an agent to go through conversations and find relevant discussions.
Good fit when
- You need a summary of today's unreads
- You need to find where a decision was discussed in old threads
- You need to draft a channel reply based on history
Not a fit when
- Workspace rules forbid session tokens and third-party integrations
- Your team does not use Slack
Example request
Collect my Slack unreads for today, DMs and mentions firstLimitations
Needs one of: xoxp, xoxb, or an xoxc/xoxd browser token pair. Browser tokens work without installing an app but may violate company policy. A bot token cannot search and only sees channels it was invited to. Some tools require browser tokens. Slack availability from Russia is not guaranteed. Not an official Slack product.
How to disable. Remove the slack block from the MCP config or disable the extension in Claude Desktop. Revoke the token or log out of the browser session.
MCP
- Transport
- stdio, sse, http
- Authentication
- API key
| Environment variables | |
|---|---|
| SLACK_MCP_XOXP_TOKEN secret | User OAuth token. One token option is required. |
| SLACK_MCP_XOXB_TOKEN secret | Bot token with limited access. |
| SLACK_MCP_XOXC_TOKEN secret | Browser token, used together with SLACK_MCP_XOXD_TOKEN. |
| SLACK_MCP_XOXD_TOKEN secret | Browser session cookie d. |
| SLACK_MCP_ADD_MESSAGE_TOOL | Enables posting: true or a list of channel IDs. |
Security check
- Reads private and work conversations
- Uses Slack tokens and session cookies
- Can post as the user when enabled
README in short
The README lists tools for history, threads, search, channel lists, reactions, user groups, unreads and saved items, plus resources with channel and user directories. Installation is covered via the Claude Desktop DXT extension, the Cursor installer, npx and Docker. The server runs over stdio, SSE and HTTP and supports proxies, Enterprise Slack and GovSlack. The user and channel cache is needed for lookups by name. MIT licensed.
FAQ
Can the agent post to channels?
Only if SLACK_MCP_ADD_MESSAGE_TOOL is set. You can allow all channels or list specific IDs.
Which token should I use?
xoxp covers most tools through a regular app, xoxb is limited to the bot's channels and has no search, xoxc/xoxd need no app install and unlock tools such as saved items.
Related
A CLI for every Google Workspace API with JSON output and agent skills: Drive, Gmail, Calendar, Sheets and more
Local search over Markdown notes, docs and meeting transcripts: keywords, semantic search and reranking, with an MCP server
A task manager for AI-driven development: breaks a PRD into dependent tasks and guides the agent through them via MCP or CLI
Anthropic's official plugins for knowledge work roles: sales, support, product, marketing, legal, finance, data and enterprise search