Slack
MCP server for Slack Web API — send messages, manage channels, search content, and automate your workspace.
Что умеет
- Slack Send Message: Send a message to a Slack channel, DM, or thread. Supports Block Kit for rich formatting. Always provide "text" as notification fallback even when using "blocks". Rate limit: 1 mes
- Slack Update Message: Update an existing message. Bot can only update messages it posted. Provide new text and/or blocks.
- Slack Delete Message: Delete a message. Bot can only delete messages it posted.
Какие данные видит
Нужен ли аккаунт
Нужен API-ключ из настроек сервиса
MCP server for Slack Web API — send messages, manage channels, search content, and automate your workspace.
Features
- Send, update, delete, and schedule messages with Block Kit support
- Manage channels: create, archive, invite/kick members, set topics
- Search messages and files with Slack's powerful query syntax
- Upload and manage files with 2-step upload process
- React to messages, pin items, and manage bookmarks
- Browse users, team info, and custom emoji
38 Tools
Messages (7): send, update, delete, schedule, cancel scheduled, list scheduled, get permalink Conversations (12): list channels, info, history, thread replies, members, create, archive, invite, kick, join, set topic, open DM Users (2): list all, get info Reactions (3): add, remove, get reactions Search (2): search messages, search files Files (3): upload, list, delete Pins (3): pin, unpin, list pins Bookmarks (4): add, edit, remove, list Team (1): get workspace info Emoji (1): list custom emoji
Configuration
- SLACK_BOT_TOKEN — Get one at https://api.slack.com/apps (create app → OAuth & Permissions → Install → copy Bot Token)
Список инструментов сервера (38)
Технические названия из tools/list. Нужны только разработчикам.
| slack_send_message | Send a message to a Slack channel, DM, or thread. Supports Block Kit for rich formatting. Always provide "text" as notification fallback even when using "blocks". Rate limit: 1 message/sec/channel. |
| slack_update_message | Update an existing message. Bot can only update messages it posted. Provide new text and/or blocks. |
| slack_delete_message | Delete a message. Bot can only delete messages it posted. |
| slack_schedule_message | Schedule a message for future delivery. Max 120 days in the future. Max 30 scheduled messages per channel per 5 minutes. |
| slack_delete_scheduled_message | Delete a pending scheduled message before it is sent. Cannot delete messages posting within 60 seconds. |
| slack_list_scheduled_messages | List pending scheduled messages. Optionally filter by channel or time range. |
| slack_get_permalink | Get a permanent URL for a specific message. |
| slack_list_channels | List channels in the workspace. Filter by type: public_channel, private_channel, im, mpim. |
| slack_get_channel_info | Get detailed information about a channel including topic, purpose, member count. |
| slack_get_channel_history | Get message history from a channel. Returns messages in reverse chronological order. Free plan: 90-day history limit. |
| slack_get_thread_replies | Get replies in a message thread. Returns the parent message and all replies. |
| slack_get_channel_members | List all members of a channel. Returns user IDs with cursor-based pagination. |
| slack_create_channel | Create a new public or private channel. Name must be lowercase, numbers, hyphens, underscores (max 80 chars). |
| slack_archive_channel | Archive a channel. Archived channels can be unarchived later. |
| slack_invite_to_channel | Invite one or more users to a channel. Supports up to 1000 user IDs. |
| slack_kick_from_channel | Remove a user from a channel. |
| slack_join_channel | Join a public channel. Bot must have channels:join scope. |
| slack_set_channel_topic | Set or update the topic of a channel. |
| slack_open_conversation | Open a DM or multi-person DM. Pass 1 user ID for DM, 2-8 for group DM. |
| slack_list_users | List all users in the workspace including deactivated users. Supports cursor-based pagination. |
| slack_get_user_info | Get detailed information about a user including profile, status, admin flags. |
| slack_add_reaction | Add an emoji reaction to a message. Use emoji name without colons (e.g. "thumbsup" not ":thumbsup:"). |
| slack_remove_reaction | Remove an emoji reaction from a message. |
| slack_get_reactions | Get all reactions for a specific message, including emoji names, counts, and user IDs. |
| slack_search_messages | Search for messages matching a query. Supports modifiers: in:#channel, from:@user, has:reaction, before:date, after:date. Free plan: 90-day history limit. |
| slack_search_files | Search for files matching a query. Supports same modifiers as message search. |
| slack_upload_file | Upload a text file to Slack. Uses the 2-step upload process (getUploadURLExternal + completeUploadExternal). For text/code content only. |
| slack_list_files | List files in the workspace. Filter by channel, user, or type. Free plan: files older than 90 days are deleted. |
| slack_delete_file | Delete a file from the workspace. |
| slack_pin_message | Pin a message to a channel. Cannot pin channel join messages or files. |
| slack_unpin_message | Unpin a message from a channel. |
| slack_list_pins | List all pinned items in a channel. |
| slack_add_bookmark | Add a bookmark (link) to a channel. Max 100 bookmarks per channel. |
| slack_edit_bookmark | Update an existing bookmark in a channel. |
| slack_remove_bookmark | Remove a bookmark from a channel. |
| slack_list_bookmarks | List all bookmarks in a channel. |
| slack_get_team_info | Get information about the workspace/team: name, domain, icon, etc. |
| slack_list_emoji | List all custom emoji in the workspace. Returns emoji name-to-URL mapping. Aliases use "alias:emoji_name" format. |