
The internal coordination layer for Yalc operators. Push agent run summaries, reply alerts, and weekly reports straight into the channels your team already lives in.
claude mcp add slack --env SLACK_BOT_TOKEN=xoxb-your-token --env SLACK_TEAM_ID=T01234567 -- npx -y @modelcontextprotocol/server-slack
Create a Slack app at api.slack.com/apps with bot scopes (channels:history, channels:read, chat:write, reactions:write, users:read). Install to your workspace, copy the Bot User OAuth Token, replace the placeholders, run the command. Or use `claude plugin install slack` if your Claude Code version supports the plugin command.
The Slack MCP is the official `@modelcontextprotocol/server-slack` package. It exposes channel reads, message posts, reactions, user lookups, and thread management as native Claude tool calls. Auth is a single bot token plus your team ID.
For Yalc operators, Slack is the team coordination layer. The MCP lets workflows post agent run summaries to channels, alert on reply intent classification, surface campaign performance digests, and trigger interactive approval flows. Where Notion is async memory, Slack is sync attention.
The Slack MCP sits at the **route** node when Yalc needs to surface output to humans (you, your team, your AM). It pairs with Notion (async state) and Unipile (external comms) to complete the operator loop.
Yalc workflows that benefit most: agent run health alerts, hot reply notifications, weekly campaign digests, signal triggered ICP alerts, and human in the loop approval flows.
The team coordination node. Yalc posts to Slack when a human needs to know something or approve something. Reads are for context (last 10 messages in #gtm) and triggers (a slash command starts a workflow).
Copy paste prompts for Claude Code that invoke the Slack MCP.
Works in Claude Code (primary), Claude Desktop, Cursor, and any MCP-compatible client. The npm package is maintained by the official ModelContextProtocol GitHub org. Slack's per-bot rate limits apply (50 msg/min per channel typical).
At minimum channels:history, channels:read, chat:write, reactions:write, and users:read. For private channels add groups:history and groups:read. For DMs add im:history and im:read.
Yes, if the bot is invited to the channel and has the groups:read and groups:write scopes. The MCP itself doesn't auto join channels.
Set up a Slack slash command pointing at a webhook handler you control. The handler invokes Claude Code (or a Claude API call) which runs the Yalc workflow. The MCP itself is for reads and posts, not slash command receiving.
Yes. The free plan limits message history retention (90 days), so reads of old messages may return empty. Posts and reactions work normally.
Yalc workflows that post to Slack should always include a rate limit and a dry run flag. Test in a private channel first. If you accidentally spam, kick the bot from the channel to break the loop.
As of April 2026, `claude plugin install slack` works on recent Claude Code versions. If your version doesn't support plugins, use the manual `claude mcp add` command above.
Drop it into Claude Code and orchestrate from your next Yalc prompt.
claude mcp add slack --env SLACK_BOT_TOKEN=xoxb-your-token --env SLACK_TEAM_ID=T01234567 -- npx -y @modelcontextprotocol/server-slack