Model Context Protocol (MCP) server for Slack Workspaces. This integration supports both Stdio and SSE transports, proxy settings and does not require any permissions or bots being created or approved by Workspace admins
18 tools with mostly complete schemas and descriptions, but significant gaps in parameter documentation and error handling guidance. Tool names follow verb_noun convention well (conversations_*, reminders_*, bookmarks_*, canvases_*). Descriptions range 50-250 chars, meeting baseline. However, many parameters lack type constraints (enums), and output schemas are not documented. No error recovery guidance. Security: credentials appear to be handled server-side (Slack token via environment), which is correct. Composition is reasonable, tools are single-purpose. Major weakness: parameter descriptions often generic ('ID of the channel') without format/constraint details, and no documented output structure for agents to plan downstream calls.
Add a bookmark to a channel
Edit an existing bookmark
List bookmarks in a channel
Remove a bookmark from a channel
Set access permissions for a canvas
Create a new canvas
Delete a canvas
Output schemas not documented. Agents cannot plan downstream tool calls or extract required fields (e.g., does conversations_history return message_id, user_id, timestamp?). Forces LLMs to guess structure.
Parameter descriptions lack format/constraint details. 'time' in reminders_add accepts 'in 30 minutes', '2pm', 'tomorrow at 9am', '2025-01-15 14:00' but no regex or format spec. 'limit' in conversations_history accepts both time ranges ('1d') and counts ('50'), ambiguous without examples of valid formats.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | <=2025-11-25 | v2 |
Edit an existing canvas
List channels with optional filtering and sorting
Check all direct messages (DMs) for recent activity. This retrieves recent messages from all 1-on-1 DMs and multi-person DMs (MPIMs), making it easy to see what messages you've received across all your direct conversations.
Add a message to a public channel, private channel, or direct message (DM, or IM) conversation by channel_id and thread_ts.
Get messages from the channel (or DM) by channel_id, the last row/column in the response is used as 'cursor' parameter for pagination if not empty
Get a thread of messages posted to a conversation by channelID and thread_ts, the last row/column in the response is used as 'cursor' parameter for pagination if not empty
Search messages in a public channel, private channel, or direct message (DM, or IM) conversation using filters. All filters are optional, if not provided then search_query is required.
Create a new reminder
Delete a reminder
List all reminders
Get a user's presence status
No error recovery guidance. Tools lack descriptions of failure modes and recovery steps. E.g., conversations_add_message does not document what happens if channel_id is invalid, if user lacks permissions, or if message payload exceeds size limits. Agents cannot self-correct.
Destructive tools (reminders_delete, bookmarks_remove, canvases_delete) lack confirmation or dry-run support. No description warns agents of irreversibility. Agents may delete resources unintentionally.
Tool annotations missing. No readOnlyHint, destructiveHint, or idempotentHint declared in tool definitions. Agents cannot infer safety/retry semantics without explicit hints per MCP spec 2026-07-28.