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
MCP Registry Server
A server for discovering and retrieving other MCP servers via MCPulse.
Library Docs MCP Server
Search and fetch documentation for popular libraries like Langchain, Llama-Index, and OpenAI using the Serper API, providing updated information for LLMs.
Rijksmuseum MCP Server
Explore the Rijksmuseum's art collection using natural language.
Discourse MCP Server
Perform search operations on Discourse forums.
Bucketeer Docs Local MCP Server
A local server to query Bucketeer documentation, which automatically fetches and caches content from its GitHub repository.
Airbnb
Search for Airbnb listings and get detailed information about accommodations.
Perplexity Search
Web search and chat completion powered by the Perplexity AI API.
Hermes Search
Provides full-text and semantic search over structured and unstructured data using Azure Cognitive Search.
Ecomm MCP Server
A product search server that provides markdown-formatted responses with clickable product links and prices.
HeadHunter
An MCP server for the HeadHunter API, focusing on job seeker functionalities.