Slack MCP Server

Slack workspace integration for messaging, channel management, and team communication automation.

Communication ChatTeamCommunication

Configuration

MCP Settings Configuration

{
  "slack": {
    "stdio": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-slack"
      ]
    },
    "env": {
      "SLACK_BOT_TOKEN": "{{SLACK_BOT_TOKEN}}",
      "SLACK_TEAM_ID": "{{SLACK_TEAM_ID}}"
    }
  }
}

Available Tools & Methods

slack_list_channels(limit, cursor)
List public or pre-defined channels in the workspace
Parameters: limit (number, optional, default: 100, max: 200), cursor (string, optional)
slack_get_channel_history(channel_id, limit)
Get recent messages from a channel
Parameters: channel_id (string), limit (number, optional, default: 10)
slack_post_message(channel_id, text)
Post a new message to a Slack channel
Parameters: channel_id (string), text (string)
slack_reply_to_thread(channel_id, thread_ts, text)
Reply to a specific message thread
Parameters: channel_id (string), thread_ts (string), text (string)
slack_get_thread_replies(channel_id, thread_ts)
Get all replies in a message thread
Parameters: channel_id (string), thread_ts (string)
slack_add_reaction(channel_id, timestamp, reaction)
Add an emoji reaction to a message
Parameters: channel_id (string), timestamp (string), reaction (string)
slack_get_users(cursor, limit)
Get list of workspace users with basic profile information
Parameters: cursor (string, optional), limit (number, optional, default: 100, max: 200)
slack_get_user_profile(user_id)
Get detailed profile information for a specific user
Parameters: user_id (string)

Installation Guide

# Installation ## Setup Slack App 1. **Create a Slack App:** - Visit the [Slack Apps page](https://api.slack.com/apps) - Click "Create New App" - Choose "From scratch" - Name your app and select your workspace 2. **Configure Bot Token Scopes:** Navigate to "OAuth & Permissions" and add these scopes: - `channels:history` - View messages and other content in public channels - `channels:read` - View basic channel information - `chat:write` - Send messages as the app - `reactions:write` - Add emoji reactions to messages - `users:read` - View users and their basic information - `users.profile:read` - View detailed profiles about users 3. **Install App to Workspace:** - Click "Install to Workspace" and authorize the app - Save the "Bot User OAuth Token" that starts with `xoxb-` 4. **Get your Team ID:** Get your Team ID (starts with `T`) by following [this guidance](https://slack.com/help/articles/221769328-Locate-your-Slack-URL-or-ID#find-your-workspace-or-org-id) ## Claude Desktop Configuration ### NPX ```json { "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" } } } } ``` ### Docker ```json { "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 Code Configuration ### NPX ```json { "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}" } } } } } ``` ## Environment Variables - `SLACK_BOT_TOKEN`: **Required**. The Bot User OAuth Token starting with `xoxb-` - `SLACK_TEAM_ID`: **Required**. Your Slack workspace ID starting with `T` - `SLACK_CHANNEL_IDS`: **Optional**. Comma-separated list of channel IDs to limit access ## Troubleshooting If you encounter permission errors, verify that: 1. All required scopes are added to your Slack app 2. The app is properly installed to your workspace 3. The tokens and workspace ID are correctly copied 4. The app has been added to the channels it needs to access