Skip to content

jtalk22/slack-mcp-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

205 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Slack MCP Server

npm version npm downloads MCP Registry License: MIT

Give Claude your Slack. 16 self-hosted tools for channels, search, replies, reactions, unread triage, and user search. Self-host free or use Slack MCP Cloud for Claude-first managed transport, Gemini CLI support, hosted credential handling, deployment review, procurement-ready security review, and a company-led path for teams that need rollout and continuity beyond Slack’s official/self-host MCP options.

Verify & Proof

npx -y @jtalk22/slack-mcp --setup
npx -y @jtalk22/slack-mcp@latest --version
npx -y @jtalk22/slack-mcp@latest --doctor
npx -y @jtalk22/slack-mcp@latest --status

20-second demo · Interactive demo · Start here discussion · Latest release notes · Release-day runbook · Commercial surface map · Demand & visibility ops · Distribution ledger · Release health snapshot · Version parity report · Cloud pricing · Start Solo · Start Team · Workflows · Official vs Managed · Gemini CLI · Readiness · Marketplace readiness · Cloud deployment · Cloud security · Cloud support

Slack MCP proof surface

Tools

Tool Description Safety
slack_health_check Verify token validity and workspace info read-only
slack_token_status Token age, health, and cache stats read-only
slack_refresh_tokens Auto-extract fresh tokens from Chrome read-only*
slack_list_conversations List DMs and channels read-only
slack_conversations_history Get messages from a channel or DM read-only
slack_get_full_conversation Export full history with threads read-only
slack_search_messages Search across workspace read-only
slack_get_thread Get thread replies read-only
slack_users_info Get user details read-only
slack_list_users List workspace users (paginated, 500+) read-only
slack_users_search Search users by name, display name, or email read-only
slack_conversations_unreads Get channels/DMs with unread messages read-only
slack_send_message Send a message to any conversation destructive
slack_add_reaction Add an emoji reaction to a message destructive
slack_remove_reaction Remove an emoji reaction from a message destructive
slack_conversations_mark Mark a conversation as read destructive

All tools carry MCP safety annotations: 12 read-only (readOnlyHint: true), 4 write-path (destructiveHint: true). Only slack_send_message is non-idempotent.

* slack_refresh_tokens modifies local token file only — no external Slack state.

Cloud

Slack MCP Cloud provides 15 managed tools with hosted credential handling. Team adds 3 AI compound workflows for summaries, action items, and decisions. Claude is the primary path; Gemini CLI is the second supported client path on the hosted endpoint.

  • Self-host if you want 16 tools, npm or Docker, and full operator control over runtime and tokens.
  • Use Cloud if you want one remote endpoint, hosted credential handling, deployment review, buyer-facing security review, support, and a hosted account surface.
  • Slack now has an official MCP path. Use Official vs Managed when the decision is about transport ownership versus managed rollout, workflow packaging, and continuity.
  • Solo starts at $19/mo; Team is $49/mo and adds 3 AI workflows plus higher request capacity.
  • Turnkey Team Launch starts at $2.5k+; Managed Reliability starts at $800/mo+ for teams where rollout and operational continuity matter more than raw seat count.
Plan Price Includes
Solo $19/mo 15 standard tools, AES-256-GCM encrypted storage, 5K requests/mo
Team $49/mo 15 standard + 3 AI compound tools, 3 workspaces, 25K requests/mo
Turnkey Team Launch $2.5k+ Deployment review, rollout sequencing, client setup guidance, first-production-use path
Managed Reliability $800/mo+ Ongoing operating review, token-health follow-up, workflow continuity support

Pricing · Start Solo · Start Team · Workflows · Official vs Managed · Gemini CLI · Readiness · Cloud Docs · Security & Procurement · Procurement Brief · Marketplace readiness · Account · Deployment Review · Cloud Support · Privacy Policy

For rollout help or managed deployment review, use Cloud deployment review. For buyer-facing controls, storage, analytics, and procurement questions, use Cloud security and the procurement brief. For direct self-serve purchase with first-party attribution, use Start Solo or Start Team. If the team is comparing Slack’s official path against a managed rollout path, use Official vs Managed and Marketplace readiness. Reproducible self-host bugs stay in standard issues; hosted operational questions belong on Cloud support.

Operated by Revasser. Self-host support is best-effort; managed rollout and Cloud support stay on mcp.revasserlabs.com.

Install & Verify (Self-Hosted)

Runtime: Node.js 20+

npx -y @jtalk22/slack-mcp --setup
npx -y @jtalk22/slack-mcp@latest --version
npx -y @jtalk22/slack-mcp@latest --doctor
npx -y @jtalk22/slack-mcp@latest --status

The setup wizard handles token extraction and validation automatically.

Claude Desktop (macOS)

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "slack": {
      "command": "npx",
      "args": ["-y", "@jtalk22/slack-mcp"]
    }
  }
}
Claude Desktop (Windows/Linux)

Edit %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "slack": {
      "command": "npx",
      "args": ["-y", "@jtalk22/slack-mcp"],
      "env": {
        "SLACK_TOKEN": "xoxc-your-token",
        "SLACK_COOKIE": "xoxd-your-cookie"
      }
    }
  }
}

Windows/Linux users must provide tokens via env since auto-refresh is macOS-only.

Claude Code CLI

Add to ~/.claude.json:

{
  "mcpServers": {
    "slack": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@jtalk22/slack-mcp"]
    }
  }
}
Docker
docker pull ghcr.io/jtalk22/slack-mcp-server:latest
{
  "mcpServers": {
    "slack": {
      "command": "docker",
      "args": ["run", "-i", "--rm",
               "-v", "~/.slack-mcp-tokens.json:/root/.slack-mcp-tokens.json",
               "ghcr.io/jtalk22/slack-mcp-server"]
    }
  }
}

Restart Claude after configuration. Full setup guide: docs/SETUP.md

Hosted HTTP Mode

For remote MCP endpoints (Cloudflare Worker, VPS, etc.):

SLACK_TOKEN=xoxc-... \
SLACK_COOKIE=xoxd-... \
SLACK_MCP_HTTP_AUTH_TOKEN=change-this \
SLACK_MCP_HTTP_ALLOWED_ORIGINS=https://claude.ai \
node src/server-http.js

Details: docs/DEPLOYMENT-MODES.md

Troubleshooting

Tokens expired: Run npx -y @jtalk22/slack-mcp --setup or use slack_refresh_tokens in Claude (macOS).

DMs not showing: Use slack_list_conversations with discover_dms=true to force discovery.

Claude not seeing tools: Verify JSON syntax in config, check logs at ~/Library/Logs/Claude/mcp*.log, fully restart Claude (Cmd+Q).

More: docs/TROUBLESHOOTING.md

Docs

Security

  • Token files stored with chmod 600 (owner-only)
  • macOS Keychain provides encrypted backup
  • Web server binds to localhost only
  • API keys are cryptographically random (crypto.randomBytes)
  • See SECURITY.md for vulnerability reporting

Contributing

PRs welcome. Run node --check on modified files before submitting.

License

MIT — See LICENSE

Disclaimer

This project accesses Slack's Web API using browser session credentials. It is not affiliated with or endorsed by Slack Technologies, Inc. Slack workspace administrators should review their acceptable use policies.