Content
# Slack MCP Server
## Project Overview
**Spring AI** is utilized to support tools such as sending Slack messages and retrieving channel history.
---
## Main Tools
### Implemented Tools
#### 1. Send Message (postMessage)
* Sends messages to a Slack channel. Some Markdown formatting is supported.
#### 2. Fetch Channel History (fetchChannelHistory)
* Retrieves the message history of a Slack channel. You can specify a cursor for pagination and the number of messages to retrieve.
### Tools to be Implemented
#### 1. Upload File (uploadFile)
* A feature to upload files to a Slack channel.
#### 2. Add/Remove Reaction (addReaction/removeReaction)
* A feature to add or remove emoji reactions to messages.
#### 3. Schedule Message (scheduleMessage)
* A feature to schedule messages to be sent at a specific time.
---
## Setup Instructions
### Build and Run
1. Build the Project
```bash
# Build the project
./gradlew build
```
2. Run with **Claude Desktop**
Create the `claude_desktop_config.json` file as follows:
```json
{
"mcpServers": {
"slack-mcp": {
"command": "java",
"args": [
"-Dfile.encoding\u003dUTF-8",
"-jar",
"JAR_PATH"
],
"env": {
"SLACK_BOT_TOKEN": "xoxb-your-bot-token",
"SLACK_CHANNEL_ID": "your-channel-id"
}
}
}
}
```
- `JAR_PATH`: Path to the built jar file
- `SLACK_BOT_TOKEN`: Slack Bot token
- `SLACK_CHANNEL_ID`: Slack channel ID to send messages to
---
## Project Structure
```
src/main/java/dev/luigi/slack/mcp/server/
├── SlackMcpServerApplication.java # Main application class
├── dto/ # Data Transfer Objects
│ ├── common/ # Common DTOs
│ ├── request/ # Request DTOs
│ └── response/ # Response DTOs
└── service/ # Service classes
├── SlackService.java # Slack service interface
├── SlackServiceImpl.java # Slack service implementation
├── file/ # File-related services
├── history/ # Channel history-related services
├── message/ # Message-related services
├── reaction/ # Reaction-related services
└── schedule/ # Scheduled message-related services
```
You Might Also Like
OpenWebUI
Open WebUI is an extensible web interface for customizable applications.

NextChat
NextChat is a light and fast AI assistant supporting Claude, DeepSeek, GPT4...

cherry-studio
Cherry Studio is a multilingual project for creative collaboration.

LibreChat
LibreChat is an open-source chat platform for seamless communication.

Continue
Continue is an open-source project for seamless server management.

repomix
Repomix packages your codebase into AI-friendly formats for easy use.