mcp-slack-crunchtools
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SLACK_COOKIE_D | No | Value of the d cookie (xoxd-...) from the same browser session. Sent as a Cookie header alongside SLACK_COOKIE_TOKEN. | |
| SLACK_USER_TOKEN | No | User OAuth token (xoxp-...) from a Slack app installed in the workspace. | |
| SLACK_COOKIE_TOKEN | No | Browser session token (xoxc-...). Must be paired with SLACK_COOKIE_D. | |
| SLACK_ADD_MESSAGE_DELAY | No | How far ahead outgoing messages are scheduled, giving you a window to cancel one. Duration string such as 30s, 5m, 2h, or a bare integer for seconds. Set to 0, 0s, none, or false to disable scheduling and post immediately. | 3m |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| slack_auth_testA | Test Slack authentication and get info about the token owner. Returns the authenticated user's ID, team ID, team name, username, and workspace URL. Use this to verify the connection is working. |
| slack_list_channelsC | List channels in the Slack workspace. |
| slack_get_channel_infoC | Get detailed information about a Slack channel. |
| slack_get_channel_historyC | Get message history from a Slack channel. |
| slack_get_thread_repliesC | Get replies in a Slack message thread. |
| slack_list_channel_membersC | List members of a Slack channel. |
| slack_search_messagesA | Search messages in the Slack workspace. Supports Slack search modifiers: from:user, in:channel, has:link, before:date, after:date, during:month. |
| slack_get_reactionsB | Get reactions for a specific Slack message. |
| slack_list_reactionsC | List reactions made by a user. |
| slack_list_starsB | List starred items for the authenticated user. |
| slack_get_user_infoC | Get information about a Slack user. |
| slack_list_usersC | List users in the Slack workspace. |
| slack_get_user_profileC | Get a Slack user's profile information. |
| slack_list_filesA | List files in the Slack workspace (metadata only, no content download). |
| slack_get_file_infoB | Get metadata about a Slack file (no content download). |
| slack_send_messageA | Send or schedule a Slack message. When SLACK_ADD_MESSAGE_DELAY is set (default: 3m), the message is scheduled via chat.scheduleMessage, giving a cancellation window before delivery. Use slack_cancel_scheduled_message with the returned scheduled_message_id to cancel. Set SLACK_ADD_MESSAGE_DELAY=0 to post immediately. |
| slack_cancel_scheduled_messageB | Cancel a scheduled Slack message before it sends. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 17 tools
Most tools target a clearly distinct resource+action (channel history vs. thread replies vs. search vs. members). The weakest pair is slack_get_user_info vs. slack_get_user_profile, which read as near-duplicates, and get_reactions vs. list_reactions require reading descriptions carefully to separate (reactions on a message vs. reactions by a user). Otherwise selection is straightforward.
Every tool uses the same slack_ prefix followed by a verb_noun pattern (get_channel_info, list_users, send_message, cancel_scheduled_message). There are no camelCase or stylistic deviations, and the verbs (get/list/search/send/cancel/test) map predictably to the operation type.
Seventeen tools is slightly above the ideal band but is well justified for a Slack surface spanning users, channels, messages, threads, reactions, stars, and files. Each tool covers a distinct Slack endpoint rather than being redundant padding.
The surface is heavily read-oriented: there is no add_reaction, no update/edit message, no delete message, no channel create/join/leave, and no file upload (files are explicitly metadata-only). Sending, scheduling, and cancelling messages are covered, but an agent asked to react to, edit, or upload would hit dead ends.