Skip to main content

mcp-slack-crunchtools

Secure MCP server for Slack workspaces. Provides Claude Code (and other MCP clients) with read access to your Slack channels, messages, users, and files, and can send a message on your behalf.

Features

  • Mostly read: 15 of the 17 tools only read and publish readOnlyHint: true. The other two send a message and cancel a scheduled one; nothing edits or deletes existing content.
  • Secure: 6-layer security model (input validation, token handling, client hardening, output sanitization, runtime protection, supply chain security).
  • User OAuth Token: Uses xoxp- tokens for user-scoped access to your workspace.
  • No SDK dependency: Uses httpx directly for minimal, auditable HTTP calls.

Quick Start

claude mcp add mcp-slack-crunchtools \
    --env SLACK_USER_TOKEN=xoxp-your-token \
    -- uvx mcp-slack-crunchtools

Using Container

claude mcp add mcp-slack-crunchtools \
    --env SLACK_USER_TOKEN=xoxp-your-token \
    -- podman run -i --rm -e SLACK_USER_TOKEN quay.io/crunchtools/mcp-slack

Local Development

claude mcp add mcp-slack-crunchtools \
    --env SLACK_USER_TOKEN=xoxp-your-token \
    -- uv run mcp-slack-crunchtools

Setup

See CLAUDE.md for detailed instructions on creating a Slack app and obtaining a User OAuth Token.

Configuration

Authentication uses one of two mutually exclusive modes. The server picks cookie mode when both cookie variables are set, and token mode otherwise.

Variable Required Default Description
SLACK_USER_TOKEN token mode — User OAuth token (xoxp-...) from a Slack app installed in the workspace.
SLACK_COOKIE_TOKEN cookie mode — Browser session token (xoxc-...). Must be paired with SLACK_COOKIE_D.
SLACK_COOKIE_D cookie mode — Value of the d cookie (xoxd-...) from the same browser session. Sent as a Cookie: header alongside SLACK_COOKIE_TOKEN.
SLACK_ADD_MESSAGE_DELAY no 3m How far ahead outgoing messages are scheduled, giving you a window to cancel one. Duration string: 30s, 5m, 2h, or a bare integer for seconds. Set to 0, 0s, none, or false to disable scheduling and post immediately.

Which auth mode to use

Cookie mode is the working path for this deployment. Token mode requires a Slack app to be created and approved in the workspace; where that approval is not available, cookie mode is the only way to authenticate at all.

Cookie mode borrows an existing browser session rather than holding a credential issued to an application. That has consequences worth stating plainly:

  • Both values are live session credentials. Anything holding them can act as you in Slack, with your full access. Treat them exactly as you would your password.
  • They expire when the browser session does, so cookie mode needs periodic re-extraction. A sudden wave of auth failures usually means the session rotated, not that the server broke.
  • Slack does not issue these for programmatic use and can invalidate them at any time. Cookie mode is a workaround for the absence of an approved app, not a supported integration path.

Prefer SLACK_USER_TOKEN whenever a Slack app can actually be installed.

Tools

Tool Description
slack_auth_test Test connection and get token owner info
slack_list_channels List workspace channels
slack_get_channel_info Get channel details
slack_get_channel_history Read channel messages
slack_get_thread_replies Read thread replies
slack_list_channel_members List channel members
slack_search_messages Search messages
slack_get_reactions Get message reactions
slack_list_reactions List user's reactions
slack_list_stars List starred items
slack_get_user_info Get user details
slack_list_users List workspace members
slack_get_user_profile Get user profile
slack_list_files List files (metadata only)
slack_get_file_info Get file metadata
slack_send_message Schedule a message SLACK_ADD_MESSAGE_DELAY ahead, or post it immediately when the delay is 0 (write)
slack_cancel_scheduled_message Cancel a scheduled message before it sends (write)

The two write tools need the chat:write scope in token mode.

Security

See SECURITY.md for the full security design document.

License

AGPL-3.0-or-later

Metadata

Release files for mcp-slack-crunchtools 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mcp-slack-crunchtools 0.3.0
File Size Uploaded
mcp_slack_crunchtools-0.3.0.tar.gz 165.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mcp-slack-crunchtools 0.3.0
File Interpreter ABI Platform
mcp_slack_crunchtools-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 194.8 kB

Release files / mcp_slack_crunchtools-0.3.0.tar.gz

Download URL mcp_slack_crunchtools-0.3.0.tar.gz
Size 165.0 kB
Tags Source
SHA-256 checksum
How to use checksums
d589359bc343b9d3ba1f7ee6e55e5354f5e68504160477a3a7b2e52ee1595c36
BLAKE2b-256 checksum
How to use checksums
8e1a6c604da3f9eb08f7f3513140e30cecade189dcc5f9ec52912b7967305dad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.

Transparency log

Release files / mcp_slack_crunchtools-0.3.0-py3-none-any.whl

Download URL mcp_slack_crunchtools-0.3.0-py3-none-any.whl
Size 29.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e4e9074f58505ec99c63f54439350e9ce293a4bcf1080492fd823a08328c7b05
BLAKE2b-256 checksum
How to use checksums
6ed9cf923d12f16d5a88b995583fa93be2cc38afae1913254027ede71fccc54d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page