valeriikot/Slack-Standup-MCP-Server
If you are the rightful owner of Slack-Standup-MCP-Server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The Slack Standup MCP Server is designed to manage daily standup reports and facilitate their distribution to Slack channels.
Slack Standup MCP Server
Model Context Protocol server for managing daily standup reports and sending them to Slack.
🚀 Installation
1. Install dependencies
npm install
2. Configure Claude Desktop
Add this to your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"slack-standup": {
"command": "node",
"args": ["/absolute/path/to/your/index.js"],
"env": {
"SLACK_WEBHOOK_URL": "https://hooks.slack.com/services/YOUR/WEBHOOK/URL"
}
}
}
}
3. Get Slack Webhook URL
- Go to https://api.slack.com/apps
- Create a new app or select existing
- Enable "Incoming Webhooks"
- Add webhook to your channel
- Copy the webhook URL
4. Restart Claude Desktop
After editing the config, restart Claude Desktop completely.
🎯 Usage with Claude
Once the MCP server is running, you can interact with it naturally in Claude:
Example Conversations
Adding items throughout the day:
"Add to my standup: I'm currently testing NOM-276"
"Mark as done: reviewed PRs for NOM-276 code part"
"Add blocker: waiting for API key from DevOps"
"Plan for tomorrow: deploy to staging environment"
Checking your standup:
"Show me my current standup"
"What do I have in my standup so far?"
Sending to Slack:
"Preview my standup message"
"Send my standup to Slack"
Managing data:
"Remove the second item from my done list"
"Clear my standup data"
"Update my standup with these items: [list items]"
🛠️ Available Tools
The MCP server provides these tools to Claude:
- add_standup_item - Add items to any category
- remove_standup_item - Remove items by index
- get_standup - View current standup data
- send_standup - Send to Slack (with preview option)
- clear_standup - Clear all data
- update_standup - Replace entire standup
📝 Data Format
The standup data is stored in ~/.claude_standup_memory.json:
{
"inProgress": [
"https://rimthan-lab.atlassian.net/browse/NOM-276 - testing"
],
"done": [
"reviews PRs https://rimthan-lab.atlassian.net/browse/NOM-276 code part"
],
"blockers": [
"Waiting for API access"
],
"plannedNext": [
"Deploy to staging",
"Run integration tests"
],
"lastUpdated": "2025-10-15T10:30:00.000Z",
"date": "10/15/2025"
}
🔍 Testing
Test the MCP server directly:
node index.js
Then type MCP commands in JSON format:
{"jsonrpc":"2.0","id":1,"method":"tools/list"}
{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_standup","arguments":{}}}
📋 Environment Variables
SLACK_WEBHOOK_URL- Required: Your Slack incoming webhook URLSTANDUP_MEMORY_FILE- Optional: Custom path for memory file (default:~/.claude_standup_memory.json)
🎨 Example Workflow
Morning:
You: "Clear my standup from yesterday"
You: "Plan for today: complete NOM-276 testing, review NOM-277 PR"
During the day:
You: "Add in progress: testing NOM-276 authentication flow"
You: "Mark done: fixed bug in login component"
You: "Add blocker: waiting for staging environment access"
End of day:
You: "Show me my standup"
You: "Send my standup to Slack"
🔧 Troubleshooting
MCP server not appearing in Claude:
- Check the config file path is correct
- Ensure the
commandpath points to node executable - Verify
argshas absolute path to index.js - Restart Claude Desktop completely
Slack messages not sending:
- Verify
SLACK_WEBHOOK_URLis set correctly - Test the webhook URL with curl:
curl -X POST -H 'Content-type: application/json' \ --data '{"text":"Test message"}' \ YOUR_WEBHOOK_URL
Memory not persisting:
- Check write permissions for the memory file location
- Verify
STANDUP_MEMORY_FILEpath if using custom location
📚 Resources
🤝 Contributing
Feel free to open issues or submit PRs!
📄 License
MIT