Slack MCP Server Cursor IDE Setup 2026: Send Messages and Read Channels from Composer
Connect Slack to Cursor IDE using MCP. Read messages, send updates, and search your workspace without leaving your editor — complete setup guide with bot token config.
Slack MCP Server Cursor IDE Setup 2026
Slack is where decisions happen, blockers surface, and context gets buried. Connecting it to Cursor via MCP means your AI can read relevant threads, post status updates, and search your workspace — all without breaking your coding flow. Here's the complete setup.
What This Integration Enables
With Slack MCP running in Cursor, you can:
Prerequisites
Step 1: Create a Slack App and Get a Bot Token
1. Go to api.slack.com/apps and click Create New App → From scratch.
2. Name it "Cursor MCP" and select your workspace.
3. In the left sidebar, go to OAuth & Permissions.
4. Scroll to Bot Token Scopes and add:
channels:history — read messages in public channelschannels:read — list channelschat:write — send messagesgroups:history — read private channels the bot is added toim:history — read DMsim:write — send DMssearch:read — search messagesusers:read — list workspace members5. Click Install to Workspace at the top of the OAuth & Permissions page.
6. Authorize, then copy the Bot User OAuth Token (starts with
xoxb-).Step 2: Add Your Bot to Channels
Your bot can only read channels it's been added to:
1. Open any Slack channel you want accessible from Cursor.
2. Type /invite @Cursor MCP (or the name you gave your app).
3. Repeat for channels you want searchable — engineering channel, deployments, general, etc.
Step 3: Install the Slack MCP Server
Use the official @modelcontextprotocol/server-slack package:
npm install -g @modelcontextprotocol/server-slack
Or run it via npx:
npx @modelcontextprotocol/server-slack --help
Step 4: Configure Cursor
Edit ~/.cursor/mcp.json (macOS/Linux) or %APPDATA%\Cursor\mcp.json (Windows):
{
"mcpServers": {
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"],
"env": {
"SLACK_BOT_TOKEN": "xoxb-your-token-here",
"SLACK_TEAM_ID": "TXXXXXXXXX"
}
}
}
}
Find your SLACK_TEAM_ID in Slack's web app: click your workspace name → Settings & Administration → Workspace Settings — the ID appears in the URL as T followed by letters/numbers.
Step 5: Restart and Verify
Quit Cursor fully and reopen. Check Settings → Features → MCP for the "slack" server.
Test in Composer:
List the Slack channels my bot has access to
If channels appear, you're connected.
Real-World Use Cases
Posting a Deployment Update
Just pushed to production:
Send a message to the #deployments Slack channel:
"✅ v2.4.1 deployed to production. Changes: rate limiting fix,
auth token refresh improvement. Rollback tag: v2.4.0"
Reading Context Before Coding
You're picking up a task that had Slack discussion:
Search Slack for messages about "session token expiry"
in the #backend channel from the last 2 weeks
Getting Answers Without Interrupting the Team
Search Slack for any messages explaining
why we chose Redis over Memcached for session storage
Sending a Quick Status DM
Send a DM to @sarah.chen on Slack:
"PR for ENG-241 is ready for review —
focused on the middleware layer, no schema changes"
Summarizing a Thread
Get the last 20 messages from the #incidents Slack channel
and summarize what the current issue is and what's been tried
Posting Code Snippets
Send a code snippet to #code-review in Slack with this function
and ask for feedback on the error handling approach:
[paste code]
Troubleshooting
Bot token returns 401
xoxb- — if it starts with xoxp-, you have a user token, not a bot token."not_in_channel" error when reading messages
/invite @YourAppName in the channel."missing_scope" error
Messages appear but search returns nothing
search:read scope must be added. It's easy to miss since it's listed separately from history scopes.Can't send DMs
im:write scope is required to initiate DMs. Add it and reinstall the app.im:write by an admin.Rate Limits
Slack enforces tiered rate limits:
For typical Cursor usage, you won't hit these limits. If you're running bulk queries via automation, add delays between calls.
Security Considerations
xoxb- token grants full access to everything the bot is added to. Treat it like a password.mcp.json to any repository — add it to .gitignore.chmod 600 ~/.cursor/mcp.json.Combining Slack with Other MCP Servers
Slack works as a notification layer for other integrations:
Example:
Create a Linear issue for the auth bug we found,
then post a message to #backend on Slack with the issue ID and a summary
More MCP Integrations
See the full MCP server directory to connect Notion, Linear, GitHub, Jira, and more to Cursor.