> ## Documentation Index
> Fetch the complete documentation index at: https://docs.shanone.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Slack

> Connect emma to your Slack workspace for powerful team collaboration

# Slack

Connect emma to your Slack workspace for powerful team collaboration.

## Getting Started

### Installation

<Steps>
  <Step title="Go to Settings">
    Navigate to **Settings > Integrations > Slack** in the emma dashboard.
  </Step>

  <Step title="Click Connect">
    Click the "Connect to Slack" button.
  </Step>

  <Step title="Authorize">
    Authorize emma to access your Slack workspace.
  </Step>

  <Step title="Invite emma to channels">
    Type `/invite @emma` in any channel where you want emma to operate.
  </Step>
</Steps>

## Available Tools

emma provides **113 tools** for comprehensive Slack integration, organized into 24 categories:

<AccordionGroup>
  <Accordion title="Messages (7 tools)">
    | Tool                        | Description                                                          |
    | --------------------------- | -------------------------------------------------------------------- |
    | `slack_search_messages`     | Search the Slack message history using keywords and advanced filters |
    | `slack_get_channel_history` | Get the history of a specific Slack channel                          |
    | `slack_get_thread`          | Get all replies in a Slack thread                                    |
    | `slack_post_message`        | Post a message to a Slack channel or direct message                  |
    | `slack_reply_to_thread`     | Reply to a Slack thread                                              |
    | `slack_update_message`      | Update (edit) an existing message                                    |
    | `slack_delete_message`      | Delete a message from a channel                                      |
  </Accordion>

  <Accordion title="Channels (3 tools)">
    | Tool                        | Description                              |
    | --------------------------- | ---------------------------------------- |
    | `slack_list_channels`       | Get the list of available Slack channels |
    | `slack_get_channel_info`    | Get detailed information about a channel |
    | `slack_get_channel_members` | Get the list of members in a channel     |
  </Accordion>

  <Accordion title="Conversations (12 tools)">
    | Tool                             | Description                                 |
    | -------------------------------- | ------------------------------------------- |
    | `slack_create_channel`           | Create a new public or private channel      |
    | `slack_archive_channel`          | Archive a channel                           |
    | `slack_unarchive_channel`        | Unarchive a previously archived channel     |
    | `slack_rename_channel`           | Rename a channel                            |
    | `slack_set_channel_topic`        | Set the topic for a channel                 |
    | `slack_set_channel_purpose`      | Set the purpose (description) for a channel |
    | `slack_join_channel`             | Join a public channel                       |
    | `slack_leave_channel`            | Leave a channel                             |
    | `slack_invite_to_channel`        | Invite users to a channel                   |
    | `slack_kick_from_channel`        | Remove a user from a channel                |
    | `slack_mark_channel`             | Set the read cursor position in a channel   |
    | `slack_get_conversation_replies` | Get all replies in a thread                 |
  </Accordion>

  <Accordion title="Files (4 tools)">
    | Tool                               | Description                                        |
    | ---------------------------------- | -------------------------------------------------- |
    | `slack_get_files_from_channel`     | Get a list of files uploaded to a specific channel |
    | `slack_get_file_info`              | Get detailed information about a specific file     |
    | `slack_extract_urls_from_messages` | Extract URLs from messages in a channel            |
    | `slack_upload_file`                | Upload a file to Slack                             |
  </Accordion>

  <Accordion title="Files Extended (6 tools)">
    | Tool                       | Description                                 |
    | -------------------------- | ------------------------------------------- |
    | `slack_delete_file`        | Delete a file from Slack                    |
    | `slack_add_remote_file`    | Add a remote file to Slack                  |
    | `slack_list_remote_files`  | List remote files in Slack                  |
    | `slack_share_remote_file`  | Share a remote file to one or more channels |
    | `slack_update_remote_file` | Update a remote file's metadata             |
    | `slack_remove_remote_file` | Remove a remote file from Slack             |
  </Accordion>

  <Accordion title="Users (2 tools)">
    | Tool                  | Description                                      |
    | --------------------- | ------------------------------------------------ |
    | `slack_list_users`    | Get the list of users in the Slack workspace     |
    | `slack_get_user_icon` | Get the Slack icon image URL for a specific user |
  </Accordion>

  <Accordion title="Users Extended (8 tools)">
    | Tool                       | Description                                         |
    | -------------------------- | --------------------------------------------------- |
    | `slack_get_user_info`      | Get detailed information about a user               |
    | `slack_get_user_profile`   | Get a user's profile information                    |
    | `slack_set_user_profile`   | Set the user's profile information                  |
    | `slack_lookup_by_email`    | Find a user by their email address                  |
    | `slack_get_presence`       | Get a user's presence status                        |
    | `slack_set_presence`       | Set the user's presence status                      |
    | `slack_list_conversations` | List conversations (channels) a user is a member of |
    | `slack_get_bot_info`       | Get information about a bot user                    |
  </Accordion>

  <Accordion title="Direct Messages (4 tools)">
    | Tool                       | Description                                             |
    | -------------------------- | ------------------------------------------------------- |
    | `slack_open_dm`            | Open or resume a direct message (DM) or multi-person DM |
    | `slack_close_dm`           | Close a direct message or multi-person DM               |
    | `slack_list_dm_channels`   | List all direct message channels                        |
    | `slack_list_mpim_channels` | List all multi-person direct message channels           |
  </Accordion>

  <Accordion title="Reactions (3 tools)">
    | Tool                    | Description                         |
    | ----------------------- | ----------------------------------- |
    | `slack_add_reaction`    | Add a reaction (emoji) to a message |
    | `slack_remove_reaction` | Remove a reaction from a message    |
    | `slack_get_reactions`   | Get all reactions on a message      |
  </Accordion>

  <Accordion title="Pins (3 tools)">
    | Tool               | Description                           |
    | ------------------ | ------------------------------------- |
    | `slack_add_pin`    | Pin a message to a channel            |
    | `slack_remove_pin` | Remove a pin from a message           |
    | `slack_list_pins`  | List all pinned messages in a channel |
  </Accordion>

  <Accordion title="Stars (3 tools)">
    | Tool                | Description                                   |
    | ------------------- | --------------------------------------------- |
    | `slack_add_star`    | Add a star (save for later) to an item        |
    | `slack_remove_star` | Remove a star from an item                    |
    | `slack_list_stars`  | List starred items for the authenticated user |
  </Accordion>

  <Accordion title="Bookmarks (4 tools)">
    | Tool                    | Description                      |
    | ----------------------- | -------------------------------- |
    | `slack_add_bookmark`    | Add a bookmark to a channel      |
    | `slack_edit_bookmark`   | Edit an existing bookmark        |
    | `slack_list_bookmarks`  | List all bookmarks in a channel  |
    | `slack_remove_bookmark` | Remove a bookmark from a channel |
  </Accordion>

  <Accordion title="Scheduled Messages (3 tools)">
    | Tool                             | Description                                      |
    | -------------------------------- | ------------------------------------------------ |
    | `slack_schedule_message`         | Schedule a message to be sent at a specific time |
    | `slack_list_scheduled_messages`  | List all scheduled messages                      |
    | `slack_delete_scheduled_message` | Delete a scheduled message before it is sent     |
  </Accordion>

  <Accordion title="Reminders (5 tools)">
    | Tool                      | Description                                        |
    | ------------------------- | -------------------------------------------------- |
    | `slack_create_reminder`   | Create a reminder for yourself                     |
    | `slack_list_reminders`    | List all reminders for the authenticated user      |
    | `slack_get_reminder_info` | Get detailed information about a specific reminder |
    | `slack_delete_reminder`   | Delete a reminder                                  |
    | `slack_complete_reminder` | Mark a reminder as complete                        |
  </Accordion>

  <Accordion title="Do Not Disturb (4 tools)">
    | Tool                   | Description                                         |
    | ---------------------- | --------------------------------------------------- |
    | `slack_get_dnd_info`   | Get a user's Do Not Disturb status                  |
    | `slack_set_dnd_snooze` | Enable Do Not Disturb mode for a specified duration |
    | `slack_end_dnd`        | End the current Do Not Disturb session              |
    | `slack_get_team_dnd`   | Get Do Not Disturb status for multiple team members |
  </Accordion>

  <Accordion title="User Groups (7 tools)">
    | Tool                           | Description                                |
    | ------------------------------ | ------------------------------------------ |
    | `slack_list_usergroups`        | List all User Groups in the workspace      |
    | `slack_create_usergroup`       | Create a new User Group                    |
    | `slack_update_usergroup`       | Update an existing User Group's properties |
    | `slack_disable_usergroup`      | Disable a User Group                       |
    | `slack_enable_usergroup`       | Re-enable a disabled User Group            |
    | `slack_list_usergroup_users`   | List all users in a User Group             |
    | `slack_update_usergroup_users` | Update the members of a User Group         |
  </Accordion>

  <Accordion title="Team (4 tools)">
    | Tool                      | Description                                |
    | ------------------------- | ------------------------------------------ |
    | `slack_get_team_info`     | Get information about a Slack workspace    |
    | `slack_get_team_profile`  | Get the team's profile field definitions   |
    | `slack_get_access_logs`   | Get workspace access logs (admin only)     |
    | `slack_get_billable_info` | Get billable user information (admin only) |
  </Accordion>

  <Accordion title="Emoji (3 tools)">
    | Tool                  | Description                             |
    | --------------------- | --------------------------------------- |
    | `slack_list_emoji`    | List all custom emoji in the workspace  |
    | `slack_get_emoji_url` | Get the URL for a specific custom emoji |
    | `slack_search_emoji`  | Search for custom emoji by name         |
  </Accordion>

  <Accordion title="Auth (3 tools)">
    | Tool                          | Description                                              |
    | ----------------------------- | -------------------------------------------------------- |
    | `slack_auth_test`             | Test authentication and get current identity information |
    | `slack_auth_revoke`           | Revoke the current authentication token                  |
    | `slack_list_authorized_teams` | List teams that have authorized the app                  |
  </Accordion>

  <Accordion title="Calls (6 tools)">
    | Tool                             | Description                             |
    | -------------------------------- | --------------------------------------- |
    | `slack_start_call`               | Start/register a new call in Slack      |
    | `slack_end_call`                 | End an active call                      |
    | `slack_get_call_info`            | Get information about a call            |
    | `slack_update_call`              | Update call information                 |
    | `slack_add_call_participants`    | Add participants to an active call      |
    | `slack_remove_call_participants` | Remove participants from an active call |
  </Accordion>

  <Accordion title="Canvases (6 tools)">
    | Tool                           | Description                             |
    | ------------------------------ | --------------------------------------- |
    | `slack_create_canvas`          | Create a new Canvas                     |
    | `slack_edit_canvas`            | Edit an existing Canvas                 |
    | `slack_delete_canvas`          | Delete a Canvas                         |
    | `slack_set_canvas_access`      | Set access permissions for a Canvas     |
    | `slack_delete_canvas_access`   | Remove access permissions from a Canvas |
    | `slack_lookup_canvas_sections` | Look up sections in a Canvas            |
  </Accordion>

  <Accordion title="Lists (9 tools)">
    | Tool                       | Description                                |
    | -------------------------- | ------------------------------------------ |
    | `slack_create_list`        | Create a new List                          |
    | `slack_update_list`        | Update a List's properties                 |
    | `slack_set_list_access`    | Set access permissions for a List          |
    | `slack_delete_list_access` | Remove access permissions from a List      |
    | `slack_create_list_item`   | Create a new item in a List                |
    | `slack_update_list_item`   | Update an item in a List                   |
    | `slack_delete_list_item`   | Delete an item from a List                 |
    | `slack_get_list_item`      | Get information about a specific List item |
    | `slack_list_list_items`    | List all items in a List                   |
  </Accordion>

  <Accordion title="Chat Extended (6 tools)">
    | Tool                   | Description                                               |
    | ---------------------- | --------------------------------------------------------- |
    | `slack_post_ephemeral` | Send an ephemeral message visible only to a specific user |
    | `slack_get_permalink`  | Get the permanent URL for a specific message              |
    | `slack_unfurl_url`     | Customize URL previews in a message                       |
    | `slack_me_message`     | Send a /me style message to a channel                     |
    | `slack_search_all`     | Search for both messages and files in Slack               |
    | `slack_search_files`   | Search for files in Slack                                 |
  </Accordion>

  <Accordion title="Admin - Enterprise Grid (10 tools)">
    | Tool                            | Description                                |
    | ------------------------------- | ------------------------------------------ |
    | `slack_admin_list_users`        | List users in a workspace                  |
    | `slack_admin_invite_user`       | Invite a user to a workspace               |
    | `slack_admin_remove_user`       | Remove a user from a workspace             |
    | `slack_admin_set_admin`         | Grant admin privileges to a user           |
    | `slack_admin_set_regular`       | Demote a user to regular member            |
    | `slack_admin_list_channels`     | Search channels in Enterprise organization |
    | `slack_admin_archive_channel`   | Archive a channel                          |
    | `slack_admin_unarchive_channel` | Unarchive a channel                        |
    | `slack_admin_list_teams`        | List teams in Enterprise organization      |
    | `slack_admin_get_team_info`     | Get team settings information              |
  </Accordion>
</AccordionGroup>

***

## Common Use Cases

<CardGroup cols={2}>
  <Card title="Daily Standups" icon="sun">
    Schedule automated standup reminders and collect team updates.
  </Card>

  <Card title="Report Distribution" icon="chart-bar">
    Generate reports and automatically share them to relevant channels.
  </Card>

  <Card title="Knowledge Search" icon="magnifying-glass">
    Search past conversations to find decisions, links, and information.
  </Card>

  <Card title="Task Tracking" icon="check">
    Use reactions to track task completion and gather feedback.
  </Card>
</CardGroup>

***

## Troubleshooting

<AccordionGroup>
  <Accordion title="emma can't post to a channel">
    emma needs to be invited to the channel first. Type `/invite @emma` in the channel to add emma.
  </Accordion>

  <Accordion title="Message search isn't working">
    Message search requires OAuth authentication with a User Token. Make sure you've completed the OAuth flow in Settings > Integrations > Slack.
  </Accordion>

  <Accordion title="Can't find a channel">
    Use the "List Channels" feature first to see all available channels and their IDs. Private channels require emma to be a member.
  </Accordion>

  <Accordion title="File upload failed">
    Check that:

    * The file size is under 1GB
    * emma has been invited to the target channel
    * The file path or URL is accessible
  </Accordion>

  <Accordion title="Scheduled message failed">
    Ensure the scheduled time is:

    * At least 1 minute in the future
    * No more than 120 days ahead
    * In a valid format (Unix timestamp or ISO format)
  </Accordion>
</AccordionGroup>
