Slack
|
|
| Slug |
slack |
| Category |
Collaboration |
| Maturity |
Alpha |
| Auth Type |
Bearer token (Slack Web API) |
MCP integration with the Slack Web API. Lets a Prospector Studio agent post into Slack, walk channel and thread history, look up users, search messages, react with emoji, and upload files or text snippets — the everyday workspace surface most automation needs.
This plugin is read-write. It can post, update, and delete messages, set channel topics, add reactions, and upload files. Bind it to agents only when that level of authority is intended.
- Post, update, and delete messages; reply in threads.
- Walk channel history and get all replies in a thread.
- List channels (public, private, MPIM, IM) and set channel topics.
- List users; look up a user by ID or by email.
- Add emoji reactions to messages.
- Upload files or text snippets to one or more channels.
- Search messages across the workspace with sort and pagination.
| Header |
Required |
Description |
X-Slack-Token |
yes |
Slack Web API token. Bot tokens (xoxb-…) are the recommended flavor for agent use; user tokens (xoxp-…) and app-level tokens (xapp-…) are also accepted by the upstream API. |
Slack tokens carry their authorization as OAuth scopes attached to the token at install time, not as a role on the issuing user. Bot tokens (xoxb-) are bound to a Slack app's installation in a workspace and grant only the scopes declared in the app manifest; user tokens (xoxp-) are bound to a single user and grant only the scopes that user consented to during the OAuth flow. The token's effective permissions are exactly the scopes it carries — Slack will reject an API method whose required scope is missing with a missing_scope error rather than silently degrading. Scope each agent's bot to the smallest set the bound tools actually need (e.g. chat:write for posting, channels:history + groups:history for reading, users:read.email for lookup_user, files:write for upload_file). Reference: Slack tokens documentation and the per-method scope list under each entry in the Slack Web API methods reference.
slack.com
The plugin advertises 14 MCP tools.
| Tool |
Action |
Purpose |
post_message |
write |
Post a message to a channel (supports thread_ts for thread replies and Block Kit blocks). |
update_message |
write |
Edit an existing message in place. |
delete_message |
write |
Delete a message from a channel. |
add_reaction |
write |
Add an emoji reaction to a message. |
upload_file |
write |
Upload a file or text snippet to one or more channels. |
| Tool |
Action |
Purpose |
list_channels |
read |
List channels in the workspace, filtered by type or archived state. |
get_channel_history |
read |
Get message history for a channel, with oldest/latest time bounds. |
get_thread_replies |
read |
Get all replies in a message thread by channel + ts. |
set_channel_topic |
write |
Set a channel's topic (max 250 chars). |
| Tool |
Action |
Purpose |
list_users |
read |
List all users in the workspace. |
get_user_info |
read |
Get the profile of a user by ID. |
lookup_user |
read |
Look up a user by email address. |
| Tool |
Action |
Purpose |
search_messages |
read |
Search messages workspace-wide; supports Slack search modifiers (from:@user in:#channel keyword). |
{
"name": "post_message",
"arguments": {
"channel": "C01234ABCDE",
"text": "Pipeline finished — 3 detections raised, 1 escalated.",
"thread_ts": "1700000000.000100"
}
}
- Channel ID vs. name. Tools that take a
channel parameter accept either a channel ID (C01234ABCDE) or a channel name (#general). IDs are stable across renames; prefer them for automation.
- Thread replies. Pass
thread_ts to post_message to reply in a thread instead of posting to the channel root.
search_messages requires a user token. The search.messages upstream method is gated to user tokens (xoxp-); a bot token will return not_allowed_token_type. If an agent needs search, install it with a user token rather than a bot token.
upload_file is on the legacy files.upload endpoint. Slack has been migrating to files.getUploadURLExternal + files.completeUploadExternal; the legacy endpoint still works at the time of writing but watch for upstream deprecation.
- Rate limits. Slack Web API methods are tiered (Tier 1 = ~1 req/min, Tier 4 = ~100+ req/min).
chat.postMessage is Tier 4, search.messages is Tier 2 (~20/min). Build pacing into agent tool use.
- Reference docs. Slack Web API methods reference · Token types.