Slack MCP Server
- Communication
MCP Server for the Slack API, enabling Claude to interact with Slack workspaces.
Prompts
Interactive templates invoked by user choice
Name | Description |
---|---|
No prompts |
Resources
Contextual data attached and managed by the client
Name | Description |
---|---|
No resources |
Tools
Functions exposed to the LLM to take actions
Name | Description |
---|---|
slack_list_channels | List public channels in the workspace with pagination |
slack_post_message | Post a new message to a Slack channel |
slack_reply_to_thread | Reply to a specific message thread in Slack |
slack_add_reaction | Add a reaction emoji to a message |
slack_get_channel_history | Get recent messages from a channel |
slack_get_thread_replies | Get all replies in a message thread |
slack_get_users | Get a list of all users in the workspace with their basic profile information |
slack_get_user_profile | Get detailed profile information for a specific user |
Server Configuration
Describes the environment variables required to run the server.
Name | Required | Description | Default |
---|---|---|---|
SLACK_TEAM_ID | Yes | Your Slack Team ID, starts with 'T' | |
SLACK_BOT_TOKEN | Yes | The Bot User OAuth Token for your Slack app, starts with 'xoxb-' |
Slack MCP Server
MCP Server for the Slack API, enabling Claude to interact with Slack workspaces.
Tools
slack_list_channels
- List public channels in the workspace
- Optional inputs:
limit
(number, default: 100, max: 200): Maximum number of channels to returncursor
(string): Pagination cursor for next page
- Returns: List of channels with their IDs and information
slack_post_message
- Post a new message to a Slack channel
- Required inputs:
channel_id
(string): The ID of the channel to post totext
(string): The message text to post
- Returns: Message posting confirmation and timestamp
slack_reply_to_thread
- Reply to a specific message thread
- Required inputs:
channel_id
(string): The channel containing the threadthread_ts
(string): Timestamp of the parent messagetext
(string): The reply text
- Returns: Reply confirmation and timestamp
slack_add_reaction
- Add an emoji reaction to a message
- Required inputs:
channel_id
(string): The channel containing the messagetimestamp
(string): Message timestamp to react toreaction
(string): Emoji name without colons
- Returns: Reaction confirmation
slack_get_channel_history
- Get recent messages from a channel
- Required inputs:
channel_id
(string): The channel ID
- Optional inputs:
limit
(number, default: 10): Number of messages to retrieve
- Returns: List of messages with their content and metadata
slack_get_thread_replies
- Get all replies in a message thread
- Required inputs:
channel_id
(string): The channel containing the threadthread_ts
(string): Timestamp of the parent message
- Returns: List of replies with their content and metadata
slack_get_users
- Get list of workspace users with basic profile information
- Optional inputs:
cursor
(string): Pagination cursor for next pagelimit
(number, default: 100, max: 200): Maximum users to return
- Returns: List of users with their basic profiles
slack_get_user_profile
- Get detailed profile information for a specific user
- Required inputs:
user_id
(string): The user's ID
- Returns: Detailed user profile information
Setup
- Create a Slack App:
- Visit the Slack Apps page
- Click "Create New App"
- Choose "From scratch"
- Name your app and select your workspace
- Configure Bot Token Scopes:
Navigate to "OAuth & Permissions" and add these scopes:
channels:history
- View messages and other content in public channelschannels:read
- View basic channel informationchat:write
- Send messages as the appreactions:write
- Add emoji reactions to messagesusers:read
- View users and their basic information
- Install App to Workspace:
- Click "Install to Workspace" and authorize the app
- Save the "Bot User OAuth Token" that starts with
xoxb-
- Get your Team ID (starts with a
T
) by following this guidance
Usage with Claude Desktop
Add the following to your claude_desktop_config.json
:
Troubleshooting
If you encounter permission errors, verify that:
- All required scopes are added to your Slack app
- The app is properly installed to your workspace
- The tokens and workspace ID are correctly copied to your configuration
- The app has been added to the channels it needs to access
License
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues with dependencies of the server.
- Extract server characteristics such as tools, resources, prompts, and required parameters.
Our directory badge helps users to quickly asses that the MCP server is safe, server capabilities, and instructions for installing the server.
Copy the following code to your README.md file: