Slack MCP Server
Official Slack-hosted MCP server that lets AI assistants search Slack, read and send messages, manage canvases, and look up users.
The Slack MCP server is the official remote MCP endpoint maintained by Slack at https://mcp.slack.com/mcp. It lets third-party AI assistants such as Claude, ChatGPT, Perplexity, and Cursor securely access a user's Slack workspace to search messages, files, channels, and users; read channel and thread history; send messages; create and read canvases; manage channels and DMs; and add reactions. The server speaks JSON-RPC 2.0 over Streamable HTTP (SSE is not supported) and authenticates each user individually via confidential OAuth, so tool calls run with that user's existing Slack permissions.
Slack announced general availability of the MCP server alongside the Real-time Search API on February 17, 2026. The server is designed for LLMs: tools return natural-language friendly responses and are gated by granular OAuth scopes (for example search:read.public, search:read.private, chat:write, canvases:write). Workspace admins can approve and audit MCP client integrations through Slack's standard app approval and audit log workflows.
Because it is provider-hosted, there is no code to deploy. End users typically connect through a partner client (Claude, ChatGPT, Cursor, etc.) that has registered a Slack app ID with the server. Developers building their own client must register a Slack app, request the appropriate scopes, and complete the OAuth flow at https://slack.com/oauth/v2_user/authorize.
Tools
| Tool | Description |
|---|---|
Search messages and files |
Search messages and files across the workspace or Enterprise org, with filters for date, user, and content type. |
Search channels |
Find public and private channels by name or description. |
Search users |
Find users by partial name, email, or user ID and return profile plus DM channel ID. |
Search emoji |
List custom emoji available in the workspace. |
Read channel/thread history |
Read full message history for a channel, DM, group DM, or thread. |
Send a message |
Post a message to any conversation type (channel, DM, group DM, or thread). |
Add reaction |
Add an emoji reaction to a message. |
Create conversation |
Create a new channel, group DM, or direct message. |
List channel members |
Return member user IDs for a given channel. |
Fetch user profile |
Get complete user profile data, including custom fields, status, and email. |
Create or update canvas |
Create or edit a Slack canvas (rich formatted document). |
Read canvas |
Export an existing canvas as markdown. |
The Slack MCP server is hosted by Slack at https://mcp.slack.com/mcp. There is nothing to install or run locally.
Option 1: Use a partner client (no code)
Connect through a client that has already registered with Slack's MCP server:
- Claude / Claude Code (Anthropic)
- ChatGPT (OpenAI)
- Perplexity
- Cursor
- Notion, Dropbox, Guru, Jasper, Credal, Thoughtspot, Wordsmith, Workleap
In your client of choice, add the Slack connector and complete the OAuth sign-in flow against your workspace. A workspace admin may need to approve the app first.
Option 2: Configure your own MCP client
The server uses JSON-RPC 2.0 over Streamable HTTP (SSE not supported) and requires a user OAuth bearer token.
Example for an Anthropic Messages API client:
{
"mcp_servers": [
{
"type": "url",
"url": "https://mcp.slack.com/mcp",
"name": "slack",
"authorization_token": "xoxp-USER-TOKEN"
}
]
}
Example for an OpenAI Responses API client:
{
"tools": [
{
"type": "mcp",
"server_label": "slack",
"server_url": "https://mcp.slack.com/mcp",
"headers": { "Authorization": "Bearer xoxp-USER-TOKEN" },
"require_approval": "never"
}
]
}
Prerequisites
- A Slack workspace where you can install apps (or an admin who can approve them).
- A Slack app registered at
https://api.slack.com/apps. Only directory-published apps or internal apps are permitted; unlisted apps are blocked. - OAuth scopes appropriate for the tools you plan to use, for example:
search:read.public,search:read.private,search:read.im,search:read.mpimsearch:read.files,files:readsearch:read.users,users:read,users:read.emailchat:write,reactions:writechannels:history,groups:history,mpim:history,im:historychannels:read,groups:read,mpim:read,channels:write,groups:write,im:write,mpim:writecanvases:read,canvases:write,emoji:read
- OAuth endpoints:
- Authorize:
https://slack.com/oauth/v2_user/authorize - Token:
https://slack.com/api/oauth.v2.user.access
- Authorize:
A Bolt for JavaScript sample client is available at https://github.com/slack-samples/bolt-js-slack-mcp-server for developers building custom integrations.
- Ask an AI assistant to summarize unread activity in a specific channel or thread over the last 24 hours.
- Search across messages and files for a customer name or project ID and pull together a status briefing.
- Draft and send a Slack update (release notes, standup, incident summary) into the right channel from inside Claude or ChatGPT.
- Generate a Slack canvas with a meeting recap or runbook directly from an AI agent and share it in a channel.
- Look up a colleague's profile, time zone, and DM channel ID, then send them a tailored message.
- "Search Slack for messages from the #launch-q2 channel mentioning the load test and summarize the open issues."
- "Find any files shared in #design last week that include 'hero banner' and list them with links."
- "Post a Friday recap in #eng-leads that summarizes this week's incidents from #incidents."
- "Create a Slack canvas titled 'On-call Runbook v3' with these sections and share it in #sre."
- "Look up the user 'priya patel', open a DM, and ask if she can review the PRD by EOD."
- Official, Slack-hosted remote server at
https://mcp.slack.com/mcp, no infrastructure to run. - Granular OAuth scopes and per-user authentication, so AI actions respect each user's existing Slack permissions.
- Broad coverage: search, read, write, reactions, channel management, and canvases in one server.
- Supported out of the box by major clients including Claude, ChatGPT, Perplexity, and Cursor; admin approval and audit logs follow Slack's standard app governance.
- Only directory-published or internal Slack apps are permitted, unlisted apps are blocked, which adds friction for custom builds.
- Streamable HTTP only; SSE-based MCP transports are not supported.
- Subject to Slack Web API rate limits (Tier 2 to 4), so high-volume search or messaging workloads can throttle.
- korotovsky/slack-mcp-server: community open-source Slack MCP server with extended features like DM and GovSlack support.
- duolingo/slack-mcp: OAuth-based multi-user Slack MCP server with HTTP transport.
- @modelcontextprotocol/server-slack: earlier reference Slack MCP server from the MCP project (predates the official Slack-hosted one).