# Slack Bot MCP

> Slack Bot MCP gives your AI agent full control over your team's workspace communication. Instantly list channels, audit message history, check user activity, and manage messages across any Slack workspace without touching a dashboard or running complex queries.

## Overview
- **Category:** talk-to-me
- **Price:** Free
- **Tags:** instant-messaging, workspace-management, channel-automation, notifications, team-collaboration

## Description

Managing a large team's conversations in Slack usually means switching tabs, copying IDs, and manually checking multiple threads just to get context. This MCP lets your AI agent handle all that complexity through natural conversation. Instead of opening up the app, you simply ask your agent to perform actions across the entire workspace. It can list every public channel for quick auditing or pull message history from a specific chat thread instantly. Need to know who's online? Your agent checks user presence and delivers those status updates immediately. You can also send announcements or delete old messages right through your prompt, all without needing admin access or deep knowledge of Slack's internal workings. This whole capability is housed within the Vinkius catalog, connecting your preferred AI client to everything you need to manage communication.

## Tools

### send_message
Sends a new text message to any specified Slack channel.

### delete_message
Removes an existing message from within a Slack channel.

### get_channel_info
Retrieves detailed metadata, including the purpose and topic, for a specific channel.

### get_user_info
Fetches complete profile details and information about any user in the workspace.

### join_channel
Causes your agent to join a designated public channel.

### leave_channel
Removes your bot's presence from a specific Slack channel.

### list_channels
Lists all available public channels within the entire workspace.

### list_users
Retrieves an exhaustive list of every user currently registered in your Slack workspace.

### get_history
Pulls the full message history for a given channel, allowing deep context retrieval.

### get_presence
Checks and reports on whether a specific user is currently active or marked as away.

## Prompt Examples

**Prompt:** 
```
List all public channels in my Slack workspace.
```

**Response:** 
```
I've retrieved your public channels. You have 5 active channels, including #general, #marketing, and #dev-updates. Which one would you like to audit for history?
```

**Prompt:** 
```
Send 'Good morning team!' to #general.
```

**Response:** 
```
Message delivered! I've sent your greeting to #general (ID: C12345). The message is now visible to all members.
```

**Prompt:** 
```
Check if user ID U12345 is currently active.
```

**Response:** 
```
Checking presence... User U12345 is currently 'active'. I can retrieve their full profile details if you'd like.
```

## Capabilities

### Audit channel details
Get comprehensive metadata and information about specific or all public channels in the workspace.

### Monitor user status
Check if a specified team member is currently active, away, or offline.

### Review message history
Pull detailed archives of conversations from any channel for real-time monitoring or research.

### Modify messages and channels
Send new updates to specific channels, delete unwanted messages, join public chats, or leave them when done.

### Manage user lists
List all active users in the workspace and pull detailed profiles for any individual member.

## Use Cases

### Investigating a sudden drop in project momentum
The Project Lead asks: 'What were the last 5 decisions made in #dev-updates?' The agent uses `get_history` to pull the critical messages, allowing them to quickly restart discussion without sifting through thousands of irrelevant posts.

### Onboarding a new employee into complex chats
The Community Manager asks: 'List all public channels and summarize their purpose.' The agent runs `list_channels` and uses the metadata to give the new hire an instant, organized overview of every chat they need to know about.

### Handling a crisis announcement
The Support Manager asks: 'Notify everyone that the server is down.' The agent uses `send_message` and targets the main `#general` channel, ensuring instant, reliable communication across all team members.

### Auditing compliance records post-incident
The Operations Lead needs to verify who was involved in a chat. They use `list_users` and then `get_user_info` for key participants, building an auditable timeline of presence and accounts.

## Benefits

- You stop manually checking dashboards. Your agent pulls detailed channel metadata using `get_channel_info`, telling you exactly what each public chat is for.
- No more guessing who's available. Use the `get_presence` tool to instantly check if a user is active or away, letting you know where to direct urgent messages.
- Need old context? Instead of scrolling through endless threads, use `get_history` to pull specific message archives from any channel directly into your workflow.
- Managing announcements becomes instant. You can send updates using `send_message` and even delete mistakes with the `delete_message` tool—all via conversation.
- You maintain control over data flow. By listing all users (`list_users`) and checking profiles (`get_user_info`), you keep a clear, auditable record of who's in the workspace.

## How It Works

The bottom line is that you tell your AI what needs doing in plain English, and it executes the necessary steps across Slack.

1. Subscribe to this MCP and provide your Slack Bot User OAuth Token.
2. Connect your agent via Claude, Cursor, or any compatible client.
3. Ask the agent to perform a specific action, like 'List all channels and check if Jane is online.'

## Frequently Asked Questions

**How can I use the Slack Bot MCP to see what channels exist?**
You run the `list_channels` tool. This immediately provides a complete list of all public channels in your workspace, giving you a full map of where team conversations happen.

**Does the Slack Bot MCP let me audit user data?**
Yes, it lets you retrieve detailed member lists using `list_users` and pull specific profiles for anyone with `get_user_info`. This helps keep your team's contact information up to date.

**What if I need message history from last month?**
Use the `get_history` tool. You simply prompt your agent to retrieve messages for a specific channel and time frame, bypassing the need for manual scrolling or search filters.

**Is it safe to use the Slack Bot MCP to delete old messages?**
Yes, you can use the `delete_message` tool. This is useful for removing sensitive information or correcting mistakes in public channels, but always ensure your agent's scope is correct.

**Does this MCP help me find out who was online?**
You can check real-time status using `get_presence`. This tool confirms if a user is currently marked as active or away, helping you know the best time to reach them.