{"name":"com.mcparmory/slack","slug":"mcparmory-slack","title":null,"description":"Manage channels, conversations, users, and workspace apps programmatically","url":"https://mcp.market/server/mcparmory-slack","rating":null,"grade":"B","score":80,"certified":false,"status":"active","category":"productivity","tags":["productivity"],"presence":{"score":31,"stars":31,"forks":4,"downloads_week":148,"last_push_at":"2026-05-12T12:55:57.000Z","license":"NOASSERTION"},"uptime":null,"claimed":false,"transport":"mixed","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/mcparmory/registry","website":null,"version":"1.0.1","remotes":[],"packages":[{"registryType":"pypi","identifier":"mcparmory-slack","version":"1.0.1","runtimeHint":"uvx","transport":{"type":"stdio"}},{"registryType":"oci","identifier":"ghcr.io/mcparmory/slack:1.0.1","runtimeHint":"docker","transport":{"type":"stdio"}}],"tools":[{"name":"add_pin_to_channel","description":"Pins a message to a channel, making it easily accessible to channel members. Requires authentication with pins:write scope.","write_action":false,"price_micros":0,"input_schema":null},{"name":"add_reaction_to_message","description":"Adds an emoji reaction to a message in a channel. Requires authentication with reactions:write scope.","write_action":false,"price_micros":0,"input_schema":null},{"name":"add_star","description":"Adds a star to a specific item, such as a file comment or message. Requires authentication with stars:write scope.","write_action":false,"price_micros":0,"input_schema":null},{"name":"add_users_to_conversation","description":"Adds one or more users to a conversation channel. Specify users by their IDs in a comma-separated list.","write_action":false,"price_micros":0,"input_schema":null},{"name":"archive_conversation","description":"Archives a conversation, removing it from the active conversation list while preserving its history for future reference.","write_action":false,"price_micros":0,"input_schema":null},{"name":"close_conversation","description":"Closes 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"create_conversation","description":"Creates 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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_reminder","description":"Creates 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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_usergroup","description":"Create a new User Group with a unique name and optional configuration for channels, description, and mention handle.","write_action":true,"price_micros":0,"input_schema":null},{"name":"delete_file","description":"Permanently deletes a file from the system. This action cannot be undone.","write_action":true,"price_micros":0,"input_schema":null},{"name":"delete_file_comment","description":"Deletes an existing comment on a file. Requires the comment ID to identify which comment to remove.","write_action":true,"price_micros":0,"input_schema":null},{"name":"delete_message","description":"Deletes 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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"delete_scheduled_message","description":"Removes a pending scheduled message from the queue before it is posted to a channel.","write_action":true,"price_micros":0,"input_schema":null},{"name":"delete_user_photo","description":"Remove the user's profile photo. Requires authentication with users.profile:write scope.","write_action":true,"price_micros":0,"input_schema":null},{"name":"disable_dnd","description":"Immediately deactivates the current user's Do Not Disturb mode, restoring normal notification delivery.","write_action":false,"price_micros":0,"input_schema":null},{"name":"disable_usergroup","description":"Disable an existing User Group, preventing its use while preserving its configuration and membership data.","write_action":false,"price_micros":0,"input_schema":null},{"name":"enable_do_not_disturb","description":"Activates Do Not Disturb mode for the current user with a specified duration. If Do Not Disturb is already active, this updates the snooze duration.","write_action":false,"price_micros":0,"input_schema":null},{"name":"enable_file_public_sharing","description":"Enables public sharing for a file by generating a shareable public URL that allows external users to access the file without authentication.","write_action":false,"price_micros":0,"input_schema":null},{"name":"enable_usergroup","description":"Activate a disabled User Group, making it available for use. Optionally retrieve the current member count.","write_action":false,"price_micros":0,"input_schema":null},{"name":"end_dnd_snooze","description":"Immediately ends the current user's do-not-disturb snooze mode, restoring normal notification delivery.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_bot_info","description":"Retrieves detailed information about a specific bot user. Requires authentication with users:read scope.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_conversation_history","description":"Retrieves the message and event history for a conversation within an optional time range. Results can be paginated and filtered by timestamp boundaries.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_conversation_info","description":"Retrieve detailed information about a specific conversation, optionally including locale and member count metadata.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_conversation_thread","description":"Retrieve a thread of messages from a conversation, including a parent message and all its replies within an optional time range.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_dnd_status","description":"Retrieves the current Do Not Disturb status for a user, indicating whether they have notifications muted or disabled.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_file_info","description":"Retrieves metadata and information about a specific file, including details such as size, type, timestamps, and other file attributes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_message_permalink","description":"Generate 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_reactions","description":"Retrieves all reactions added to a specific message, file comment, or other item. Use this to see what emoji reactions users have added to content.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_team_dnd_status","description":"Retrieves the Do Not Disturb status for specified users on a team, allowing you to check up to 50 users at once.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_team_info","description":"Retrieves 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_team_profile","description":"Retrieve detailed profile information for a team, with optional filtering by visibility settings.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_user_by_email","description":"Retrieve a user account by their email address. Returns the user object if found in the workspace.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_user_info","description":"Retrieves detailed information about a specific user, optionally including their locale preference.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_user_presence","description":"Retrieves the presence status of a user. If no user is specified, returns the presence information for the authenticated user.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_user_profile","description":"Retrieves detailed profile information for a specified user or the authenticated user. Requires authentication with users.profile:read scope.","write_action":false,"price_micros":0,"input_schema":null},{"name":"join_conversation","description":"Joins the authenticated user to an existing conversation, enabling participation in the conversation's messages and interactions.","write_action":false,"price_micros":0,"input_schema":null},{"name":"leave_conversation","description":"Removes the authenticated user from a conversation, ending their participation and access to that conversation.","write_action":true,"price_micros":0,"input_schema":null},{"name":"list_channel_pins","description":"Retrieves all items pinned to a specified channel. Pinned items are messages or files that have been marked for easy reference within the channel.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_conversation_members","description":"Retrieve a paginated list of members in a conversation. Use the limit parameter to control the number of results returned per request.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_conversations","description":"Retrieves a list of all conversations (channels and direct messages) in a Slack workspace, with options to filter by type and archive status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_emoji","description":"Retrieves all custom emoji configured for the workspace. This includes emoji names, URLs, and metadata for all custom emoji available to team members.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_files","description":"Retrieve 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_scheduled_messages","description":"Retrieves a list of scheduled messages, optionally filtered by a time range. Use the oldest and latest parameters to narrow results to a specific period.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_stars","description":"Retrieves a list of stars for the authenticated user, with optional pagination control.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_user_conversations","description":"Retrieve 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_user_reactions","description":"Retrieves 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_usergroup_members","description":"Retrieve all users who are members of a specified User Group. Optionally include users from disabled User Groups in the results.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_usergroups","description":"Retrieve all User Groups configured for a team, with optional details about group membership and status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_users","description":"Retrieves all users in a Slack workspace. Results can be paginated and optionally include user locale information.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mark_conversation_read","description":"Mark a conversation as read by setting the read cursor to a specific message timestamp. This updates your read position in the channel.","write_action":false,"price_micros":0,"input_schema":null},{"name":"open_direct_message","description":"Opens 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"remove_pin_from_channel","description":"Removes a pinned message from a channel. Specify the channel and optionally the message timestamp to un-pin.","write_action":true,"price_micros":0,"input_schema":null},{"name":"remove_reaction","description":"Removes an emoji reaction from a message or file comment. Specify either a message timestamp or file comment ID to identify the target item.","write_action":true,"price_micros":0,"input_schema":null},{"name":"remove_star","description":"Removes a star from a specific item, such as a file comment or message. Requires authentication with stars:write scope.","write_action":true,"price_micros":0,"input_schema":null},{"name":"remove_user_from_conversation","description":"Removes a specified user from a conversation, effectively ending their participation in that conversation thread.","write_action":true,"price_micros":0,"input_schema":null},{"name":"revoke_file_public_url","description":"Revokes public and external sharing access for a file, preventing further access via public URLs.","write_action":false,"price_micros":0,"input_schema":null},{"name":"schedule_message","description":"Schedules 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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_messages","description":"Searches for messages matching a query string, with optional result highlighting and sorting capabilities. Returns matching messages from the workspace.","write_action":false,"price_micros":0,"input_schema":null},{"name":"send_ephemeral_message","description":"Sends 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.","write_action":true,"price_micros":0,"input_schema":null},{"name":"send_me_message","description":"Send a me message (action message) to a channel. Me messages are typically used to share actions or emotes in a conversational context.","write_action":true,"price_micros":0,"input_schema":null},{"name":"send_message_to_channel","description":"Sends a message to a Slack channel, private group, or direct message. Supports threaded replies, formatting options, and customizable authorship.","write_action":true,"price_micros":0,"input_schema":null},{"name":"unarchive_conversation","description":"Restores an archived conversation to active status, reversing the archival action and making it accessible again.","write_action":false,"price_micros":0,"input_schema":null},{"name":"update_call","description":"Updates the join URLs and other metadata for an existing Call, allowing you to modify how clients access the call.","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_conversation","description":"Updates the name of an existing conversation. This operation allows you to rename a conversation to better organize or identify it.","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_conversation_purpose","description":"Updates the purpose or topic description for a conversation. This helps organize and clarify the conversation's intent.","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_conversation_topic","description":"Updates the topic for a conversation. The topic is a plain text string used to label or describe the conversation's subject matter.","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_message","description":"Updates the text and formatting of an existing message in a channel. Requires the message timestamp and channel ID to identify which message to update.","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_user_presence","description":"Manually set a user's presence status to either active (auto) or away. Requires authentication with users:write scope.","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_usergroup","description":"Update an existing User Group's properties such as handle, description, and associated channels. Requires usergroups:write scope.","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_usergroup_users","description":"Update the complete membership of a User Group by replacing all users with a new list of user IDs.","write_action":true,"price_micros":0,"input_schema":null},{"name":"users_set_photo","description":"Set the user profile photo","write_action":false,"price_micros":0,"input_schema":null},{"name":"verify_authentication","description":"Verifies that the provided authentication token is valid and returns information about the authenticated user or application.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":80,"grade":"B","scanned_at":"2026-09-27T21:29:59.295Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-27T21:29:59.294Z","components":{"code":{"score":25,"max":25,"notes":["5 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":8,"max":15,"notes":["last push 138 days ago"]},"identity":{"score":7,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"mcparmory-slack","version":"1.0.1","found":true,"weeklyDownloads":148,"license":"MIT","dependencyCount":6,"publishedAt":"2026-05-12T12:56:02.198726Z","repositoryUrl":"https://github.com/mcparmory/registry"}],"repo":{"found":true,"owner":"mcparmory","repo":"registry","archived":false,"pushedAt":"2026-05-12T12:55:57Z","stars":31,"forks":4,"openIssues":1,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/261029234?v=4","ownerCreatedAt":"2026-02-11T20:13:50Z","license":"NOASSERTION"},"icon":{"url":"https://mcparmory.com/favicon-180.png","source":"site","width":180,"height":180},"presence":{"stars":31,"forks":4,"downloadsWeek":148,"license":"NOASSERTION","lastPushAt":"2026-05-12T12:55:57.000Z","score":31}}}},"grade_history":[],"reviews":[]}