Slack MCP server

Connect Slack to Claude, ChatGPT, Cursor, Claude Code, Codex, Gemini, GitHub Copilot and any other MCP client, for your whole team. Metorial adds security, governance, and tracing, and gives everyone one Magic MCP URL to connect.

What you can do with the Slack MCP server

Ask your agent in plain language. Each of these maps to a real tool on the server.

  • Use the manage pins tool in Slack
  • Use the manage channel members tool in Slack
  • Use the get user info tool in Slack
  • Use the get team info tool in Slack
  • Use the manage user groups tool in Slack
  • Use the send message tool in Slack

Supported Tools

manage_pins

Manage Pins

Pin or unpin messages in a Slack channel, or list all pinned items. Pinned messages are highlighted and easily accessible by all channel members.

manage_channel_members

Manage Channel Members

Invite users to or remove users from a Slack channel. Also supports listing current channel members and joining/leaving channels.

get_user_info

Get User Info

Look up a Slack user's profile and status. Search by user ID, email address, or list all workspace members.

get_team_info

Get Team Info

Retrieve information about the Slack workspace (team), including its name, domain, email domain, and icon.

manage_user_groups

Manage User Groups

Create, update, enable, disable, or list user groups (also known as @mention handle groups) in Slack. Manage group membership by setting the full member list.

send_message

Send Message

Send a message to a Slack channel, group DM, or direct message conversation. Supports plain text, rich Block Kit formatting, threaded replies, and ephemeral messages visible only to a specific user.

schedule_message

Schedule Message

Schedule a message to be sent to a Slack channel at a future time. The message will be delivered automatically at the specified time.

manage_reminders

Manage Reminders

Create, complete, delete, or list Slack reminders. Reminders notify a user at a specified time with a custom message.

manage_channel

Manage Channel

Create, update, archive, unarchive, or configure a Slack channel. Combine multiple channel operations in a single action — create a new channel, rename it, set its topic/purpose, or manage its lifecycle.

get_conversation_history

Get Conversation History

Retrieve message history from a Slack channel, DM, or group DM. Supports pagination, time range filtering, and fetching thread replies.

manage_bookmarks

Manage Bookmarks

Add, edit, remove, or list bookmarks (saved links) in a Slack channel. Bookmarks appear at the top of a channel for quick access.

manage_files

Manage Files

Upload, list, get info about, or delete files in Slack. Upload text content as a file snippet, retrieve file metadata, or list files shared in a channel or by a user.

update_message

Update Message

Update or delete an existing Slack message. Use this to edit message content or remove a message entirely.

manage_reactions

Manage Reactions

Add, remove, or list emoji reactions on a Slack message. Use this to react to messages, remove existing reactions, or see all reactions on a message.

search_messages

Search Messages

Search messages across a Slack workspace with Real-time Search using keywords or a natural-language question. Public-channel search is the default. Widening channelTypes to private channels, DMs, or group DMs requires explicit user consent and the matching granular search scopes, and it never expands access beyond conversations the connected user can already read. Use search_public_and_private when message results should be combined with file, channel, or user results.

list_conversations

List Conversations

List Slack conversations (channels, private channels, DMs, and group DMs) accessible to the authenticated user or bot. Supports filtering by conversation type and pagination.

get_conversation_info

Get Conversation Info

Retrieve stable metadata for a Slack conversation, including channel type, membership, topic, purpose, member count, and timestamps.

manage_scheduled_messages

Manage Scheduled Messages

List or delete Slack messages that are scheduled to be sent later.

search_files

Search Files

Search files shared across a Slack workspace with Real-time Search using keywords or a natural-language question. Public-channel search is the default. Widening channelTypes to private channels, DMs, or group DMs requires explicit user consent and the matching granular search scopes, and it never expands access beyond conversations the connected user can already read. Follow file results with read_file to download content.

open_conversation

Open Conversation

Open or resume a Slack direct message or group direct message with one or more users.

manage_user_status

Manage User Status

Get, set, or clear the authorized Slack user's custom status.

search_users

Search Users

Find Slack people by partial name, email, title, department, role, or other profile terms and return stable user IDs for messages and mentions. Use this query-driven discovery tool when the identity is not yet known; use get_user_info for a known user ID or exact email, a full profile lookup, or paginated member listing.

search_public_and_private

Search Public and Private Content

Consent-sensitive Real-time Search across public channels and the private channels, DMs, and group DMs accessible to the connected Slack user. Invoke this tool only after the user explicitly consents to searching private or direct-message content. It never expands access beyond conversations that connected user can already read. By default it searches messages across public channels, private channels, DMs, and group DMs.

create_canvas

Create Canvas

Create a persistent Slack Canvas for meeting notes, plans, reports, or other structured documents. Canvas Markdown is distinct from Slack message mrkdwn.

update_user_profile

Update User Profile

Update the connected Slack user's profile fields without changing their status or email address.

edit_canvas

Edit Canvas

Insert, replace, delete, or rename Slack Canvas content. A replace operation without sectionId replaces the entire Canvas document and is destructive.

read_file

Read File

Download the contents of a Slack file by file ID. The result includes file metadata and a Slack permalink when available. Use manage_files with action "get" when only metadata is needed.

search_channels

Search Channels

Find Slack channels by partial name, topic, purpose, or description with bounded Real-time Search. Use this query-driven tool to resolve a channel ID before reads or writes; use list_conversations when you need to browse and paginate the full accessible conversation list. Public-channel search is the default. Private-channel requests search only channels accessible to the connected user and require search:read.private.

search_public

Search Public Content

Search messages and other discoverable content in public Slack channels with Real-time Search. This tool never searches private channels, DMs, or group DMs; use search_public_and_private only after the user has consented to that broader search. Results default to messages. File and user result types require the connected user token to have the matching granular search scopes.

search_emojis

Search Emojis

Search workspace custom emoji by name or alias target before using one in a message or reaction.

upload_file

Upload File

Upload a document, image, or other binary file to Slack from base64-encoded bytes using Slack’s external upload flow. Use manage_files with action "upload" for text-snippet convenience uploads.

lookup_canvas_sections

Lookup Canvas Sections

Find section IDs in a known Slack Canvas by section type or contained text so later edits can target a section safely. This does not read the complete Canvas document.

read_thread

Read Thread

Read a known Slack thread, returning its parent message, replies, pagination state, and permalink. Use search or channel history first when the thread timestamp is unknown.

who_am_i

Who Am I

Identify the Slack user or bot connected to this integration and the workspace where it is authenticated.

manage_slack_list_access

Manage Slack List Access

Grant, change, or revoke user or channel access to a Slack List. Each invocation targets either users or channels, never both.

update_slack_list_items

Update Slack List Items

Replace one or more typed cell values in existing Slack List rows using stable row and column IDs.

create_slack_list_item

Create Slack List Item

Create one new row in an existing Slack List with optional typed field values.

manage_presence

Manage Presence

Read a Slack user presence or set the connected actor presence to automatic or away. Get requires users:read; set requires users:write.

delete_canvas

Delete Canvas

Permanently delete one Slack Canvas by its explicit ID. This action is destructive and irreversible.

mark_conversation_read

Mark Conversation Read

Advance the connected Slack user's read marker in a channel, private channel, DM, or group DM to an exact message timestamp.

create_slack_list

Create Slack List

Create a Slack List for structured team tracking, such as an action register, project tracker, or task list.

manage_canvas_access

Manage Canvas Access

Set or revoke access to a Slack Canvas for an explicit collection of users or channels.

list_slack_list_items

List Slack List Items

List and paginate rows in a Slack List, including the stable row and column identifiers needed for later updates or deletion.

delete_slack_list_items

Delete Slack List Items

Permanently delete one or more explicitly identified rows from a Slack List. Multi-item deletion is all-or-nothing: if Slack cannot delete every requested item, the batch fails.

get_message

Get Message

Retrieve one exact Slack channel-level message by timestamp with its permalink, full message content, hydrated author details when available, and optional bounded preceding context or thread replies.

download_slack_list

Download Slack List

Start a Slack List export, wait for the bounded asynchronous job to finish, and return the completed export file for download.

manage_dnd

Manage Do Not Disturb

Read Do Not Disturb state or end/set DND for the connected Slack user. Reads require dnd:read; end, end_snooze, and set_snooze require dnd:write.

Connect Slack to your AI client

Every client uses the same Magic MCP URL, and so does any other MCP client. Add it once and sign in with SSO.

  1. Enable Slack in Metorial. In your Metorial portal, enable the Slack MCP server and sign in with the account that owns the data. Access stays governed by your team policies.
  2. Add a custom connector. Open Customize, then Connectors. Select Add, then Custom, then Web.
  3. Paste your Metorial MCP URL. Name it Metorial, paste your Magic MCP URL (<your-magic-mcp-url>) and continue.
  4. Sign in. Select Add and sign in to load Slack tools.

Run Slack through the Metorial gateway

One governed layer for every app your agents reach, not a separate connector per tool.

  • Give Slack and every other app to your whole team through one MCP gateway, behind your SSO.
  • Scope which teams and agents can use Slack tools with role-based access control, and trace every call.
  • Prefer to run it yourself? Metorial is open source and self-hostable.

More integrations teams use with Slack

Sharepoint

Manage SharePoint sites, document libraries, lists, and files. Create, read, update, and delete lists and list items with custom columns. Resolve site users to numeric Person/Group LookupId values. Upload, download, move, copy, and version files in document libraries. Search across sites, files, folders, lists, and list items using Microsoft Search. Manage permissions at site, list, and item levels with granular access control. Define and manage content types and site columns. Retrieve site properties and search for sites across Microsoft 365.

Microsoft Outlook

Send, read, reply to, forward, and manage email messages in user mailboxes. Organize messages into folders, apply categories, flags, and importance levels. Manage file and item attachments. Create, update, delete, and respond to calendar events and meetings. Find available meeting times, manage attendees, handle recurrence, and work with shared or delegated calendars. Create, read, update, and delete contacts, organize them into contact folders, and manage contact photos. Manage tasks and task lists via Microsoft To Do, including due dates, reminders, recurrence, and checklist items. Support for Focused Inbox, @-mentions, mail tips, send-on-behalf, and send-as capabilities.

Gmail

Send, read, and search email messages with support for recipients, attachments, and HTML content. Create, update, and send drafts. Manage conversation threads and organize messages with labels. Search mailboxes using Gmail query syntax (from, to, subject, date, attachment filters). Manage filters and vacation responders, update the primary address's display name and signature, and view send-as aliases, forwarding addresses, and auto-forwarding status. Import and insert messages for migration.

Google Drive

Upload, download, create, copy, move, rename, trash, and permanently delete files and folders in Google Drive. Search for files using complex queries filtering by name, MIME type, owner, modification date, labels, and other metadata. Share files and folders with specific users, groups, or domains with role-based permissions (owner, writer, commenter, reader). Manage shared drives and their members. Export Google Workspace files (Docs, Sheets, Slides) to standard formats like PDF, DOCX, and XLSX. Track file revision history and restore earlier versions. Create, read, update, and delete threaded comments and replies on files. Read label definitions and search files by label. Browse the Drive apps installed for your account. Store app-specific data in a hidden per-user folder.

Confluence

Create, read, update, and delete pages, blog posts, comments, and attachments in Confluence spaces. Manage spaces, permissions, labels, and content restrictions. Search content using Confluence Query Language (CQL). Upload and download file attachments with versioning. Manage users, groups, and group memberships. Create and manage whiteboards, databases, folders, and templates. View and update inline tasks. Access audit logs.

Discord

Send, edit, and delete messages in channels. Manage servers (guilds), channels, roles, members, invites, webhooks, threads, scheduled events, auto moderation rules, audit logs, application commands, and custom guild emojis.

How to use Slack on Metorial

Aggregate Compliance Audit Findings and Notify Responsible Teams

Pull overdue corrective actions and non-compliant audit findings from 21 Risk, then route notifications to the responsible site teams via Slack so issues are acted on promptly.

Aggregate Customer Health Signals from Salesforce and Slack for Success Reviews

Customer success managers prepare for quarterly business reviews by manually pulling together account data from multiple sources. This workflow queries Salesforce for account and opportunity data, searches Slack for recent customer mentions, and compiles a health summary ready for the QBR meeting.

Apollo Prospect Sequencing with Slack Deal Room Notifications

Search Apollo for new prospects matching updated ICP criteria, enroll qualified contacts in the right outbound sequences, and notify the sales team in Slack with prospect summaries so reps can personalize follow-up with full context.

App Store Review Monitoring and GitHub Issue Triage

Monitor Google Play app reviews for negative feedback patterns, search GitHub for related known issues, create new issues for untracked problems, and notify the product team in Slack with a weekly review digest.

Automate PR Review Requests from Linear Issues to GitHub

Engineering teams lose time manually creating GitHub pull requests and linking them back to Linear issues. This workflow reads in-progress Linear issues, checks for associated GitHub branches or PRs, and posts review request reminders to Slack when PRs have been open without review for too long.

Build and Maintain a SharePoint Knowledge Base from Slack Conversations

Identify valuable answers and decisions shared in Slack channels, extract the content, and save it as organised documents in SharePoint so institutional knowledge is preserved and searchable across the organisation.

Client Account Health Monitoring for Customer Success

Pull CRM data on accounts approaching renewal, cross-reference support ticket history, and generate a prioritized health report posted to Slack so customer success managers know which accounts need immediate attention.

Competitive Intelligence Digest for Sales Teams

Research competitor domains for SEO positioning, keyword gaps, and technology stacks, then compile findings into a structured briefing posted to a Slack channel for the sales team.

Competitive Intelligence Research and Slack Briefing

Automatically search the web for competitor news, product updates, and pricing changes, then deliver a structured competitive intelligence briefing to the relevant Slack channel so GTM teams stay informed without manual research.

Compile Competitive Intelligence Briefings from Web Research

Research competitor websites, recent news, and product announcements using web search, then compile structured briefings that are posted to a Slack channel for the go-to-market team.

Compile Competitive Intelligence Reports Using Web Research

Product and marketing teams need regular competitive intelligence but manual research across competitor websites, press releases, and review sites is time-consuming. This workflow searches for recent competitor updates, extracts structured content from key pages, and compiles a digest that can be shared with the team.

Compile Weekly Sprint Reports from Linear and Post to Slack

Engineering managers spend significant time assembling sprint status updates from Linear data and distributing them to stakeholders. This workflow pulls current cycle data from Linear, summarizes issue progress by state and assignee, and posts a formatted weekly report to the appropriate Slack channel.

Coordinate Hardware Field Support Cases Across HubSpot and Slack

When a field support case is escalated in HubSpot, automatically gather device and customer context, create a dedicated Slack channel for the case team, and post a structured briefing so field engineers can collaborate immediately.

Create SharePoint Knowledge Base Articles from Slack Conversations

When a complex question gets resolved in Slack, automatically extract the Q&A thread, format it as a structured knowledge base article, and publish it to the appropriate SharePoint site for future reference.

Discord Community Moderation and Incident Response

Monitor a Discord server for moderation incidents, automatically apply or escalate moderation actions based on severity, create a thread for tracking, and notify the moderation team with context.

Technical notes for Slack

Slack: connect with bot OAuth or user OAuth to work with messages, conversations, search, files, Canvases, Lists, profiles, reactions, reminders, and workspace productivity settings.

Frequently asked questions

Common questions about connecting Slack to AI agents with Metorial.

  1. How many tools does the Slack MCP server have?
    The Slack MCP server exposes 48 tools, including Manage Pins, Manage Channel Members, Get User Info. Each one is governed and traced through Metorial.
  2. Yes. Slack has 18 triggers you can use to start workflows from Slack events.
  3. Any MCP client, including VS Code, Windsurf, Zed, OpenCode and Grok. Each one reaches the Slack MCP server through the same Metorial URL.
  4. Use role-based access control to decide which teams, users, and agents can use Slack and which of its tools they can call.
  5. Yes. Metorial is open source, so you can run the Slack MCP server yourself or use the hosted gateway.

Connect Slack to production AI agents

See how Metorial gives your team governed access to Slack, with tracing and security controls built in.