Slack's own hosted MCP server — search, send messages, read threads, and manage canvases, gated by workspace admins.
- Home
- Top MCPs for Communication
- Slack (community)

Slack (community)
Read and send Slack messages, manage channels and threads — the token-based community server, no admin approval needed.
Quick answer
What it does
Provides access to Slack channels, messages, threads, users, and workspace data via the Slack Web API.
Best for
- Automated Slack notifications
- Channel monitoring
- Message summarization
- Thread management
Not for
- Non-Slack messaging platforms
- High-security workspaces with API restrictions
Source: top-mcps.com/mcp/slack — verified Aug 2026
Setup recipe
Pick your client, then follow the three steps.
- 1
Install
claude_desktop_config.jsonjson{ "mcpServers": { "slack": { "command": "npx", "args": [ "-y", "slack-mcp-server" ], "env": { "SLACK_BOT_TOKEN": "${SLACK_BOT_TOKEN}", "SLACK_TEAM_ID": "${SLACK_TEAM_ID}" } } } }Paste under mcpServers. Fully quit and reopen Claude after editing.
CLI or .mcp.jsonshell# export SLACK_BOT_TOKEN=xoxb-your-bot-token # export SLACK_TEAM_ID=T0000000 claude mcp add slack -- npx -y slack-mcp-serverRun from your repo. Commit .mcp.json to share with your team.
.cursor/mcp.jsonjson{ "mcpServers": { "slack": { "command": "npx", "args": [ "-y", "slack-mcp-server" ], "env": { "SLACK_BOT_TOKEN": "${SLACK_BOT_TOKEN}", "SLACK_TEAM_ID": "${SLACK_TEAM_ID}" } } } }Global path: ~/.cursor/mcp.json. Reload window after editing.
.vscode/mcp.jsonjsonc{ "servers": { "slack": { "command": "npx", "args": [ "-y", "slack-mcp-server" ], "env": { "SLACK_BOT_TOKEN": "${SLACK_BOT_TOKEN}", "SLACK_TEAM_ID": "${SLACK_TEAM_ID}" } } } }VS Code uses the "servers" key (not "mcpServers").
~/.codeium/windsurf/mcp_config.jsonjson{ "mcpServers": { "slack": { "command": "npx", "args": [ "-y", "slack-mcp-server" ], "env": { "SLACK_BOT_TOKEN": "${SLACK_BOT_TOKEN}", "SLACK_TEAM_ID": "${SLACK_TEAM_ID}" } } } }Open via Cascade → hammer icon → Configure.
cline_mcp_settings.jsonjson{ "mcpServers": { "slack": { "command": "npx", "args": [ "-y", "slack-mcp-server" ], "env": { "SLACK_BOT_TOKEN": "${SLACK_BOT_TOKEN}", "SLACK_TEAM_ID": "${SLACK_TEAM_ID}" } } } }Open via the Cline sidebar → MCP Servers → Edit.
~/.continue/config.jsonjson{ "experimental": { "modelContextProtocolServers": [ { "transport": { "type": "stdio", "command": "npx", "args": [ "-y", "slack-mcp-server" ], "env": { "SLACK_BOT_TOKEN": "${SLACK_BOT_TOKEN}", "SLACK_TEAM_ID": "${SLACK_TEAM_ID}" } } } ] } }Continue uses modelContextProtocolServers with a transport block.
~/.codex/config.tomlshell# ~/.codex/config.toml [mcp_servers.slack] command = "npx" args = [ "-y", "slack-mcp-server", ] env = { SLACK_BOT_TOKEN = "${SLACK_BOT_TOKEN}", SLACK_TEAM_ID = "${SLACK_TEAM_ID}" }Codex uses TOML. Each server is a [mcp_servers.<name>] subtable.
~/.config/zed/settings.jsonjsonc{ "context_servers": { "slack": { "command": { "path": "npx", "args": [ "-y", "slack-mcp-server" ] }, "env": { "SLACK_BOT_TOKEN": "${SLACK_BOT_TOKEN}", "SLACK_TEAM_ID": "${SLACK_TEAM_ID}" } } } }Zed calls them "context_servers". Settings live-reload on save.
ChatGPT → Apps directorynoneSlack (community) is also available in the official ChatGPT Apps directory — no manual setup, no Developer mode required. Open the app from the directory and grant access on first use.
- 2
Set required secrets
Set
SLACK_BOT_TOKEN,SLACK_TEAM_IDin your shell environment before launching your MCP client. - 3
Try a minimum working prompt
Post a concise standup update to a channel
Summarise what I worked on today from the last 10 commits on the current repo and post a 3-bullet standup update to #team-eng. Keep it under 500 characters and end with blockers or an "all clear" line.Tested with: Claude Desktop, Cursor.
Tools & permissions
| Tool | Description | Args | Side effects |
|---|---|---|---|
conversations_history | Fetch messages from a channel or DM, with time-range or count limits and pagination. | — | Read |
conversations_replies | Fetch the messages of a thread by channel and thread timestamp. | — | Read |
conversations_add_message | Post a message into a channel or thread. | — | Write |
conversations_search_messages | Search messages across the workspace. | — | Read |
channels_list | List channels visible to the connected account. | — | Read |
reactions_add | Add an emoji reaction to a message. | — | Write |
reactions_remove | Remove an emoji reaction from a message. | — | Write |
users_search | Search workspace users. | — | Read |
Security & scope
- Access scope
- Network
- Sandbox
- Authenticates to Slack with a bot token (xoxb-...). Acts under the bot identity in whichever workspace installed the app; scope limited by the bot user scopes.
- Gotchas
- Bot-authored messages appear under the bot, not under your personal Slack identity.
- DMs require the bot to be invited; uninvited DMs return a 404.
- Workspace admins can audit every bot token call — treat agent actions as auditable.
Agent prompt pack
— copy into Claude, Cursor, or ChatGPT.Recommend the best MCP servers for [task: e.g. communication work] in [client: Claude]. Constraints: - Prefer tools that are [official | open-source | read-only] — pick what matters for my use case. - Exclude MCPs that require [e.g. a paid plan, OAuth-only flows, remote-only transport]. - Return at most 3 picks, ranked. For each pick include: 1. One-sentence rationale. 2. The ready-to-paste install snippet for my client. 3. Any required secrets I need to create before installing. Cross-check the top-mcps.com listing: https://top-mcps.com/top-mcps-for-communication
Compare Slack (community) MCP vs [Slack (official) MCP] for the following job: [describe the job, e.g. "let an agent create GitHub issues on bug triage"]. Judge them on: - Setup time and complexity (what a new user hits first). - Auth model (none / API key / OAuth 2.1) and credential risk. - Transport (stdio / Streamable HTTP / SSE) and where the server runs. - Required secrets and the blast radius if they leak. - Operational risk in an unattended agent loop. - Which one is "good enough" for a weekend prototype vs. production. End with one sentence: which should I pick for my scenario, which is: [my scenario]. References: - https://top-mcps.com/mcp/slack - top-mcps.com listing for Slack (official)
Install the Slack (community) MCP server for my [client: Claude] at the default config path for that client. Use the exact install snippet published at https://top-mcps.com/mcp/slack (fetch https://top-mcps.com/mcp/slack.json for the canonical server.json if you can read URLs). Before finishing: 1. Create the required secrets (SLACK_BOT_TOKEN, SLACK_TEAM_ID) and put them in the appropriate env block — do not hard-code them. 2. Restart or reload the client so it picks up the new server. 3. Verify the server is connected (green / running state) and at least one tool is listed. 4. If anything fails, read the client's MCP logs and report the exact error — do not silently retry. Confirm when done and list the tools the server now exposes.
Frequently asked questions
What changed
— 3 updates tracked.v1.2.3 released
v1.2.2 released
v1.1.28 released
More Communication MCPs
Other tools in the same category worth evaluating.
Compared with Slack (community)
Side-by-side breakdowns for the choices people most often weigh against this MCP.
Exploring Top MCPs for Communication? See all Communication MCPs →