Slack Search
Search for messages and files within a Slack workspace using the Slack API.
Slack Search MCP Server
A Model Context Protocol (MCP) server that provides tools and resources to access Slack's search functionality. This server allows LLMs to search and retrieve users, channels, messages, and more from a Slack workspace.
Features
Tools
get_users- Get a list of users in the Slack workspaceget_channels- Get a list of channels in the Slack workspaceget_channel_messages- Get messages from a specific channelget_thread_replies- Get replies in a threadsearch_messages- Search for messages in Slack
Resources
allusers://- Get all users in the Slack workspaceallchannels://- Get all channels in the Slack workspace
Requirements
- Bun runtime
- Slack API token with appropriate permissions
Installation
- Clone the repository
- Install dependencies:
bun install
Usage
-
Set the Slack API token as an environment variable:
export SLACK_TOKEN=xoxb-your-token-here -
Run the server:
bun run index.tsOr use the compiled version:
./dist/slack_search_function_mcp
Building
To build the executable:
bun run build
This will create a compiled executable in the dist directory.
MCP Configuration
To use this server with an MCP-enabled LLM, add it to your MCP configuration:
{
"mcpServers": {
"slack": {
"command": "/path/to/dist/slack_search_function_mcp",
"env": {
"SLACK_TOKEN": "xoxb-your-token-here"
}
}
}
}
Tool Examples
Get Users
{
"name": "get_users",
"arguments": {
"limit": 10
}
}
Get Channels
{
"name": "get_channels",
"arguments": {
"limit": 10,
"exclude_archived": true
}
}
Get Channel Messages
{
"name": "get_channel_messages",
"arguments": {
"channel": "C01234ABCDE",
"limit": 10
}
}
Get Thread Replies
{
"name": "get_thread_replies",
"arguments": {
"channel": "C01234ABCDE",
"thread_ts": "1234567890.123456",
"limit": 10
}
}
Search Messages
{
"name": "search_messages",
"arguments": {
"query": "important announcement",
"sort": "timestamp",
"sort_dir": "desc",
"count": 10
}
}
Resource Examples
Get All Users
allusers://
Get All Channels
allchannels://
Error Handling
The server includes comprehensive error handling for:
- Invalid or missing Slack API token
- API rate limits
- Network errors
- Invalid parameters
- Authentication failures
Security
- The Slack API token is never logged or exposed in responses
- The token is securely passed via environment variables
Related Servers
NCBI Literature Search
Search NCBI databases, including PubMed, for scientific literature. Tailored for researchers in life sciences, evolutionary biology, and computational biology.
Enhanced PubMed Search
A search server for PubMed, the biomedical literature database, using a pure Node.js implementation.
Mamont Search
A search engine server that provides tools for search queries and cache retrieval.
Perplexity AI
Intelligent search, reasoning, and research capabilities powered by Perplexity's specialized AI models.
O'Reilly Learning Platform
Search and manage content on the O'Reilly Learning Platform.
QuantConnect Docs
An MCP server for intelligent search and retrieval of QuantConnect PDF documentation.
Dartpoint
Access public disclosure information for Korean companies (DART) using the dartpoint.ai API.
JinaAI Grounding
Enhances LLM responses with factual, real-time web content using Jina AI's grounding capabilities.
mu-mcp
Query your local `mu` mail index for fast, structured mail search from MCP clients.
Unified Docs Hub
Creates a massive, searchable knowledge base from numerous curated and auto-discovered GitHub projects.