Slack MCP server
Manage channels, conversations, users, and workspace apps programmatically
31 stars148 downloads/wk
Reviews
Write oneNobody has reviewed Slack yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Slack tools (72, 25 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
add_pin_to_channelPins a message to a channel, making it easily accessible to channel members. Requires authentication with pins:write scope.
add_reaction_to_messageAdds an emoji reaction to a message in a channel. Requires authentication with reactions:write scope.
add_starAdds a star to a specific item, such as a file comment or message. Requires authentication with stars:write scope.
add_users_to_conversationAdds one or more users to a conversation channel. Specify users by their IDs in a comma-separated list.
archive_conversationArchives a conversation, removing it from the active conversation list while preserving its history for future reference.
close_conversationCloses an active direct message conversation, either between two users or among multiple participants. This action archives the conversation and prevents further messages in that thread.
create_conversationwrite actionCreates a new conversation channel that can be either public or private. Public channels are visible to all users, while private channels restrict access to invited members only.
create_reminderwrite actionCreates a reminder that will be delivered at a specified time. The reminder can be scheduled for a specific Unix timestamp, a relative time within 24 hours, or using natural language descriptions.
create_usergroupwrite actionCreate a new User Group with a unique name and optional configuration for channels, description, and mention handle.
delete_filewrite actionPermanently deletes a file from the system. This action cannot be undone.
delete_file_commentwrite actionDeletes an existing comment on a file. Requires the comment ID to identify which comment to remove.
delete_messagewrite actionDeletes a message from a channel. The message is identified by its timestamp, and deletion can be performed either as the authenticated user or as a bot, depending on the scope and parameters provided.
delete_scheduled_messagewrite actionRemoves a pending scheduled message from the queue before it is posted to a channel.
delete_user_photowrite actionRemove the user's profile photo. Requires authentication with users.profile:write scope.
disable_dndImmediately deactivates the current user's Do Not Disturb mode, restoring normal notification delivery.
disable_usergroupDisable an existing User Group, preventing its use while preserving its configuration and membership data.
enable_do_not_disturbActivates Do Not Disturb mode for the current user with a specified duration. If Do Not Disturb is already active, this updates the snooze duration.
enable_file_public_sharingEnables public sharing for a file by generating a shareable public URL that allows external users to access the file without authentication.
enable_usergroupActivate a disabled User Group, making it available for use. Optionally retrieve the current member count.
end_dnd_snoozeImmediately ends the current user's do-not-disturb snooze mode, restoring normal notification delivery.
get_bot_infoRetrieves detailed information about a specific bot user. Requires authentication with users:read scope.
get_conversation_historyRetrieves the message and event history for a conversation within an optional time range. Results can be paginated and filtered by timestamp boundaries.
get_conversation_infoRetrieve detailed information about a specific conversation, optionally including locale and member count metadata.
get_conversation_threadRetrieve a thread of messages from a conversation, including a parent message and all its replies within an optional time range.
get_dnd_statusRetrieves the current Do Not Disturb status for a user, indicating whether they have notifications muted or disabled.
get_file_infoRetrieves metadata and information about a specific file, including details such as size, type, timestamps, and other file attributes.
get_message_permalinkGenerate a shareable permalink URL for a specific message in a channel or conversation. This allows you to create direct links to individual messages that persist even if the original message is edited.
get_reactionsRetrieves all reactions added to a specific message, file comment, or other item. Use this to see what emoji reactions users have added to content.
get_team_dnd_statusRetrieves the Do Not Disturb status for specified users on a team, allowing you to check up to 50 users at once.
get_team_infoRetrieves information about a team. If no team is specified, returns information about the authenticated user's current team. The authenticated token must have the `team:read` scope.
get_team_profileRetrieve detailed profile information for a team, with optional filtering by visibility settings.
get_user_by_emailwrite actionRetrieve a user account by their email address. Returns the user object if found in the workspace.
get_user_infoRetrieves detailed information about a specific user, optionally including their locale preference.
get_user_presenceRetrieves the presence status of a user. If no user is specified, returns the presence information for the authenticated user.
get_user_profileRetrieves detailed profile information for a specified user or the authenticated user. Requires authentication with users.profile:read scope.
join_conversationJoins the authenticated user to an existing conversation, enabling participation in the conversation's messages and interactions.
leave_conversationwrite actionRemoves the authenticated user from a conversation, ending their participation and access to that conversation.
list_channel_pinsRetrieves all items pinned to a specified channel. Pinned items are messages or files that have been marked for easy reference within the channel.
list_conversation_membersRetrieve a paginated list of members in a conversation. Use the limit parameter to control the number of results returned per request.
list_conversationsRetrieves a list of all conversations (channels and direct messages) in a Slack workspace, with options to filter by type and archive status.
list_emojiRetrieves all custom emoji configured for the workspace. This includes emoji names, URLs, and metadata for all custom emoji available to team members.
list_filesRetrieve a list of files with optional filtering by user, date range, file type, and visibility. Supports showing truncated information for files hidden due to age or team file limits.
list_scheduled_messagesRetrieves a list of scheduled messages, optionally filtered by a time range. Use the oldest and latest parameters to narrow results to a specific period.
list_starsRetrieves a list of stars for the authenticated user, with optional pagination control.
list_user_conversationsRetrieve a list of conversations (channels and direct messages) that the calling user has access to, with optional filtering by user membership, conversation type, and archive status.
list_user_reactionsRetrieves a list of emoji reactions made by a user. By default, returns reactions from the authenticated user, but can be filtered to show reactions from a specific user.
list_usergroup_membersRetrieve all users who are members of a specified User Group. Optionally include users from disabled User Groups in the results.
list_usergroupsRetrieve all User Groups configured for a team, with optional details about group membership and status.
list_usersRetrieves all users in a Slack workspace. Results can be paginated and optionally include user locale information.
mark_conversation_readMark a conversation as read by setting the read cursor to a specific message timestamp. This updates your read position in the channel.
open_direct_messageOpens or resumes a direct message conversation, either a 1:1 DM with a single user or a multi-person DM with multiple users. The conversation is created if it doesn't exist, or resumed if it already does.
remove_pin_from_channelwrite actionRemoves a pinned message from a channel. Specify the channel and optionally the message timestamp to un-pin.
remove_reactionwrite actionRemoves an emoji reaction from a message or file comment. Specify either a message timestamp or file comment ID to identify the target item.
remove_starwrite actionRemoves a star from a specific item, such as a file comment or message. Requires authentication with stars:write scope.
remove_user_from_conversationwrite actionRemoves a specified user from a conversation, effectively ending their participation in that conversation thread.
revoke_file_public_urlRevokes public and external sharing access for a file, preventing further access via public URLs.
schedule_messageSchedules a message to be delivered to a channel at a specified future time. The message content and formatting can be customized with optional parameters for parsing, unfurling, and threading.
search_messagesSearches for messages matching a query string, with optional result highlighting and sorting capabilities. Returns matching messages from the workspace.
send_ephemeral_messagewrite actionSends an ephemeral message visible only to a specific user in a channel. Ephemeral messages disappear after the user refreshes and are useful for temporary notifications or interactive responses.
send_me_messagewrite actionSend a me message (action message) to a channel. Me messages are typically used to share actions or emotes in a conversational context.
send_message_to_channelwrite actionSends a message to a Slack channel, private group, or direct message. Supports threaded replies, formatting options, and customizable authorship.
unarchive_conversationRestores an archived conversation to active status, reversing the archival action and making it accessible again.
update_callwrite actionUpdates the join URLs and other metadata for an existing Call, allowing you to modify how clients access the call.
update_conversationwrite actionUpdates the name of an existing conversation. This operation allows you to rename a conversation to better organize or identify it.
update_conversation_purposewrite actionUpdates the purpose or topic description for a conversation. This helps organize and clarify the conversation's intent.
update_conversation_topicwrite actionUpdates the topic for a conversation. The topic is a plain text string used to label or describe the conversation's subject matter.
update_messagewrite actionUpdates the text and formatting of an existing message in a channel. Requires the message timestamp and channel ID to identify which message to update.
update_user_presencewrite actionManually set a user's presence status to either active (auto) or away. Requires authentication with users:write scope.
update_usergroupwrite actionUpdate an existing User Group's properties such as handle, description, and associated channels. Requires usergroups:write scope.
update_usergroup_userswrite actionUpdate the complete membership of a User Group by replacing all users with a new list of user IDs.
users_set_photoSet the user profile photo
verify_authenticationVerifies that the provided authentication token is valid and returns information about the authenticated user or application.
Public scan report
scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it
- Code scan5 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 138 days ago8/15
- Maintainer identityregistry namespace matches repository owner7/10
How Slack compares
Against every graded Productivity MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 80/100
- higher than 53% of 1,299 Productivity servers
- Tools
- 72
- the typical Productivity server has 7
- Tools that change things
- 35%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 31
- more than 86% of 854 Productivity servers
- Downloads a week
- 148
- more than 65% of 427 Productivity servers with a package
What its tools let an agent do: 33 read · 8 create · 17 change · 11 delete · 3 send or post
Install Slack in Claude Code, Cursor or VS Code
claude mcp add slack -- uvx mcparmory-slack
What the publisher says
From the Slack repository's README, as published. We do not edit it. Read it on GitHub
MCP Armory Registry
Production-ready MCP servers for popular APIs, generated by MCP Blacksmith.
Servers · Install & Usage · Features · How it works · License
MCP servers that connect AI agents to real-world APIs. Each server is a standalone Python package — generated from the upstream OpenAPI spec using MCP Blacksmith and tested against the live API before release. Hosted on MCP Armory or run independently.
<!-- SERVERS:BEGIN -->
Servers
🧠 AI & Machine Learning   ElevenLabs · Linkup · Parallel · Perplexity AI · Ragie · Replicate
📊 Analytics   Ahrefs · Datadog · Google Analytics · Google Search Console · Linkly · Mixpanel · PostHog
⛓️ Blockchain & Crypto   Alchemy NFT
💼 CRM & Sales   Apollo
💬 Communication   Atlassian Confluence · Google Gmail · MailerSend · Mailtrap · Postmark · Resend · Slack
🗄️ Data & Databases   Enigma · Pinecone
🛠️ Developer Tools   AgentQL · Apify · Bitbucket · Bright Data · Browserbase · BuiltWith · Canvas · CircleCI · Codacy · Contentful Management · ConvertAPI · E2B · Firecrawl · GitHub · GitLab · LaunchDarkly · Postman · Scrapingant · Semrush AppCenter · Sentry
📄 Documents & Printing   PDF.co
🛒 E-commerce   Shopify Admin
💰 Finance   Alpha Vantage · Polygon · Ramp
👥 HR & Recruiting   BambooHR
☁️ Infrastructure   Globalping · Grafana · PagerDuty · Rootly · Runpod
⚖️ Legal & Compliance   NetLicensing
🗺️ Maps & Location   Google Maps Platform · IP2Location.io IP Geolocation · OpenCage Geocoding
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Slack: common questions
- Is Slack MCP server safe?
- Mostly: it is graded B (80/100). Read the Slack safety report
- How do I install Slack?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Slack need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Slack maintained?
- The last commit was 176 days ago (2026-05-12). The latest release is v1.0.1.
- What can I use instead of Slack?
- Servers from other publishers that do the same job: Argent MCP server, Agent-Native Dispatch MCP server and Research Hub MCP server.
- How does Slack compare with other Productivity MCP servers?
- safety score 80/100 (higher than 53% of 1,299 Productivity servers); tools 72 (the typical Productivity server has 7); tools that change things 35% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Slack
Same job from other publishers: the closest match first, then the best rated.
- ArgentDrive iOS Simulators, Android emulators, TVs and Electron/web apps from your coding agentnot reviewedWidely usedA
- Agent-Native DispatchCentral Slack/Telegram router with jobs, memory, approvals, and A2A delegationnot reviewedEstablishedA
- Research HubResearch workspace for Zotero + Obsidian + NotebookLM. Search, ingest, sync, verify briefs.not reviewedGrowingA
Flutter MCP ToolkitInspect and drive Flutter debug apps/games: semantic snapshots, search, and custom client toolsnot reviewedGrowingA- HunchFocus-free macOS control for AI agents: drive your real Mac apps in the background, no stolen focus.not reviewedGrowingA