Skip to content

Best MCP Server for Slack in 2026

Compare the top Slack MCP servers for AI agents in 2026: open-source options vs. Truto's managed MCP with full API coverage, managed OAuth, and enterprise security.

Uday Gajavalli Uday Gajavalli · · 15 min read
Best MCP Server for Slack in 2026

If you're building an AI agent that needs to read, write, or search Slack, you have three real options in 2026: Slack's own official MCP server, one of several open-source community servers, or a managed MCP platform like Truto. Pick Truto for production work. Pick open source if your scope is small, your blast radius is low, and you're comfortable owning Slack app setup, raw tokens, rate-limit handling, and MCP hosting yourself. That's the actual trade-off - it's not about whether a demo works, it's about whether the integration becomes part of your product or a side project somebody has to babysit.

At a glance:

  • Best overall for production: Truto
  • Best for hobby projects and single-workspace tools: Open source (korotovsky/slack-mcp-server)
  • Best if you only need Slack's curated tool set: Slack's official MCP server

MCP Is the Standard. The Question Is How You Run It.

The Model Context Protocol (MCP) is an open standard introduced by Anthropic in November 2024 to standardize how AI systems integrate with external tools and data sources. What started as a niche developer tool became industry infrastructure fast. In March 2025, OpenAI officially adopted MCP, integrating the standard across its products including the ChatGPT desktop app and Agents SDK. Google DeepMind confirmed MCP support in upcoming Gemini models in April 2025. By December 2025, Anthropic donated MCP to the Agentic AI Foundation under the Linux Foundation, with OpenAI and Block as co-founders - the protocol had reached 97 million monthly SDK downloads.

The timing isn't coincidental. KPMG's Q2 2025 AI Quarterly Pulse Survey found that 33% of organizations had deployed at least some AI agents, up three-fold from 11% in prior quarters. By Q3 2025, that number hit 42%. Every one of those agents needs to talk to the tools teams actually use - and for most knowledge workers, Slack is the nerve center.

Before MCP, developers wrote custom, model-specific glue code for every LLM-to-API connection. If you wanted Claude to talk to Slack, you wrote Anthropic-specific tool definitions. Switch to OpenAI, rewrite everything. That fragmentation ended with industry-wide MCP adoption. Now there's a standardized JSON-RPC 2.0 interface: an MCP server defines the tools, and any MCP-compliant client discovers and executes them.

But while the protocol itself elegantly solves the tool-calling problem, the infrastructure required to run it securely in production does not. Connecting an AI agent to a massive API like Slack exposes the painful realities of production engineering: authentication lifecycles, aggressive rate limits, undocumented edge cases, and the ongoing burden of infrastructure maintenance. If you want a refresher on the protocol, start with our MCP guide.

Why Native LLM Connectors for Slack Fall Short

Claude's built-in Slack connector lets you search messages and send replies. That's roughly it. You can't manage channels, list files, query user presence, interact with canvases, or work with Slack's 200+ Web API methods. The same pattern repeats across every native LLM integration - you get a handful of curated operations and for everything else, you're on your own.

This isn't a knock on Anthropic or OpenAI. Native connectors are product integrations, not vendor API parity. They're optimized for common demo scenarios, not for production agent workflows that need to parse threaded metadata, manage user group memberships during an incident, or query custom emoji reactions to gauge team consensus.

Slack's official MCP server is also exposed through partner clients such as Claude.ai, Claude Code, Perplexity, and Cursor. Its documented tools cover search, messaging, canvases, and user profiles. Useful? Absolutely. Full Slack API parity? No. As we covered in our guide to managed MCPs, relying on native connectors means you're only given access to roughly 10% of the vendor's API surface. For the remaining 90%, you're entirely on your own.

Evaluating Open-Source Slack MCP Servers

The open-source landscape for Slack MCP servers is surprisingly crowded. Here are the most relevant options.

Slack's Official MCP Server

Slack publishes its own MCP server that provides tools for searching, sending messages, managing canvases, and working with users. It's the only remote MCP server in this comparison - Slack supports JSON-RPC 2.0 over Streamable HTTP, and MCP clients must be backed by a registered Slack app with a fixed app ID.

This is the enterprise-grade option from Slack itself, with proper admin controls and app approval workflows. The catch? It covers a curated subset of the Slack API. If you need file operations, reminder management, workflow triggers, or any of the dozens of admin-level API methods, you're still stuck. If pure Slack is enough and its documented tool set fits your use case, start here. If not, keep reading.

korotovsky/slack-mcp-server (Go)

The most popular community option by a wide margin. Each month, over 30,000 engineers visit this repository, and more than 9,000 are actively using it. It supports Stdio, SSE, and HTTP transports, proxy settings, DMs, Group DMs, smart history fetch by date or count, and can work via OAuth or in "stealth mode" using browser session tokens.

The stealth mode lets you run without installing a Slack app by using browser session tokens like xoxc and xoxd. Useful for personal use, but a non-starter for production environments where you need audit trails and admin visibility. Posting messages is disabled by default for safety; you enable write operations through environment variables, optionally scoped to specific channel IDs.

The real limitation: it exposes around 7-8 tools (message reading, thread fetching, search, channel listing, message posting, reactions, mark-as-read). Smart and well-built for what it does, but far short of full Slack API coverage.

zencoderai/slack-mcp-server (TypeScript)

Originally Anthropic's reference Slack MCP server, now maintained by Zencoder. It exposes eight operations: list channels, post messages, reply to threads, add reactions, get channel history, get thread replies, list users, and get user profiles.

Setup requires the typical manual dance: create a Slack App at api.slack.com, configure bot token scopes (channels:history, channels:read, chat:write, etc.), install to your workspace, copy the xoxb- token into an environment variable. If you've done this before, it takes 10 minutes. If you haven't, budget an hour for the OAuth scope confusion alone.

Slackdump

A highly rated tool (2,400+ GitHub stars) designed to export Slack messages without requiring workspace admin privileges. It includes a local MCP server so AI agents can analyze the downloaded archive. Strong for personal data extraction or research, but it operates entirely on static, local data - not a real-time integration layer for production AI agents. Its README honestly warns that usage may trigger Slack security alerts or notify workspace admins. Think of it as a backup and research tool, not a customer-facing agent feature.

The Common Burden Across All Open-Source Options

Regardless of which you choose, open-source Slack MCP servers share the same operational overhead:

Concern What You Own
Token management You store, rotate, and refresh OAuth tokens yourself. Slack bot tokens don't expire, but user tokens do - and there's no built-in refresh.
Infrastructure You deploy, monitor, and scale the server process. Stdio-based servers die when the host process dies.
Security surface Raw tokens sit in environment variables or config files. No secondary auth layer, no expiring server URLs, no method-level access control.
API coverage You get 5-10 hardcoded tools. Need a new one? Fork the repo and maintain your own branch.
Updates You pull upstream changes and hope nothing breaks. Community maintainers have no SLA.

Research shows that 43% of publicly available MCP servers contain command injection vulnerabilities. That statistic should make anyone pause before deploying a community server with access to corporate Slack data. For a deeper analysis, see our guide on MCP server security.

Warning

Rate Limits Still Apply Everywhere On May 29, 2025, Slack changed rate limits for commercially distributed non-Marketplace apps on conversations.history and conversations.replies to 1 request per minute and 15 objects per request for new apps and new installs. Internal customer-built apps keep the higher limits. If your DIY plan depends on bulk channel reads, read this policy twice before you ship. Managed infrastructure helps you cope with rate limits better - it doesn't make them disappear.

Truto: The Best Managed MCP Server for Slack

Truto takes a fundamentally different approach. Instead of hardcoding a list of Slack tools, Truto dynamically generates tools from the integration's documentation and resource definitions.

Dynamic Tool Generation

When you connect a Slack workspace through Truto, the platform inspects the integration's resource configuration - every API endpoint it knows about - and pairs each one with curated documentation including human-readable descriptions and JSON Schema definitions. A tool only appears if it has a corresponding documentation entry. This acts as both a quality gate and a curation mechanism. Bad tools are worse than missing tools.

Truto fetches the query and body schemas (stored as YAML or JSON Schema) and automatically enhances them for LLM consumption. For example, on list methods, Truto automatically injects limit and next_cursor properties. The description for the cursor explicitly instructs the LLM to pass the value back unchanged - preventing the model from hallucinating or improperly decoding pagination tokens.

The result? Instead of 5-10 hardcoded tools, you get access to the full breadth of documented Slack operations - conversations, files, reminders, user groups, reactions, admin tools, and more - all exposed as properly-typed MCP tools with accurate schemas. On day one, without writing a single line of schema mapping code.

Intelligent Argument Parsing

When an AI model calls a tool, it generates a flat JSON payload. But REST APIs expect data spread across URL path parameters, query strings, and JSON body payloads. Open-source servers require you to manually write mapping logic for every endpoint.

Truto's proxy router automates this entirely. It takes the flat input from the MCP client and cross-references it against the generated schemas. Query string parameters (like a pagination cursor or search term) get routed to the query string. Body parameters (like a complex Block Kit message payload) get constructed into the body. The AI model is completely shielded from Slack's HTTP semantics.

flowchart LR
    A[Connect Slack<br>workspace] --> B[Truto generates<br>MCP tools from<br>API docs]
    B --> C[Hosted JSON-RPC 2.0<br>endpoint created]
    C --> D[Claude / Cursor /<br>Custom Agent<br>calls tools]
    D --> E[Truto proxies to<br>Slack API with<br>managed auth]

Managed OAuth Lifecycle

You don't copy-paste xoxb- tokens into env vars. Truto handles the entire OAuth flow, token storage, and automatic refresh. As detailed in our OAuth architecture deep dive, the token management system uses distributed locks and atomic database transactions to ensure reliable refreshes even under heavy concurrent load. When a token expires or gets revoked, the platform handles it without your agent silently failing. No token refresh cron jobs. No manual intervention after a crash during rotation.

Zero Infrastructure

Each MCP server is a hosted JSON-RPC 2.0 endpoint - a single URL (/mcp/:token). Point Claude Desktop, Cursor, ChatGPT or any MCP-compatible client at it and you're done. No Node.js processes to babysit, no Docker containers to orchestrate, no Kubernetes Helm charts to maintain.

Scoped Tool Exposure

Every Truto MCP server is scoped to a single connected Slack account. You filter exposed tools by method group or tags:

Filter Includes Good default use case
read get, list Search, summarization, retrieval
write create, update, delete Approved operational workflows only
custom Non-CRUD methods Slack-specific actions without exposing everything
Exact method Only the named method Least-privilege tool surfaces

One design choice worth highlighting: Truto doesn't pretend every Slack action fits a fake universal object model. For MCP, tools map to native Slack resources and request shapes. Unified models are great for normalized CRM or HRIS data across vendors. They're the wrong abstraction when your agent needs Slack-specific behavior like thread history, canvases, or custom actions. Truto stays opinionated where normalization helps and stays native where Slack depth matters.

Tip

Recommended pattern: one read-only Slack MCP for search and summarization, one separate write-enabled MCP for tightly approved workflows, and short expirations on anything shared outside the core engineering team.

To be transparent about the trade-off: Truto is a hosted service, which means you depend on a third party for uptime and data routing. If you have strict data sovereignty requirements that prohibit any external proxy, a self-hosted option may be the only choice. For the vast majority of teams, the operational cost of self-hosting far exceeds the risk of a managed platform with proper security controls.

Enterprise Security: Beyond a Token in a URL

Security is where the gap between open-source and managed MCP servers becomes stark. Most open-source servers authenticate via a single bot token in an environment variable. Anyone who gets that token has full access to everything the bot can see. OpenAI's own MCP documentation warns that custom MCP servers are powerful but risky, write actions raise the danger, and you should connect only to servers you know and trust.

Truto addresses this at multiple levels:

Granular method and tag filtering. Each MCP server can be restricted to specific operation types - a read-only server that only exposes get and list operations, or one limited to specific resource tags like "support" or "sales". If an LLM attempts to call a tool outside these filters, the request is rejected before it reaches the Slack API. The principle of least privilege is non-negotiable when an autonomous agent has access to your company's communication platform.

Double authentication. By default, the MCP server URL contains a cryptographic token that acts as a bearer credential. For higher-security environments, enable the require_api_token_auth flag. The MCP client must then provide a valid Truto API token in the Authorization header. Even if the URL leaks into logs or config files, it's useless without proper credentials.

Expiring servers. MCP servers can be created in the UI or via the API with a TTL by setting expires_at. Need to give a contractor access for a week? Create or generate a server that auto-expires. Expiration is enforced at the infrastructure level - Cloudflare KV entries automatically drop out of cache, and a Durable Object alarm fires to clean up database records. No stale access tokens lingering in your system, no manual revocation needed.

Token hashing. Raw MCP tokens are never stored. They're hashed using HMAC before storage, so even a data store compromise doesn't expose usable credentials. The raw token is returned exactly once - when the server is created.

Comparison: Open Source vs. Managed MCP for Slack

Feature korotovsky (Go) zencoderai (TS) Slack Official Truto Managed
Tool count ~8 ~8 ~15 (curated) Full API surface
Tool generation Hardcoded Hardcoded Hardcoded Dynamic from docs
Auth management Manual token Manual token OAuth (you manage app) Fully managed OAuth
Method filtering Env vars per tool No No Per-server config
Expiring access No No No Built-in TTL
Secondary auth No No App-level only API token layer
Infrastructure Self-hosted Self-hosted Slack-hosted (remote) Truto-hosted
MCP transport Stdio/SSE/HTTP Stdio/HTTP Streamable HTTP HTTP (JSON-RPC 2.0)
Production SLA Community Community Slack's SLA Truto's SLA

Getting Started with Truto's Slack MCP Server

The setup is intentionally boring:

  1. Connect your Slack workspace through Truto's UI. OAuth is handled for you.
  2. Create an MCP server via the API or dashboard. Scope it with method filters, tags, and an optional expiration.
  3. Copy the URL into your MCP client config (Claude Desktop, Cursor, or your custom agent).

No Slack App creation. No scope configuration. No token copy-pasting. No Docker files. Conceptually, the create call looks like this:

curl -X POST https://api.truto.one/integrated-account/<slack-account-id>/mcp \
  -H "Authorization: Bearer <TRUTO_API_KEY>" \
  -H "Content-Type: application/json" \
  --data @payload.json
{
  "name": "slack-read-only-support-bot",
  "config": {
    "methods": ["read"],
    "tags": ["support"]
  },
  "require_api_token_auth": true,
  "expires_at": "2026-03-17T00:00:00Z"
}

That gives you a hosted Slack MCP URL scoped to one connection. No sidecar server. No Docker Compose file. No bot token copied into somebody's local shell profile. Start read-only, make tool descriptions good, then add write access only for workflows that deserve it.

Add the Truto MCP URL to Claude

  1. Copy the MCP server URL from the Truto dashboard or API response (the url field, e.g. https://api.truto.one/mcp/...).
  2. In Claude (Desktop or web): go to Settings → Connectors → Add custom connector.
  3. Paste the Truto MCP URL into the connector URL field and click Add.
  4. Claude will discover all tools from your Slack MCP server. You can start a new chat and ask it to search channels, list files, or post messages (if the server is write-enabled).

Custom connectors via remote MCP are available on Free, Pro, Max, Team, and Enterprise plans (Free is limited to one custom connector). On Team and Enterprise, an org owner adds the connector at the org level first; then individual users can use it.

Add the Truto MCP URL to ChatGPT

  1. Copy the MCP server URL from the Truto dashboard or API response.
  2. In ChatGPT: go to Settings → Apps → Advanced settings.
  3. Turn Developer mode on (this exposes MCP server configuration).
  4. Under MCP servers (or Custom connectors), click Add and enter:
    • Name: e.g. "Slack (Truto)" or "Slack read-only".
    • Server URL: paste the Truto MCP URL.
  5. Save. ChatGPT will connect to the server and list available Slack tools in supported flows.

Developer Mode is available on Pro, Plus, Business, Enterprise, and Education accounts. For more on ChatGPT + Truto, see Bring 100+ Custom Connectors to ChatGPT with SuperAI by Truto.

Building Custom Agents: The /tools Endpoint

Not every AI application uses an MCP client out of the box. If you are building a custom agent using frameworks like LangChain, Truto exposes the exact same dynamically generated Slack tools via a standard REST API.

Instead of connecting over JSON-RPC, your agentic framework can call the tools endpoint directly:

curl -X GET "https://api.truto.one/integrated-account/<slack-account-id>/tools?methods[0]=read" \
  -H "Authorization: Bearer <TRUTO_API_KEY>"

This returns all available Proxy APIs for the Slack integration, complete with descriptions and JSON schemas ready for LLM consumption. You can filter the response by method type (read, write, custom) to strictly scope what your agent can do.

Truto provides an official LangChain.js SDK that automatically fetches and registers these tools in your framework. Because the tool definitions are tied to your integration configuration, updating a description or schema in the Truto UI instantly updates the tools available to your agent - no code deployment required.

Real-World Slack MCP Use Cases

When you move beyond basic chat, having full API access through an MCP server opens up actual agentic workflows. Here is what production teams are building right now.

Automated Incident Response

When a high-severity alert fires, your agent shouldn't just drop a message in a crowded channel. A fully equipped agent creates a dedicated incident channel, invites the current on-call engineers, pins the runbook, and updates the channel topic with the active Zoom link. Open-source MCP servers fail here because they lack conversations.create and conversations.invite tools.

Customer Support Triage

Support agents need context. An AI agent monitoring a shared #support-tier-1 channel can read the initial message, fetch the entire thread history, and analyze attached log files. It can then add an eyes emoji (reactions.add) to acknowledge the request, query your internal knowledge base, and post a drafted response for human approval.

Employee Onboarding

Instead of IT manually provisioning Slack access, an HR agent triggered by a Workday status change can automatically add a new hire to specific user groups based on their department (usergroups.users.update). It can then send a direct message containing a personalized onboarding checklist using Block Kit.

What This Means for Your Agent Architecture

The Slack MCP server you choose cascades into every layer of your agent stack. A hardcoded 8-tool server means your agent can read messages and maybe post replies. A full-coverage managed server means your agent can actually operate within Slack the way a human team member would - searching across channels, managing files, updating user groups, and reacting to threads.

System complexity has become the primary bottleneck for AI agent deployment, with multi-agent orchestration, reliability, and traceability surpassing all other deployment challenges as organizations scale from prototypes to production. The last thing your team needs is another self-hosted service to maintain when you should be focused on the agent logic itself.

Here's the short version. Use Slackdump or a small open-source server for personal search, exports, or internal experiments. Use Slack's official MCP server if its documented tool set covers your use case. Use Truto if the feature will face customers, touch more than one SaaS system, or need real scoping, auth lifecycle management, and a path toward broad Slack coverage without turning your team into part-time MCP maintainers.

FAQ

What is the best MCP server for Slack?
It depends on your use case. For personal archiving or experiments, open-source tools like Slackdump or korotovsky/slack-mcp-server (9,000+ users) work well. For production workloads needing full Slack API coverage, managed OAuth, and enterprise security controls, Truto's managed MCP server is the strongest option.
Does Slack have an official MCP server?
Yes. Slack launched an official remote MCP server that supports searching, messaging, canvases, and user management over Streamable HTTP. It requires a registered Slack app and covers a curated subset of the Slack Web API — not the full 200+ methods.
How do I connect Claude to Slack with MCP?
You can use an open-source Slack MCP server (like zencoderai or korotovsky) configured in Claude Desktop's MCP settings, Slack's official remote MCP endpoint, or a managed platform like Truto that gives you a single URL to paste into Claude's config with zero setup.
How do I connect ChatGPT to Slack with MCP?
Enable Developer mode in ChatGPT (Settings → Apps → Advanced settings), then add a custom MCP server and paste your Slack MCP URL (from Slack's official server, an open-source server you host, or a managed platform like Truto). ChatGPT will discover and use the Slack tools in supported flows.
Are open-source MCP servers for Slack secure?
They carry real risks. Research shows 43% of publicly available MCP servers contain command injection vulnerabilities. Open-source Slack servers typically store raw bot tokens in environment variables with no secondary auth, no expiring access, and no method-level filtering.
Do managed MCP servers remove Slack rate limits?
No. Slack still enforces rate limits per method and workspace, and chat.postMessage is generally about one message per second per channel. Managed MCP infrastructure helps you cope with those limits better — it doesn't erase them.

More from our Blog

Best MCP Server for Attio in 2026
AI & Agents

Best MCP Server for Attio in 2026

Compare the best MCP servers for Attio CRM in 2026. Open-source vs. Attio's hosted MCP vs. Truto's managed server — with setup guides for Claude, ChatGPT, and custom agents.

Uday Gajavalli Uday Gajavalli · · 12 min read
Best MCP Server for Fathom in 2026
AI & Agents

Best MCP Server for Fathom in 2026

Compare the best MCP servers for Fathom in 2026. Connect Fathom meeting transcripts to Claude, ChatGPT, Cursor, and LangChain agents without managing API keys or rate limits.

Uday Gajavalli Uday Gajavalli · · 16 min read