> This page is for Agent Handler.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.merge.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.merge.dev/_mcp/server.

# Slack

**Authentication:** OAuth. See [Magic Link](/merge-agent-handler/features/magic-link) for the runtime auth flow, or [Application credentials](/merge-agent-handler/admin-setup/add-oauth-credentials) to bring your own OAuth app.

## Sample use cases

* Summarize everything discussed in `#incidents-prod` over the last 24 hours.
* Find every message in `#engineering` mentioning `broken` from this week and create a Linear ticket for each.
* Send a weekly update to `#leadership` with the deliverables shipped this week.

## Available Tools

#### list\_channels

List all channels in the workspace

#### create\_channel

Create a new channel

#### get\_channel\_info

Get information about a channel using Channel ID (not channel name)

#### join\_channel

Join a channel

#### leave\_channel

Leave a channel

#### archive\_channel

Archive a channel

#### unarchive\_channel

Unarchive a channel

#### get\_channel\_members

Get members of a channel

#### invite\_to\_channel

Invite users to a channel

#### kick\_from\_channel

Remove a user from a channel

#### set\_channel\_topic

Set the topic for a channel

#### set\_channel\_purpose

Set the purpose for a channel

#### rename\_channel

Rename a channel

#### get\_file\_info

Get information about a file

#### list\_files

List files in the workspace

#### delete\_file

Delete a file

#### share\_file

Share a file to channels

#### get\_file\_content

Get the content of a text file

#### make\_file\_public

Make a file publicly accessible

#### revoke\_file\_public\_url

Revoke public access to a file

#### post\_message

Send a message to a Slack channel using Channel ID (not channel name)

#### update\_message

Update an existing message in Slack

#### delete\_message

Delete a message from Slack

#### get\_message\_permalink

Get a permanent link to a message

#### get\_conversation\_history

Get message history from a channel using Channel ID with enhanced timestamp filtering.

#### schedule\_message

Schedule a message to be sent later

#### delete\_scheduled\_message

Delete a scheduled message

#### add\_reaction

Add an emoji reaction to a message

#### remove\_reaction

Remove an emoji reaction from a message

#### get\_conversation\_replies

Get all replies in a Slack thread.

#### list\_unread\_direct\_messages

Get all unread direct messages and group DMs with their message content. When presenting results to users, always display username/display\_name instead of user\_id for better readability.

#### list\_unread\_channel\_messages

Get all unread messages from channels with their message content.

#### list\_scheduled\_messages

List scheduled messages that haven't been sent yet

#### get\_unread\_messages\_from\_channel

Get all unread messages from a specific channel.

#### get\_unread\_messages\_from\_user

Get all unread direct messages from a specific user. When presenting results to users, always display username/display\_name instead of user\_id for better readability.

#### list\_pinned\_messages

List all pinned messages and items in a channel

#### pin\_message

Pin a message to a channel

#### unpin\_message

Remove a pinned message from a channel

#### search\_messages

Search Slack messages using Slack's exact search syntax with enhanced timestamp filtering.

#### search\_files

Search for files across Slack using keywords with enhanced timestamp handling and automatic pagination.

#### get\_user\_info

Get complete user information including workspace role, permissions, and profile

#### list\_users

List all users in the workspace

#### lookup\_user\_by\_email

Look up a user by their email address

#### get\_user\_presence

Get a user's presence status

#### set\_user\_presence

Set your own presence status (auto or away)

#### set\_user\_profile

Set profile information for a user

#### get\_users\_conversations

Get conversations a user is a member of

#### set\_user\_status

Set status text and emoji for a user. Only sends emoji parameter when provided (not null/empty).

#### clear\_user\_status

Clear the status for a user

#### post\_message\_by\_name

Send a message to a person or channel by name instead of ID. Resolves display name, real name, username, or channel name to the correct ID and sends t…