slack-explorer-mcp
Provides tools to search and retrieve messages, threads, files, user profiles, and canvas content from Slack workspaces.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@slack-explorer-mcpsearch for messages about deployment in #engineering from last week"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Slack Explorer MCP Server
A Model Context Protocol (MCP) server specialized in retrieving information from Slack messages and threads. It provides tools to access messages that the authenticated user can view using a User Token (xoxp).
Available Tools
Message Search (
search_messages)Search Slack messages with advanced filtering options. You can search by channel, user, date range, and specific features (reactions, files, etc.).
Parameters
query: Basic search query. Use dedicated fields for inclusion modifiers (bare modifiers in this field are rejected). Exclusion modifiers prefixed with-(e.g.,-in:#channel) ARE allowed herein_channel: Filter by channel name (e.g., "general", "team-dev")from_user: Search messages from specific user (User ID)with: Search DMs/threads with specific users (array of User IDs)before,after,on: Date range filtering (YYYY-MM-DD format)during: Period specification (e.g., "July", "2023")has: Messages containing specific features (emoji, "pin", "file", "link", "reaction")hasmy: Messages where you reacted with specific emojisort: Sort method ("score" or "timestamp")count: Number of results per page (1-100, default: 20)page: Page number (1-100, default: 1)
Thread Replies (
get_thread_replies)Get all replies in a message thread. Supports pagination for efficiently handling large numbers of replies.
Parameters
channel_id: Channel ID (required)thread_ts: Parent message timestamp (required)limit: Number of replies to retrieve (1-1000, default: 100)cursor: Pagination cursor
User Profiles (
get_user_profiles)Get profile information for multiple users in bulk. Retrieve display names, real names, email addresses, and other profile information by specifying a list of user IDs.
Parameters
user_ids: Array of user IDs (required, max 100)
Search Users by Display Name (
search_users_by_name)Search users by their display name. Supports both exact match and partial match search with case sensitivity.
Parameters
display_name: Display name to search for (required)exact: Enable exact match search
File Search (
search_files)Search for files such as canvases, PDFs, and images. You can filter by file type, channel, user, and date range.
Parameters
query: Basic search query. Use dedicated fields for inclusion modifiers (bare modifiers in this field are rejected). Exclusion modifiers prefixed with-(e.g.,-type:pdfs) ARE allowed heretypes: Filter by file types (e.g., ["canvases", "pdfs"]). Available types: lists, canvases, documents, emails, images, pdfs, presentations, snippets, spreadsheets, audio, videosin_channel: Filter by channel name (e.g., "general", "team-dev")from_user: Search files from specific user (User ID)with_users: Search files in DMs/threads with specific users (array of User IDs)before,after,on: Date range filtering (YYYY-MM-DD format)count: Number of results per page (1-100, default: 20)page: Page number (1-100, default: 1)
Canvas Content (
get_canvas_content)Get HTML content of Slack canvases. Retrieve canvas content by specifying canvas IDs.
Parameters
canvas_ids: Array of canvas IDs (required, max 20)
Related MCP server: Tarantella Slack MCP Server
Setup
Getting a Slack User Token
Create an app at Slack API
Add the following User Token Scopes in OAuth & Permissions:
channels:history- For public channelsgroups:history- For private channelsim:history- For direct messagesmpim:history- For group direct messagessearch:read- For message searchusers.profile:read- For user profilesusers:read- For user informationfiles:read- For file content access
Install the app to your workspace
Get the User OAuth Token (starts with xoxp-)
Tip: To use with multiple users in the same workspace, add them as Collaborators and have each user reinstall from OAuth & Permissions to get their own User OAuth Token
MCP Server Configuration
Configure mcp.json
{ "mcpServers": { "slack-explorer-mcp": { "command": "docker", "args": ["run", "-i", "--rm", "--pull", "always", "-e", "SLACK_USER_TOKEN=xoxp-your-token-here", "ghcr.io/shibayu36/slack-explorer-mcp:latest" ] } } }If you're using Claude Code:
claude mcp add slack-explorer-mcp -- docker run -i --rm --pull always \ -e SLACK_USER_TOKEN=xoxp-your-token-here \ ghcr.io/shibayu36/slack-explorer-mcp:latestUse the agent to perform Slack searches
Examples:
"Search for meeting-related messages in the general channel from last week"
"Find messages from @john.doe about 'project'"
"Get all thread replies for this post"
Usage
Common Search Patterns
Search in a specific channel
Search for "release" messages in the general channelSearch messages from a specific user
Search for yesterday's messages from @john.doeSearch messages with reactions
Search for messages with :fire: reactionsSearch messages you reacted to
Search for messages where you reacted with :eyes:Search messages with file attachments
Search for messages with file attachments
Using as Streamable HTTP Server
By default, the server uses stdio for MCP communication. You can start it as a Streamable HTTP server by setting the TRANSPORT=http environment variable. In HTTP mode, pass the Slack token using the X-Slack-User-Token header.
Starting the server:
# Start HTTP server (default: all interfaces 0.0.0.0, port 8080)
docker run -i --rm --pull always \
-e TRANSPORT=http \
-p 8080:8080 \
ghcr.io/shibayu36/slack-explorer-mcp:latest
# Start with custom host and port
docker run -i --rm --pull always \
-e TRANSPORT=http \
-e HTTP_HOST=127.0.0.1 \
-e HTTP_PORT=9090 \
-p 9090:9090 \
ghcr.io/shibayu36/slack-explorer-mcp:latestThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/shibayu36/slack-explorer-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server