Allows AI assistants to request information and receive responses from humans via Slack.
A Model Context Protocol (MCP) server that enables AI assistants to request information from humans via Slack. This server acts as a bridge between AI systems and human experts, allowing AI to ask questions and receive responses through Slack when it needs human knowledge or clarification.
Run directly from GitHub without installation:
npx github:trtd56/AskOnSlackMCP \
--slack-bot-token "xoxb-your-bot-token" \
--slack-app-token "xapp-your-app-token" \
--slack-channel-id "C1234567890" \
--slack-user-id "U1234567890"
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json
):
{
"mcpServers": {
"slack-human": {
"command": "npx",
"args": [
"github:trtd56/AskOnSlackMCP",
"--slack-bot-token", "xoxb-your-actual-token",
"--slack-app-token", "xapp-your-actual-token",
"--slack-channel-id", "C1234567890",
"--slack-user-id", "U1234567890"
]
}
}
}
@username
) for notificationsSlack App Setup
connections:write
scopeBot Token Scopes
chat:write
- Send messageschannels:read
- Access channel informationusers:read
- Access user informationSocket Mode
Event Subscriptions
message.channels
- Messages in public channelsmessage.groups
- Messages in private channelsmessage.im
- Direct messages (optional)If you want to install locally instead of using npx:
git clone https://github.com/trtd56/AskOnSlackMCP.git
cd AskOnSlackMCP
npm install
npm run build
All configuration is passed via command-line arguments:
--slack-bot-token
- Bot User OAuth Token (xoxb-...)--slack-app-token
- App-Level Token for Socket Mode (xapp-...)--slack-channel-id
- Channel ID where the bot will operate--slack-user-id
- User ID to mention when asking questions--log-level
- (Optional) Logging level (default: INFO)Run with hot-reloading:
npm run dev
Build and run:
npm run build
npm start
Configure your MCP client to use this server directly from GitHub:
{
"mcpServers": {
"human-in-the-loop-slack": {
"command": "npx",
"args": [
"github:trtd56/AskOnSlackMCP",
"--slack-bot-token", "xoxb-your-token",
"--slack-app-token", "xapp-your-token",
"--slack-channel-id", "C1234567890",
"--slack-user-id", "U1234567890"
]
}
}
}
If you've installed locally:
{
"mcpServers": {
"human-in-the-loop-slack": {
"command": "node",
"args": [
"/path/to/AskOnSlackMCP/dist/index.js",
"--slack-bot-token", "xoxb-your-token",
"--slack-app-token", "xapp-your-token",
"--slack-channel-id", "C1234567890",
"--slack-user-id", "U1234567890"
]
}
}
}
ask_on_slack
Main tool for asking questions to humans via Slack.
Parameters:
question
(string): The question to ask the human. Be specific and provide context.Example:
{
"tool": "ask_on_slack",
"arguments": {
"question": "What is the API endpoint for the production server?"
}
}
Usage Notes:
npm run build
- Compile TypeScriptnpm run dev
- Run with hot-reloadingnpm start
- Run compiled codenpm test
- Run tests with Vitestnpm run test:ci
- Run tests with coveragenpm run lint
- Run ESLintnpm run format
- Format code with Prettiernpm run clean
- Clean build artifactssrc/
βββ index.ts # Main MCP server implementation
βββ bin.ts # Binary entry point for npx execution
βββ human.ts # Abstract Human interface
βββ slack-client.ts # Socket Mode Slack implementation
βββ types.ts # TypeScript type definitions
tests/
βββ human.test.ts # Human abstract class tests
βββ index.test.ts # CLI argument parsing tests
βββ slack-client.test.ts # Slack client tests
βββ types.test.ts # Type definition tests
The project uses Vitest for testing. Tests are located in the tests/
directory.
To run tests:
npm test # Run tests in watch mode
npm run test:ci # Run tests once with coverage
The project uses GitHub Actions for continuous integration and deployment.
CI Workflow (ci.yml
): Runs on every push and pull request
Release Workflow (release.yml
): Runs on version tags
Connection Issues
No Response Received
Authentication Errors
xoxb-
xapp-
chat:write
, channels:read
, users:read
Performance Optimization
[TIMING]
prefix for debuggingMIT
Enables room-based messaging between multiple agents.
Enables communication between Claude Code and Claude Desktop for code reviews.
An open-source messaging server for client-to-client communication using MCP HTTP streaming, configurable via an external JSON file.
A bridge between AI assistants and VRChat using MCP and OSC, enabling AI-driven avatar control and interactions in virtual reality.
BGG MCP enables AI tools to interact with the BoardGameGeek API.
An MCP server for collecting interactive user feedback through a graphical user interface.
This server enables users to send emails through various email providers, including Gmail, Outlook, Yahoo, Sina, Sohu, 126, 163, and QQ Mail. It also supports attaching files from specified directories, making it easy to upload attachments along with the email content.
Wassenger MCP server to chat, send messages and automate WhatsApp from any AI model client (free trial available).
An MCP server for interacting with the Warpcast social network.
Send SMS messages using the Aligo SMS API.