slack.com
slack.com logo

Slack

Enables AI interaction with Slack workspaces through nine tools for channel management, messaging, user profiles, and re...

Created byApr 22, 2025

slack-mcp-server

A MCP(Model Context Protocol) server for accessing Slack API. This server allows AI assistants to interact with the Slack API through a standardized interface.

Features

Available tools:
  • slack_list_channels - List public channels in the workspace with pagination
  • slack_post_message - Post a new message to a Slack channel
  • slack_reply_to_thread - Reply to a specific message thread in Slack
  • slack_add_reaction - Add a reaction emoji to a message
  • slack_get_channel_history - Get recent messages from a channel
  • slack_get_thread_replies - Get all replies in a message thread
  • slack_get_users - Retrieve basic profile information of all users in the workspace
  • slack_get_user_profile - Get a user's profile information
  • slack_search_messages - Search for messages in the workspace

Quick Start

Installation

NOTE: Its now hosted in GitHub Registry so you need your PAT.

Configuration

You need to set the following environment variables:
  • SLACK_BOT_TOKEN: Slack Bot User OAuth Token
  • SLACK_USER_TOKEN: Slack User OAuth Token (required for some features like message search)
You can also create a .env file to set these environment variables:

Usage

Start the MCP server

Directly:
Or, run the installed module with node:

Edit MCP configuration json for your client:

Implementation Pattern

This server adopts the following implementation pattern:
  1. Define request/response using Zod schemas
  1. Implementation flow:
For example, the slack_list_channels implementation parses the request with ListChannelsRequestSchema, calls slackClient.conversations.list, and returns the response parsed with ListChannelsResponseSchema.

Development

Available Scripts

  • npm run dev - Start the server in development mode with hot reloading
  • npm run build - Build the project for production
  • npm run start - Start the production server
  • npm run lint - Run linting checks (ESLint and Prettier)
  • npm run fix - Automatically fix linting issues

Contributing

  1. Fork the repository
  1. Create your feature branch
  1. Run tests and linting: npm run lint
  1. Commit your changes
  1. Push to the branch
  1. Create a Pull Request

slack-mcp-server

A MCP(Model Context Protocol) server for accessing Slack API. This server allows AI assistants to interact with the Slack API through a standardized interface.

Features

Available tools:
  • slack_list_channels - List public channels in the workspace with pagination
  • slack_post_message - Post a new message to a Slack channel
  • slack_reply_to_thread - Reply to a specific message thread in Slack
  • slack_add_reaction - Add a reaction emoji to a message
  • slack_get_channel_history - Get recent messages from a channel
  • slack_get_thread_replies - Get all replies in a message thread
  • slack_get_users - Retrieve basic profile information of all users in the workspace
  • slack_get_user_profile - Get a user's profile information
  • slack_search_messages - Search for messages in the workspace

Quick Start

Installation

NOTE: Its now hosted in GitHub Registry so you need your PAT.

Configuration

You need to set the following environment variables:
  • SLACK_BOT_TOKEN: Slack Bot User OAuth Token
  • SLACK_USER_TOKEN: Slack User OAuth Token (required for some features like message search)
You can also create a .env file to set these environment variables:

Usage

Start the MCP server

Directly:
Or, run the installed module with node:

Edit MCP configuration json for your client:

Implementation Pattern

This server adopts the following implementation pattern:
  1. Define request/response using Zod schemas
  1. Implementation flow:
For example, the slack_list_channels implementation parses the request with ListChannelsRequestSchema, calls slackClient.conversations.list, and returns the response parsed with ListChannelsResponseSchema.

Development

Available Scripts

  • npm run dev - Start the server in development mode with hot reloading
  • npm run build - Build the project for production
  • npm run start - Start the production server
  • npm run lint - Run linting checks (ESLint and Prettier)
  • npm run fix - Automatically fix linting issues

Contributing

  1. Fork the repository
  1. Create your feature branch
  1. Run tests and linting: npm run lint
  1. Commit your changes
  1. Push to the branch
  1. Create a Pull Request