Slack Workspace Automation Server
Automate your Slack workspace interactions by posting messages, replying to threads, adding reactions, and fetching channel or user information. Streamline Slack communication and management with easy-to-use tools accessible via the Model Context Protocol. Enhance productivity by integrating Slack API capabilities directly into your workflows.
Ask AI about Slack Workspace Automation Server
Powered by Claude · Grounded in docs
I know everything about Slack Workspace Automation Server. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
Slack MCP Server
A Model Context Protocol (MCP) server implementation for interacting with the Slack API. This server provides tools for Slack workspace automation.
Features
- Post text messages to Slack channels
- Reply to threads
- Add reactions
- List channels and users
- Fetch channel history and thread replies
Installation
Local Development
- Clone the repository and install dependencies:
npm install
- Create a
.envfile with your Slack credentials:
SLACK_BOT_TOKEN=your_bot_token
SLACK_TEAM_ID=your_team_id
- Build the project:
npm run build
- Run the server:
node build/index.js
Available Tools
User Tools
get_users_on_slack
- Description: Get a list of all users in the workspace with their basic profile information.
- Input:
{ "limit": 100, "cursor": "optional_cursor" }
get_user_profile_on_slack
- Description: Get detailed profile information for a specific user.
- Input:
{ "user_id": "your_user_id" }
Message Tools
send_message_on_slack
- Description: Post a new message to a Slack channel.
- Input:
{ "channel_id": "your_channel_id", "text": "Hello, world!" }
Thread Tools
reply_to_thread_on_slack
- Description: Reply to a specific message thread in Slack.
- Input:
{ "channel_id": "your_channel_id", "thread_ts": "your_thread_ts", "text": "This is a reply" }
get_thread_replies_on_slack
- Description: Get all replies in a message thread.
- Input:
{ "channel_id": "your_channel_id", "thread_ts": "your_thread_ts" }
Channel Tools
channels_list_on_slack
- Description: List public channels in the workspace with pagination.
- Input:
{ "limit": 100, "cursor": "optional_cursor" }
get_channel_history_on_slack
- Description: Get recent messages from a channel.
- Input:
{ "channel_id": "your_channel_id", "limit": 10 }
Reaction Tools
slack_add_reaction
- Description: Add a reaction emoji to a message.
- Input:
{ "channel_id": "your_channel_id", "timestamp": "your_message_ts", "reaction": "your_reaction" }
Usage Example
To call a tool, send a JSON request like this:
{
"method": "tools/call",
"params": {
"name": "send_message_on_slack",
"arguments": {
"channel_id": "your_channel_id",
"text": "Hello from the Slack MCP server!"
}
}
}
Environment Variables
Create a .env file with:
SLACK_BOT_TOKEN=your_bot_token
SLACK_TEAM_ID=your_team_id
Running the Server
npm install
npm run build
npx @modelcontextprotocol/slack-server
Or, for direct node execution:
node build/index.js
License
MIT License. See LICENSE for details.
