Slack
Integrates with
Slack
MCP Server for Slack
A Model Context Protocol (MCP) server implementation for integrating AI assistants with Slack workspaces.
Overview
This package provides an MCP server that enables AI assistants to interact with Slack workspaces. It allows AI models to:
- List and browse channels
- Send messages to channels
- Reply to threads
- Add reactions to messages
- Retrieve channel history
- Get thread replies
- List users and retrieve user profiles
Installation
## Install from npm
npm install shouting-mcp-slack
## Or install globally
npm install -g shouting-mcp-slack
You can find the package on npm: shouting-mcp-slack
Prerequisites
You need to set up a Slack Bot and obtain the necessary credentials:
- Create a Slack App in the Slack API Console
- Add the following Bot Token Scopes:
channels:history
channels:read
chat:write
reactions:write
users:read
users:read.email
- Install the app to your workspace
- Copy the Bot User OAuth Token
Configuration
The server requires the following environment variables:
SLACK_BOT_TOKEN
: Your Slack Bot User OAuth TokenSLACK_TEAM_ID
: Your Slack Team ID
Usage
Running as a CLI Tool
## Set environment variables
export SLACK_BOT_TOKEN=xoxb-your-token
export SLACK_TEAM_ID=your-team-id
## Run the server
mcp-server-slack
Using in Your Code
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { SlackClient } from "shouting-mcp-slack";
// Initialize the server and client
const server = new Server({...});
const slackClient = new SlackClient(process.env.SLACK_BOT_TOKEN);
// Register your custom handlers
// ...
Available Tools
The server provides the following Slack integration tools:
slack_list_channels
: List available channelsslack_post_message
: Send a message to a channelslack_reply_to_thread
: Reply to a threadslack_add_reaction
: Add a reaction to a messageslack_get_channel_history
: Get message history from a channelslack_get_thread_replies
: Get replies in a threadslack_get_users
: List users in the workspaceslack_get_user_profile
: Get a user's profile
License
ISC