Integrate Slack MCP server into your Slack workspace for instant access to your AI agent.
Tools that your AI agent can use through this MCP server to interact with Slack
Verifying requests from Slack, slack signs its requests using a secret that's unique to your app. See the documentation
Upload a file. See the documentation
Update basic profile field such as name or title. See the documentation
Update a message. See the documentation
Update the list of users for a User Group. See the documentation
Set the current status for a user. See the documentation
Set the topic on a selected channel. See the documentation
Change the description or purpose of a channel. See the documentation
Send a message to a user, group, private channel or public channel. See the documentation
Send a message to a user or group. See the documentation
Send a message to a public or private channel. See the documentation
Customize advanced settings and send a message to a channel, group or user. See postMessage or scheduleMessage docs here
Send a large message (more than 3000 characters) to a channel, group or user. See postMessage or scheduleMessage docs here
Configure custom blocks and send to a channel, group, or user. See the documentation.
Search Slack messages and files using the Real-Time Search API. Supports keyword and semantic search across public and private channels. Use Get User Details first to find your user ID for filtering by 'my' messages. Returns matching messages with channel context, timestamps, and permalinks. See the documentation
Send a message as a threaded reply. See postMessage or scheduleMessage docs here
Send a message to a channel, user, or group. Accepts a channel ID (e.g. C1234567890) or channel name (e.g. #general or general) — names are resolved automatically. To reply to a thread, provide thread_ts from Get Channel History. Supports plain text with Slack mrkdwn formatting and Block Kit blocks. See the documentation
Return a list of all users in a workspace. See the documentation
Retrieve a thread of messages posted to a conversation. See the documentation
Retrieve messages from a Slack conversation, including reactions. See the documentation
Retrieve members of a channel. See the documentation
List all users in a User Group. See the documentation
Return a list of files within a team. See the documentation
List all available emojis in the Slack workspace. Optionally include emoji image URLs. See the documentation
Return a list of all channels in a workspace. See the documentation
Remove a user from a conversation. See the documentation
Invite a user to an existing channel. See the documentation
Retrieve the authenticated user's identity and workspace context. Returns user ID, name, email, timezone, profile, and workspace metadata. Call this first in any session to establish who you are — other tools like Search and List Channels can then filter by your user ID. See the documentation
Retrieve all replies in a message thread. Accepts a channel ID or channel name (resolved automatically). Use Get Channel History or Search to find the parent message's timestamp (thread_ts). Returns the parent message followed by all replies in chronological order. See the documentation
Return information about a file. See the documentation
Retrieve comprehensive context about the authenticated Slack member, combining auth.test, users.info, users.profile.get, and team.info payloads. Returns the user’s profile (name variants, email, locale, timezone, status, admin flags), raw auth test data, and workspace metadata (domain, enterprise info, icons). Ideal when you need to confirm which user token is active, tailor messages to their locale/timezone, or ground an LLM in the member’s role and workspace before executing other Slack actions. See Slack API docs.
Read the recent message history from a specific channel. Accepts a channel ID or channel name (resolved automatically). Use this when you want to see a channel's latest messages — unlike Search which finds messages by keyword. Returns messages with text, timestamps (ts), reactions, and user IDs. Message timestamps can be used with Get Thread Replies, Edit Message, and Add Reaction. See the documentation
Retrieve details for a Slack channel by selecting it or providing an ID. See the documentation
Find a user by their ID. Returns user profile information including name, email (requires users:read.email scope), timezone, and status. See the documentation
Find a user by matching against their email. See the documentation
Find a Slack message. See the documentation
Edit an existing message. Accepts a channel ID or channel name (resolved automatically). Requires the message timestamp (ts) from Get Channel History or Post Message. You can only edit messages posted by the same token/user. See the documentation
Delete a message. See the documentation
Delete a file. See the documentation
Create a reminder. See the documentation
Create a new channel. See the documentation
List files shared in a channel or across the workspace. Accepts a channel ID or channel name (resolved automatically). Filter by file type (e.g. images, pdfs, snippets). Returns file metadata including name, type, size, and download URL. See the documentation
Archive a channel. See the documentation
Suspend the workflow until approved by a Slack message. See the documentation
Add an emoji reaction to a message. Accepts a channel ID or channel name (resolved automatically). Use Get Channel History or Search to find the message timestamp. Emoji name should be without colons (e.g. thumbsup, fire, heart). See the documentation
Add an emoji reaction to a message. See the documentation