AIAtrium
MCP Server
AIAtrium
public

slack mcp server

一个支持更广泛用例的 Slack API 服务器,允许读取私信和代表用户发送消息。

Repository Info

0
Stars
0
Forks
0
Watchers
0
Issues
TypeScript
Language
-
License

About This Server

一个支持更广泛用例的 Slack API 服务器,允许读取私信和代表用户发送消息。

Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.

Documentation

# Slack MCP Server

Forked from https://github.com/modelcontextprotocol/servers/tree/0ad83e8dda5f3a46f0157c6f2c45e03f397d11a1/src/slack

Swapped authentication from bot token to user token to allow to use the MCP server in a wider range of use cases such as reading direct messages and sending messages on behalf of a user.

MCP Server for the Slack API, enabling Claude to interact with Slack workspaces.

## Setup

1. Create a Slack App:

   - Visit the [Slack Apps page](https://api.slack.com/apps)
   - Click "Create New App"
   - Choose "From scratch"
   - Name your app "Slack MCP Server" and select your workspace

2. Configure User Token Scopes:
   Navigate to "OAuth & Permissions" and add these scopes to the user token:

   - `channels:history` - View messages and other content in public channels
   - `channels:read` - View basic channel information
   - `chat:write` - Send messages as the user
   - `reactions:write` - Add emoji reactions to messages
   - `users:read` - View users and their basic information
   - `users.profile:read` - View detailed profiles about users
   - `groups:history` - View messages and other content in private channels
   - `groups:read` - View basic channel information
   - `groups:write` - Send messages to private channels
   - `im:history` - View messages and other content in direct messages
   - `im:read` - View basic direct message information
   - `im:write` - Send messages to direct messages
   - `mpim:history` - View messages and other content in multi-person direct messages
   - `mpim:read` - View basic multi-person direct message information
   - `mpim:write` - Send messages to multi-person direct messages

3. Install App to Workspace:

   - Click "Install to Workspace" and authorize the app
   - Save the "User OAuth Token" that starts with `xoxp-`

4. Run `npm install` to install the dependencies.

## Tools

1. `slack_list_channels`

   - List public or pre-defined channels in the workspace
   - Optional inputs:
     - `limit` (number, default: 100, max: 200): Maximum number of channels to return
     - `cursor` (string): Pagination cursor for next page
   - Returns: List of channels with their IDs and information

2. `slack_post_message`

   - Post a new message to a Slack channel
   - Required inputs:
     - `channel_id` (string): The ID of the channel to post to
     - `text` (string): The message text to post
   - Returns: Message posting confirmation and timestamp

3. `slack_reply_to_thread`

   - Reply to a specific message thread
   - Required inputs:
     - `channel_id` (string): The channel containing the thread
     - `thread_ts` (string): Timestamp of the parent message
     - `text` (string): The reply text
   - Returns: Reply confirmation and timestamp

4. `slack_add_reaction`

   - Add an emoji reaction to a message
   - Required inputs:
     - `channel_id` (string): The channel containing the message
     - `timestamp` (string): Message timestamp to react to
     - `reaction` (string): Emoji name without colons
   - Returns: Reaction confirmation

5. `slack_get_channel_history`

   - Get recent messages from a channel
   - Required inputs:
     - `channel_id` (string): The channel ID
   - Optional inputs:
     - `limit` (number, default: 10): Number of messages to retrieve
   - Returns: List of messages with their content and metadata

6. `slack_get_thread_replies`

   - Get all replies in a message thread
   - Required inputs:
     - `channel_id` (string): The channel containing the thread
     - `thread_ts` (string): Timestamp of the parent message
   - Returns: List of replies with their content and metadata

7. `slack_get_users`

   - Get list of workspace users with basic profile information
   - Optional inputs:
     - `cursor` (string): Pagination cursor for next page
     - `limit` (number, default: 100, max: 200): Maximum users to return
   - Returns: List of users with their basic profiles

8. `slack_get_user_profile`
   - Get detailed profile information for a specific user
   - Required inputs:
     - `user_id` (string): The user's ID
   - Returns: Detailed user profile information

### Usage with Claude Desktop

Add the following to your `claude_desktop_config.json`:

#### NPX

```json
{
  "mcpServers": {
    "slack": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-slack"],
      "env": {
        "SLACK_USER_TOKEN": "xoxp-your-user-token"
      }
    }
  }
}
```

#### docker

```json
{
  "mcpServers": {
    "slack": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-e", "SLACK_USER_TOKEN"],
      "env": {
        "SLACK_USER_TOKEN": "xoxp-your-bot-token"
      }
    }
  }
}
```

### Environment Variables

1. `SLACK_USER_TOKEN`: Required. The Bot User OAuth Token starting with `xoxp-`.

### Troubleshooting

If you encounter permission errors, verify that:

1. All required scopes are added to your Slack app
2. The app is properly installed to your workspace
3. The tokens and workspace ID are correctly copied to your configuration
4. The app has been added to the channels it needs to access

## Build

Docker build:

```bash
docker build -t mcp/slack -f src/slack/Dockerfile .
```

## License

This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

Quick Start

1

Clone the repository

git clone https://github.com/AIAtrium/slack-mcp-server
2

Install dependencies

cd slack-mcp-server
npm install
3

Follow the documentation

Check the repository's README.md file for specific installation and usage instructions.

Repository Details

OwnerAIAtrium
Reposlack-mcp-server
Language
TypeScript
License-
Last fetched8/8/2025

Recommended MCP Servers

💬

Discord MCP

Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.

integrationsdiscordchat
🔗

Knit MCP

Connect AI agents to 200+ SaaS applications and automate workflows.

integrationsautomationsaas
🕷️

Apify MCP Server

Deploy and interact with Apify actors for web scraping and data extraction.

apifycrawlerdata
🌐

BrowserStack MCP

BrowserStack MCP Server for automated testing across multiple browsers.

testingqabrowsers

Zapier MCP

A Zapier server that provides automation capabilities for various apps.

zapierautomation