slack-relay-mcp
MCP ServerFreeCode-execution-based Slack MCP tool — CLI + TypeScript API + Claude Code skill
Capabilities10 decomposed
slack message relay via mcp protocol
Medium confidenceImplements the Model Context Protocol (MCP) as a transport layer to relay Slack messages and events into Claude or other LLM clients. Uses MCP's resource and tool abstractions to expose Slack API operations (send, read, list messages) as standardized LLM-callable functions, enabling bidirectional Slack integration without direct API key exposure to the LLM.
Uses MCP as the integration protocol rather than direct Slack SDK wrapping, allowing the LLM to invoke Slack operations through standardized MCP resource/tool schemas. This decouples the LLM from Slack API authentication and enables multi-client support (Claude, Anthropic SDK, custom LLM agents).
Cleaner than custom Slack API wrappers because MCP standardizes the interface; more secure than embedding Slack tokens in LLM prompts because credentials stay in the MCP server process.
cli-based slack message sending and retrieval
Medium confidenceExposes a command-line interface for sending messages to Slack channels and retrieving message history without requiring LLM integration. Uses Node.js child process execution to invoke Slack API calls, supporting both synchronous message sends and asynchronous channel history queries with optional filtering by timestamp or user.
Provides a thin CLI wrapper around Slack API operations, making Slack integration accessible from shell scripts and CI/CD without requiring Node.js application code. Uses environment variables for credential management, following Unix conventions.
Simpler than curl-based Slack API calls because it handles authentication and JSON serialization; more portable than bash-only solutions because it's cross-platform (Windows, macOS, Linux).
typescript api for slack operations with type safety
Medium confidenceExports a typed TypeScript/JavaScript API for Slack operations (send message, list channels, get message history, post reactions) with full type definitions and async/await support. Wraps the Slack Web API client with convenience methods that handle pagination, error handling, and response normalization, enabling type-safe Slack integration in Node.js applications.
Provides a thin, type-safe wrapper over @slack/web-api with convenience methods for common operations, avoiding boilerplate while maintaining full TypeScript type safety. Designed for composition with other async operations in Node.js workflows.
More type-safe than raw Slack API calls; less opinionated than full-featured bot frameworks (Bolt, Hubot), making it suitable for embedding in existing applications.
claude code skill integration for slack automation
Medium confidenceRegisters slack-relay-mcp as a Claude Code skill, allowing Claude's code interpreter to invoke Slack operations directly during code execution. When Claude writes or executes code, it can call Slack functions to send messages, read channels, or retrieve history as part of a multi-step reasoning workflow, with results fed back into Claude's context for further analysis.
Bridges Claude's code execution environment with Slack by registering as a Code skill, allowing Claude to invoke Slack operations as part of its reasoning loop. This enables Claude to read Slack context, analyze it, and take actions without explicit user prompting for each step.
More integrated than manual Claude + Slack API calls because Claude can reason about Slack data and take actions autonomously; more flexible than pre-built Slack bots because Claude can adapt its behavior based on message content.
mcp resource exposure for slack channels and messages
Medium confidenceExposes Slack channels and messages as MCP resources (read-only or read-write), allowing LLM clients to browse and reference Slack data through the MCP resource protocol. Resources are identified by URIs (e.g., slack://channel/C123456) and return structured JSON representations of channels, message threads, and user metadata, enabling LLMs to understand Slack context without making direct API calls.
Uses MCP's resource protocol to expose Slack data as browsable, structured resources rather than tool-callable functions. This allows LLMs to understand Slack context through resource references, reducing the need for explicit tool calls and enabling more natural context integration.
More efficient than tool-based message retrieval because resources can be cached and referenced by URI; more structured than embedding raw Slack JSON in prompts because resources enforce schema consistency.
mcp tool schema for slack operations with function calling
Medium confidenceDefines MCP tool schemas for Slack operations (send_message, get_channel_history, list_channels, add_reaction) that LLM clients can invoke through the MCP function-calling protocol. Each tool includes input validation schemas, error handling, and response normalization, allowing LLMs to call Slack operations with type-safe arguments and receive structured results.
Implements MCP tool schemas for Slack operations, enabling LLMs to invoke Slack actions through standardized function-calling interfaces. Schemas include input validation and error handling, reducing the burden on the LLM to construct valid Slack API calls.
More standardized than custom tool definitions because it uses MCP's schema format; more flexible than hard-coded tool lists because schemas can be extended with custom operations.
slack bot token authentication and credential management
Medium confidenceHandles Slack bot token authentication through environment variables or configuration files, managing credentials securely without exposing them to LLM contexts. Uses the @slack/web-api client under the hood to authenticate with Slack's OAuth 2.0 flow, supporting token rotation and scope validation to ensure the bot has required permissions.
Isolates Slack credentials in the MCP server process, preventing token exposure to LLM contexts. Uses environment-based configuration following Unix security conventions, enabling credential management through standard deployment tools (Docker secrets, Kubernetes ConfigMaps).
More secure than embedding tokens in prompts or passing them through LLM context; more flexible than hard-coded tokens because it supports environment-based configuration and rotation.
message pagination and history retrieval with filtering
Medium confidenceImplements cursor-based pagination for Slack message history retrieval, allowing efficient querying of large channels without loading all messages into memory. Supports filtering by timestamp range, user ID, or message type, with automatic cursor management and result normalization to handle Slack API's pagination format.
Abstracts Slack's cursor-based pagination into a simple iterator interface, handling cursor management and result normalization transparently. Supports optional filtering by timestamp and user, reducing the need for post-processing.
More efficient than fetching all messages at once because it uses pagination; more flexible than fixed-size queries because it supports arbitrary filtering and cursor-based traversal.
error handling and retry logic for slack api calls
Medium confidenceImplements exponential backoff retry logic for transient Slack API errors (rate limits, temporary outages), with configurable retry counts and backoff strategies. Distinguishes between retryable errors (429 Too Many Requests, 5xx) and permanent errors (401 Unauthorized, 404 Not Found), providing detailed error messages and logging for debugging.
Implements smart retry logic that distinguishes between transient and permanent Slack API errors, using exponential backoff for rate limits while failing fast on authentication errors. Provides detailed error context for debugging.
More resilient than naive retry-all approaches because it avoids retrying permanent errors; more transparent than silent retries because it logs backoff decisions and error details.
multi-workspace slack support with workspace routing
Medium confidenceSupports connecting to multiple Slack workspaces simultaneously by maintaining separate bot token credentials and routing operations to the correct workspace based on channel or user identifiers. Enables a single MCP server instance to serve as a bridge for multiple Slack workspaces, with workspace-aware resource URIs and tool parameters.
Enables a single MCP server to manage multiple Slack workspaces by maintaining separate credentials and routing operations based on workspace context. Resource URIs include workspace identifiers, allowing LLMs to reference and operate on data across workspaces.
More scalable than separate MCP servers per workspace because it consolidates credential management; more flexible than single-workspace tools because it supports cross-workspace operations.
Capabilities are decomposed by AI analysis. Each maps to specific user intents and improves with match feedback.
Related Artifactssharing capabilities
Artifacts that share capabilities with slack-relay-mcp, ranked by overlap. Discovered automatically through the match graph.
@sigmacomputing/slack-mcp-server
MCP server for interacting with Slack
Slack MCP Server
Read and send Slack messages and manage channels via MCP.
@sigmacomputing/slack-mcp-server
MCP server for interacting with Slack
slack-mcp-server
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
Slack
** - Channel management and messaging capabilities. Now maintained by [Zencoder](https://github.com/zencoderai/slack-mcp-server)
Klavis AI
** - Open Source MCP Infra. Hosted MCP servers and MCP clients on Slack and Discord.
Best For
- ✓Teams building Claude-powered Slack bots or agents
- ✓Developers integrating Slack into multi-tool LLM workflows
- ✓Organizations wanting MCP-based Slack automation without custom API wrappers
- ✓DevOps engineers automating Slack notifications in CI/CD
- ✓System administrators building shell-based monitoring workflows
- ✓Developers prototyping Slack integrations without writing full Node.js applications
- ✓TypeScript developers building Slack bots or agents
- ✓Teams using TypeScript for backend automation
Known Limitations
- ⚠MCP protocol overhead adds latency per message relay compared to direct Slack SDK calls
- ⚠Requires MCP server running as separate process — adds deployment complexity vs embedded SDK
- ⚠No built-in message batching or streaming — each message is a discrete MCP call
- ⚠Limited to Slack operations exposed via MCP schema — custom Slack workflows require extension
- ⚠CLI interface is synchronous — no streaming or real-time event listening from command line
- ⚠Message formatting limited to plain text and basic Slack markdown from CLI args
Requirements
Input / Output
UnfragileRank
UnfragileRank is computed from adoption signals, documentation quality, ecosystem connectivity, match graph feedback, and freshness. No artifact can pay for a higher rank.
Package Details
About
Code-execution-based Slack MCP tool — CLI + TypeScript API + Claude Code skill
Categories
Alternatives to slack-relay-mcp
Are you the builder of slack-relay-mcp?
Claim this artifact to get a verified badge, access match analytics, see which intents users search for, and manage your listing.
Get the weekly brief
New tools, rising stars, and what's actually worth your time. No spam.
Data Sources
Looking for something else?
Search →