slack-explorer-mcp
Enables searching and retrieving information from Slack messages, threads, files, canvases, and user profiles using a User Token, with advanced filtering capabilities.
README
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)
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:latest -
Use 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 channel -
Search messages from a specific user
Search for yesterday's messages from @john.doe -
Search messages with reactions
Search for messages with :fire: reactions -
Search 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:latest
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。