Documentation Index
Fetch the complete documentation index at: https://mintlify.com/dvlpjrs/guMCP/llms.txt
Use this file to discover all available pages before exploring further.
Overview
The Slack server enables AI agents to read and send messages in Slack channels, create rich canvas messages, and interact with Slack workspaces.Prerequisites
- Python 3.11+
- A Slack App with the following OAuth scopes:
channels:historychannels:readchat:writechat:write.customizeusers:read
Authentication
Create a Slack App
- Create a Slack App
- Add the required OAuth scopes (see above)
- Install the app to your workspace
- Note your Client ID, Client Secret, and Redirect URI
Setup OAuth Configuration
Createlocal_auth/oauth_configs/slack/oauth.json:
Authenticate
Available Tools
read_messages
read_messages
Description: Read messages from a Slack channelParameters:Returns: List of messages in chronological order with timestamps and users
channel(string, required): Slack channel ID or name (with # for names)limit(integer, optional): Maximum number of messages to return (default: 20)
send_message
send_message
Description: Send a message to a Slack channel or userParameters:Returns: Confirmation with message timestamp
channel(string, required): Channel ID or name (# for channels, @ for users)text(string, required): Message text to sendthread_ts(string, optional): Thread timestamp to reply to a thread
create_canvas
create_canvas
Description: Create a Slack canvas message with rich Block Kit contentParameters:Returns: Confirmation with message timestamp
channel(string, required): Channel ID or name (with # for names)title(string, required): Canvas titleblocks(array, required): Array of Slack Block Kit elementsthread_ts(string, optional): Thread timestamp to attach canvas to thread
Resources
The Slack server provides access to channel resources:List Resources
Lists all accessible Slack channels (public and private) up to 100 at a time. URI Format:slack://channel/{channel_id}- Public channelsslack://private/{channel_id}- Private channels
Read Resource
Reads the last 50 messages from a channel with:- Message text
- User information
- Timestamps
- Attachments
Usage Examples
Reading Messages
Sending Messages
Creating Rich Canvas Messages
Channel Identifiers
The Slack server supports multiple ways to identify channels:Channel Names
User Names (for DMs)
Channel IDs
Slack Block Kit
Thecreate_canvas tool uses Slack Block Kit for rich formatting:
Common Block Types
| Block Type | Description | Use Case |
|---|---|---|
header | Large header text | Titles, headings |
section | Text section with markdown | Body content |
divider | Horizontal rule | Separate sections |
image | Display images | Visual content |
actions | Interactive buttons | User actions |
context | Muted text | Metadata, timestamps |
Markdown Support
Usemrkdwn text type for formatting:
*bold*_italic_~strikethrough~`code`<url|link text>
Running the Server
Local Development
Best Practices
- Use channel names: Easier to read than IDs (e.g.,
#generalvsC01234ABCDE) - Thread replies: Use
thread_tsto keep conversations organized - Rich formatting: Use Block Kit for important announcements
- Rate limits: Be mindful of Slack API rate limits
API Reference
| Tool | Purpose | Common Use Cases |
|---|---|---|
read_messages | Read channel messages | Monitor channels, search history |
send_message | Send messages | Notifications, replies, DMs |
create_canvas | Rich messages | Announcements, reports, dashboards |
Thread Timestamps
Slack uses timestamps as thread identifiers. Getthread_ts from:
- Response when sending a message
- Message metadata when reading messages
- Format:
"1234567890.123456"(Unix timestamp with microseconds)