{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"npm-sigmacomputing-slack-mcp-server","slug":"sigmacomputing-slack-mcp-server","name":"@sigmacomputing/slack-mcp-server","type":"mcp","url":"https://github.com/sigmacomputing/slack-mcp-server","page_url":"https://unfragile.ai/sigmacomputing-slack-mcp-server","categories":["mcp-servers"],"tags":[],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"npm-sigmacomputing-slack-mcp-server__cap_0","uri":"capability://tool.use.integration.slack.message.sending.via.mcp.protocol","name":"slack message sending via mcp protocol","description":"Enables LLM agents and MCP clients to send messages to Slack channels and direct messages through the Model Context Protocol, which abstracts Slack's Web API behind a standardized tool interface. The server translates MCP tool calls into authenticated Slack API requests, handling message formatting, channel resolution, and delivery confirmation without requiring clients to manage Slack SDK dependencies or authentication tokens directly.","intents":["Send notifications from an AI agent to a Slack channel when a task completes","Have an LLM post formatted alerts or reports to team channels programmatically","Enable a multi-step workflow where an agent notifies stakeholders via Slack after processing data"],"best_for":["Teams building LLM agents that need to notify Slack channels","Developers integrating Slack notifications into MCP-based workflows","Non-technical teams using Claude or other MCP-compatible LLMs to automate Slack communications"],"limitations":["Message formatting limited to Slack's block kit and markdown syntax — no custom HTML or rich media embedding beyond what Slack natively supports","No built-in rate limiting or queue management — rapid message sends may hit Slack API throttling (60 messages per minute per channel)","Requires valid Slack workspace token with chat:write scope — cannot send to channels the bot lacks permissions for","No message editing or deletion support — sent messages are permanent unless manually removed"],"requires":["Slack workspace with bot token (xoxb-*) with chat:write scope","MCP client compatible with tool-use-integration (Claude, Anthropic SDK, or other MCP-aware LLM)","Network access to Slack API endpoints (api.slack.com)","Node.js 16+ runtime for the MCP server process"],"input_types":["text (message content)","string (channel ID or name)","string (thread timestamp for threaded replies, optional)"],"output_types":["structured JSON (message metadata: timestamp, channel, message_ts)","error response with Slack API error code if delivery fails"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-sigmacomputing-slack-mcp-server__cap_1","uri":"capability://search.retrieval.slack.channel.and.user.lookup.with.context.retrieval","name":"slack channel and user lookup with context retrieval","description":"Provides MCP clients with tools to search and resolve Slack channels and users by name or ID, returning metadata (channel topic, member count, user status, timezone) that enriches LLM context. The server queries Slack's conversations.list, users.list, and info endpoints, caching results in memory to reduce API calls and latency when agents need to identify targets for messages or gather team information.","intents":["Resolve a channel name like 'engineering' to its actual channel ID before sending a message","Look up a user's timezone or status to determine if they're available before pinging them","Retrieve a list of all channels or team members to help an agent decide where to post information"],"best_for":["Agents that need to dynamically discover Slack channels or users at runtime","Workflows where the target channel/user is specified by name rather than hardcoded ID","Teams with large Slack workspaces where manual ID lookup is impractical"],"limitations":["In-memory caching has no TTL — stale data if channels/users are created/deleted during server uptime without restart","Slack API rate limits apply per endpoint (15 requests per minute for users.list) — large workspaces may require pagination and multiple calls","Cannot retrieve private channel membership without explicit permissions — bot must be invited to private channels to list members","User presence data (online/away) is real-time but may lag 1-2 seconds due to Slack's eventual consistency model"],"requires":["Slack bot token with users:read and conversations:read scopes","MCP client that can call multiple sequential tools (for lookup → message workflows)","Workspace with fewer than 10,000 channels/users for practical in-memory caching"],"input_types":["string (channel name or ID)","string (user name, email, or ID)"],"output_types":["structured JSON (channel metadata: id, name, topic, member_count, is_private)","structured JSON (user metadata: id, name, email, real_name, timezone, status, is_bot)"],"categories":["search-retrieval","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-sigmacomputing-slack-mcp-server__cap_2","uri":"capability://search.retrieval.slack.conversation.history.retrieval.with.pagination","name":"slack conversation history retrieval with pagination","description":"Allows MCP clients to fetch message history from Slack channels or threads, returning messages with metadata (sender, timestamp, reactions, thread replies) in chronological order. The server implements pagination via Slack's conversations.history endpoint, supporting cursor-based iteration to handle channels with thousands of messages without loading all data into memory at once.","intents":["Retrieve recent messages from a channel to give an LLM context about ongoing discussions","Fetch a thread's full conversation history to analyze sentiment or extract decisions made","Load the last N messages from a channel to provide context for a new agent response"],"best_for":["Agents that need to understand recent team discussions before taking action","Workflows that analyze Slack conversations for insights (sentiment, decisions, action items)","Teams using Slack as a knowledge base and needing to surface relevant past discussions"],"limitations":["Slack API limits history retrieval to the last 90 days for free workspaces — older messages require paid plan","Pagination cursor expires after 12 hours — long-running jobs fetching large histories may fail mid-pagination","Message content is plain text or markdown — rich formatting (blocks, attachments) are returned as JSON but not rendered","Bot can only retrieve messages from channels it has been invited to — cannot access private channels without explicit membership","Large message batches (1000+ messages) require multiple API calls, each consuming rate limit quota (60 calls per minute)"],"requires":["Slack bot token with channels:history or groups:history scope (depending on channel type)","MCP client capable of handling paginated responses or iterating through cursors","Channel ID (not name) for reliable history retrieval"],"input_types":["string (channel ID)","integer (limit: number of messages to retrieve, 1-1000)","string (cursor for pagination, optional)","string (thread_ts for thread-specific history, optional)"],"output_types":["structured JSON array (messages with: text, user, ts, thread_ts, reactions, reply_count)","string (next_cursor for pagination if more messages exist)"],"categories":["search-retrieval","memory-knowledge"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-sigmacomputing-slack-mcp-server__cap_3","uri":"capability://tool.use.integration.slack.reaction.and.emoji.interaction","name":"slack reaction and emoji interaction","description":"Enables MCP clients to add or remove emoji reactions to Slack messages, allowing agents to acknowledge, categorize, or vote on messages programmatically. The server translates reaction requests into Slack's reactions.add and reactions.remove API calls, supporting any emoji available in the workspace and validating message timestamps to prevent errors.","intents":["Have an agent add a checkmark emoji to a message when a task is completed","Remove a 'pending' emoji from a message once it's been processed","Use emoji reactions as a lightweight voting or categorization mechanism for agent-generated insights"],"best_for":["Agents that need to provide lightweight feedback or status updates via emoji","Workflows using emoji as a state machine (e.g., 'pending' → 'in-progress' → 'done')","Teams that prefer emoji reactions over verbose messages for high-volume notifications"],"limitations":["Limited to emoji available in the workspace — custom emoji must be pre-created in Slack","Cannot add reactions to messages older than 30 days in some workspace configurations","Emoji reactions are visible to all channel members — no private or conditional reactions","Rate limited to 1 reaction per message per second — rapid reaction sequences may fail"],"requires":["Slack bot token with reactions:write scope","Valid message timestamp (ts) from the target message","Emoji name (without colons, e.g., 'thumbsup' not ':thumbsup:')"],"input_types":["string (channel ID)","string (message timestamp)","string (emoji name)"],"output_types":["boolean (success/failure)","error response with Slack error code if reaction fails"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-sigmacomputing-slack-mcp-server__cap_4","uri":"capability://tool.use.integration.slack.thread.management.and.replies","name":"slack thread management and replies","description":"Provides MCP clients with tools to post replies to message threads and retrieve thread metadata, enabling agents to participate in threaded conversations. The server uses Slack's chat.postMessage with thread_ts parameter to nest replies, and conversations.replies to fetch full thread context including all replies and their authors.","intents":["Post a reply to a thread to continue a discussion or provide additional information","Fetch all replies in a thread to understand the full context of a conversation","Have an agent join an existing thread to answer questions or provide updates"],"best_for":["Agents that need to participate in ongoing Slack discussions without creating new messages","Workflows that analyze threaded conversations for decision-making or context","Teams using threads to organize discussions and needing agents to contribute contextually"],"limitations":["Thread replies are only visible if the parent message is still in the channel — deleting the parent collapses the thread","Slack limits thread depth display to 1000 replies in the UI — API can retrieve more but client rendering may struggle","Cannot edit or delete replies after posting — only the original author can modify their message","Thread metadata (reply count, last reply timestamp) may lag 1-2 seconds due to Slack's eventual consistency"],"requires":["Slack bot token with chat:write scope","Parent message timestamp (thread_ts) to reply to","Channel ID where the thread exists"],"input_types":["string (channel ID)","string (thread_ts for the parent message)","string (reply text content)"],"output_types":["structured JSON (reply metadata: ts, thread_ts, user, text)","structured JSON array (all replies in thread with metadata)"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-sigmacomputing-slack-mcp-server__cap_5","uri":"capability://safety.moderation.slack.user.and.channel.permission.checking","name":"slack user and channel permission checking","description":"Enables MCP clients to verify whether the bot has required permissions to perform actions in specific channels or with specific users, returning permission status before attempting operations. The server checks bot membership, channel type (public/private), and required scopes against Slack's auth.test and conversations.info endpoints, preventing failed operations and providing early feedback to agents.","intents":["Check if the bot can send messages to a channel before attempting to post","Verify that the bot has been invited to a private channel before trying to retrieve history","Determine if the bot has permission to add reactions or manage threads in a specific channel"],"best_for":["Agents that need to gracefully handle permission errors before attempting Slack operations","Workflows that dynamically select channels based on bot permissions","Teams with complex Slack permission models needing to validate access before operations"],"limitations":["Permission checks are point-in-time — permissions can change between check and operation if admin modifies bot roles","Scope checking is static (based on token) — cannot detect runtime permission changes like channel removal","No granular permission model — only checks if bot is member and has required scopes, not specific message-level permissions","Requires additional API calls (auth.test, conversations.info) — adds latency to permission validation"],"requires":["Slack bot token with auth:read scope","Channel ID to check permissions for","Knowledge of required scopes for the intended operation"],"input_types":["string (channel ID)","string (operation type: 'send_message', 'read_history', 'add_reaction', etc.)"],"output_types":["structured JSON (permission status: has_access, required_scopes, missing_scopes, reason)"],"categories":["safety-moderation","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-sigmacomputing-slack-mcp-server__cap_6","uri":"capability://tool.use.integration.mcp.protocol.translation.and.tool.schema.generation","name":"mcp protocol translation and tool schema generation","description":"The core MCP server implementation translates Slack API operations into standardized MCP tool definitions with JSON schemas, allowing any MCP-compatible client (Claude, Anthropic SDK, open-source LLM frameworks) to discover and call Slack operations. The server implements the MCP specification for tool registration, parameter validation, and response formatting, abstracting Slack's REST API behind a unified tool interface.","intents":["Enable Claude or other MCP-compatible LLMs to call Slack operations without custom integrations","Provide a standardized interface for Slack operations that works across different LLM frameworks","Allow non-technical users to build Slack automation workflows using natural language with LLMs"],"best_for":["Teams using Claude or other MCP-compatible LLMs that need Slack integration","Developers building multi-tool LLM agents that include Slack as one capability","Organizations standardizing on MCP for LLM integrations across multiple services"],"limitations":["MCP protocol overhead adds ~50-100ms latency per tool call compared to direct SDK usage","Tool schemas must match Slack API parameters exactly — any Slack API changes require server updates","No built-in retry logic or exponential backoff — client must handle Slack API transient failures","MCP server must be running as a separate process — adds operational complexity vs. embedded SDK"],"requires":["MCP-compatible client (Claude with MCP support, Anthropic SDK 0.7+, or other MCP framework)","Node.js 16+ runtime for the MCP server","Network connectivity between MCP client and server"],"input_types":["MCP tool call requests with parameters matching Slack API schemas"],"output_types":["MCP tool response with structured JSON matching Slack API response format"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":35,"verified":false,"data_access_risk":"high","permissions":["Slack workspace with bot token (xoxb-*) with chat:write scope","MCP client compatible with tool-use-integration (Claude, Anthropic SDK, or other MCP-aware LLM)","Network access to Slack API endpoints (api.slack.com)","Node.js 16+ runtime for the MCP server process","Slack bot token with users:read and conversations:read scopes","MCP client that can call multiple sequential tools (for lookup → message workflows)","Workspace with fewer than 10,000 channels/users for practical in-memory caching","Slack bot token with channels:history or groups:history scope (depending on channel type)","MCP client capable of handling paginated responses or iterating through cursors","Channel ID (not name) for reliable history retrieval"],"failure_modes":["Message formatting limited to Slack's block kit and markdown syntax — no custom HTML or rich media embedding beyond what Slack natively supports","No built-in rate limiting or queue management — rapid message sends may hit Slack API throttling (60 messages per minute per channel)","Requires valid Slack workspace token with chat:write scope — cannot send to channels the bot lacks permissions for","No message editing or deletion support — sent messages are permanent unless manually removed","In-memory caching has no TTL — stale data if channels/users are created/deleted during server uptime without restart","Slack API rate limits apply per endpoint (15 requests per minute for users.list) — large workspaces may require pagination and multiple calls","Cannot retrieve private channel membership without explicit permissions — bot must be invited to private channels to list members","User presence data (online/away) is real-time but may lag 1-2 seconds due to Slack's eventual consistency model","Slack API limits history retrieval to the last 90 days for free workspaces — older messages require paid plan","Pagination cursor expires after 12 hours — long-running jobs fetching large histories may fail mid-pagination","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.41687235171028103,"quality":0.24,"ecosystem":0.39999999999999997,"match_graph":0.25,"freshness":0.6,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-05-24T12:16:23.902Z","last_scraped_at":"2026-05-03T14:04:47.472Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":6072,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=sigmacomputing-slack-mcp-server","compare_url":"https://unfragile.ai/compare?artifact=sigmacomputing-slack-mcp-server"}},"signature":"ITWMv5BEHxDNk3Uzp2eUBZ8nDgVZwMD/04JQvolavQ+mYPFCSuSD025R6ew7JcaN7G0u3ar1mIkp12fArPJbBg==","signedAt":"2026-06-22T00:09:56.045Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/sigmacomputing-slack-mcp-server","artifact":"https://unfragile.ai/sigmacomputing-slack-mcp-server","verify":"https://unfragile.ai/api/v1/verify?slug=sigmacomputing-slack-mcp-server","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}