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.
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.
Post to the Bluesky social network using the AT Protocol.
A server for interacting with Apache RocketMQ, a distributed messaging and streaming platform, requiring environment variables for configuration.
Interact with RetellAI's voice services to create conversational voice AI.
An MCP server application that sends various types of messages to the WeCom group robot.
An MCP server for interacting with the Warpcast social network.
BGG MCP enables AI tools to interact with the BoardGameGeek API.
Interact with Twilio APIs to send messages, manage phone numbers, configure your account, and more.
A Slack integration server that allows natural language interaction with the Slack API within the Cursor IDE.