Slack MCP Server

$uv sync && uv run python src/main.py
README.md

Enables comprehensive interaction with Slack workspaces via MCP.

Slack MCP Server

An MCP server implementation that integrates the Slack API, providing messaging, channel management, and search capabilities.

Features

  • Conversations: List channels, read message history, manage threads
  • Messaging: Send, update, and delete messages; add reactions
  • Search: Find messages across your workspace (user token only)
  • Users: List users, get profiles, lookup by email
  • Files & Pins: List files, manage pinned messages
  • Token Rotation: Automatic refresh for rotatable tokens

Tools

Conversations

  • slack_list_conversations - List channels, DMs, and group DMs
  • slack_get_conversation_info - Get channel details
  • slack_conversations_history - Fetch message history
  • slack_conversations_replies - Get thread replies
  • slack_conversations_members - List channel members
  • slack_conversations_join - Join a public channel
  • slack_conversations_leave - Leave a conversation
  • slack_conversations_open - Open a DM or group DM

Messages

  • slack_chat_post_message - Send a message to a channel or thread
  • slack_chat_update - Update an existing message
  • slack_chat_delete - Delete a message
  • slack_reactions_add - Add emoji reaction
  • slack_reactions_remove - Remove emoji reaction

Search

  • slack_search_messages - Search messages (requires user token)

Users

  • slack_users_list - List workspace users
  • slack_users_info - Get user details by ID
  • slack_users_lookup_by_email - Find user by email
  • slack_auth_test - Get current token info

Other

  • slack_team_info - Get workspace info
  • slack_bookmarks_list - List channel bookmarks
  • slack_pins_list / slack_pins_add / slack_pins_remove - Manage pins
  • slack_reminders_list / slack_reminders_add / slack_reminders_delete - Manage reminders
  • slack_files_list / slack_files_info - List and get file details

Configuration

Getting a Slack Token

  1. Go to Slack API Apps
  2. Click Create New AppFrom scratch
  3. Go to OAuth & Permissions
  4. Add scopes under Bot Token Scopes or User Token Scopes:
    channels:read, channels:history, chat:write, users:read, team:read
    
  5. Click Install to Workspace
  6. Copy the token (xoxb-... or xoxp-...)

Token Types

Token Prefix Search? Access
Bot xoxb- No Invited channels only
User xoxp- Yes All user's channels
Rotatable xoxe.xoxp- Yes Auto-refreshes

Development

Install Dependencies

uv sync

Run the Server

uv run python src/main.py

Test the API

uv run python test_api.py

Test with MCP Inspector

npx @modelcontextprotocol/inspector uv run python src/main.py

License

MIT License - see LICENSE for details.

Tools (7)

slack_list_conversationsList channels, DMs, and group DMs
slack_get_conversation_infoGet channel details
slack_conversations_historyFetch message history
slack_chat_post_messageSend a message to a channel or thread
slack_search_messagesSearch messages (requires user token)
slack_users_lookup_by_emailFind user by email
slack_reminders_addCreate a new reminder

Environment Variables

SLACK_TOKENrequiredSlack API token (xoxb-, xoxp-, or xoxe.xoxp-)

Configuration

claude_desktop_config.json
{"mcpServers":{"slack":{"command":"uv","args":["run","python","src/main.py"],"env":{"SLACK_TOKEN":"xoxb-your-token"}}}}

Try it

List all the public channels in my Slack workspace.
Send a message to the #general channel saying 'Hello from Claude!'
Search my Slack history for any mentions of the 'Project Phoenix' deadline.
Find the Slack profile for the user with email 'engineering@example.com'.
Set a reminder in Slack to 'Review the pull request' in one hour.

Frequently Asked Questions

What are the key features of Slack MCP Server?

Conversations management including listing channels and reading history.. Messaging capabilities to send, update, delete messages and add reactions.. Workspace-wide message search (requires user token).. User management including profile lookups and email matching.. Support for pins, bookmarks, reminders, and file listing..

What can I use Slack MCP Server for?

Automating status updates or notifications to specific Slack channels.. Searching through historical workspace discussions to find specific information.. Managing channel organization by joining, leaving, or listing members.. Setting personal or channel reminders directly from an AI interface.. Retrieving user contact information and profiles within a workspace..

How do I install Slack MCP Server?

Install Slack MCP Server by running: uv sync && uv run python src/main.py

What MCP clients work with Slack MCP Server?

Slack MCP Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Use Slack MCP Server with Conare

Manage MCP servers visually, upload persistent context, and never start from zero with Claude Code & Codex.

Try Free