1. Conduid
  2. Communication
  3. Slack MCP Server
MCP server · Communication

Slack MCP Server

A Slack MCP server

Unclaimed Apache-2.0 comms
72Good

Scored yesterday · breakdown

About Slack MCP Server

Slack MCP Server is an MCP server published by ubie-oss in the Communication category: a Slack MCP server.

The repository has 110 stars and 26 forks, with the last commit 3 months ago. Recent commit activity is the strongest signal that reported issues will get attention.

Install

From source
git clone https://github.com/ubie-oss/slack-mcp-server

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Slack MCP Server

Powered by Claude · Grounded in docs

I know everything about Slack MCP Server. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository yesterday. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • ✓License declaredUsable under a stated license.
  • !Tests presentNo tests found. Behaviour changes may go unnoticed between versions.
  • ✓Dependencies pinnedA lockfile pins dependency versions.
  • ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

Releases

v0.1.4v0.1.4 · 24 Aug 2025What's Changed Add search functionality for channels and users with corresponding sc… by @syucream in https://github.com/ubie-oss/slack-mcp-server/pull/20 Enable to filter sensitive messages forcely by @syucream in…
v0.1.3v0.1.3 · 9 Jul 2025What's Changed Remove individual user profile retrieval and update schemas for bulk … by @syucream in https://github.com/ubie-oss/slack-mcp-server/pull/17 Full Changelog:…
v0.1.2v0.1.2 · 8 Jul 2025What's Changed Improve slack_search_messages to accept appropriate arguments by @syucream in https://github.com/ubie-oss/slack-mcp-server/pull/16 Full Changelog: https://github.com/ubie-oss/slack-mcp-server/compare/v0.1.1...v0.1.2
v0.1.1v0.1.1 · 11 Jun 2025What's Changed Add bulk user profile retrieval functionality and update schemas by @syucream in https://github.com/ubie-oss/slack-mcp-server/pull/11 Full Changelog: https://github.com/ubie-oss/slack-mcp-server/compare/v0.1.0...v0.1.1
v0.1.0v0.1.0 · 11 Jun 2025What's Changed Support Streamable HTTP transport by @syucream in https://github.com/ubie-oss/slack-mcp-server/pull/10 Full Changelog: https://github.com/ubie-oss/slack-mcp-server/compare/v0.0.4...v0.1.0

README

slack-mcp-server

A MCP(Model Context Protocol) server for accessing Slack API. This server allows AI assistants to interact with the Slack API through a standardized interface.

Transport Support

This server supports both traditional and modern MCP transport methods:

  • Stdio Transport (default): Process-based communication for local integration
  • Streamable HTTP Transport: HTTP-based communication for web applications and remote clients

Features

Available tools:

  • slack_list_channels - List public channels in the workspace with pagination
  • slack_post_message - Post a new message to a Slack channel
  • slack_reply_to_thread - Reply to a specific message thread in Slack
  • slack_add_reaction - Add a reaction emoji to a message
  • slack_get_channel_history - Get recent messages from a channel
  • slack_get_thread_replies - Get all replies in a message thread
  • slack_get_users - Retrieve basic profile information of all users in the workspace
  • slack_get_user_profiles - Get multiple users' profile information in bulk (efficient for batch operations)
  • slack_search_messages - Search for messages in the workspace with powerful filters:
    • Basic query search
    • Location filters: in_channel
    • User filters: from_user, with
    • Date filters: before (YYYY-MM-DD), after (YYYY-MM-DD), on (YYYY-MM-DD), during (e.g., "July", "2023")
    • Content filters: has (emoji reactions), is (saved/thread)
    • Sorting options by relevance score or timestamp

Quick Start

Installation

npm install @ubie-oss/slack-mcp-server

NOTE: Its now hosted in GitHub Registry so you need your PAT.

Configuration

You need to set the following environment variables:

  • SLACK_BOT_TOKEN: Slack Bot User OAuth Token
  • SLACK_USER_TOKEN: Slack User OAuth Token (required for some features like message search)
  • SLACK_SAFE_SEARCH (optional): When set to true, automatically excludes private channels, DMs, and group DMs from search results. This is enforced server-side and cannot be overridden by clients.

You can also create a .env file to set these environment variables:

SLACK_BOT_TOKEN=xoxb-your-bot-token
SLACK_USER_TOKEN=xoxp-your-user-token
SLACK_SAFE_SEARCH=true  # Optional: Enable safe search mode

Usage

Start the MCP server

Stdio Transport (default):

npx @ubie-oss/slack-mcp-server

Streamable HTTP Transport:

npx @ubie-oss/slack-mcp-server -port 3000

You can also run the installed module with node:

# Stdio transport
node node_modules/.bin/slack-mcp-server

# HTTP transport  
node node_modules/.bin/slack-mcp-server -port 3000

Command Line Options:

  • -port <number>: Start with Streamable HTTP transport on specified port
  • -h, --help: Show help message

Client Configuration

For Stdio Transport (Claude Desktop, etc.):

{
  "slack": {
    "command": "npx",
    "args": [
      "-y",
      "@ubie-oss/slack-mcp-server"
    ],
    "env": {
      "NPM_CONFIG_//npm.pkg.github.com/:_authToken": "<your-github-pat>",
      "SLACK_BOT_TOKEN": "<your-bot-token>",
      "SLACK_USER_TOKEN": "<your-user-token>",
      "SLACK_SAFE_SEARCH": "true"
    }
  }
}

For Streamable HTTP Transport (Web applications):

Start the server:

SLACK_BOT_TOKEN=<your-bot-token> SLACK_USER_TOKEN=<your-user-token> npx @ubie-oss/slack-mcp-server -port 3000

Connect to: http://localhost:3000/mcp

See examples/README.md for detailed client examples.

Implementation Pattern

This server adopts the following implementation pattern:

  1. Define request/response using Zod schemas

    • Request schema: Define input parameters
    • Response schema: Define responses limited to necessary fields
  2. Implementation flow:

    • Validate request with Zod schema
    • Call Slack WebAPI
    • Parse response with Zod schema to limit to necessary fields
    • Return as JSON

For example, the slack_list_channels implementation parses the request with ListChannelsRequestSchema, calls slackClient.conversations.list, and returns the response parsed with ListChannelsResponseSchema.

Development

Available Scripts

  • npm run dev - Start the server in development mode with hot reloading
  • npm run build - Build the project for production
  • npm run start - Start the production server
  • npm run lint - Run linting checks (ESLint and Prettier)
  • npm run fix - Automatically fix linting issues

Contributing

  1. Fork the repository
  2. Create your feature branch
  3. Run tests and linting: npm run lint
  4. Commit your changes
  5. Push to the branch
  6. Create a Pull Request

README fetched from the repository yesterday. The original is authoritative.

Questions

About Slack MCP Server

How do I install Slack MCP Server?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Slack MCP Server safe to use with an AI agent?

Its trust score is 72 out of 100 (good). It passes 4 of the 6 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Slack MCP Server still maintained?

Yes — the last commit was 3 months ago. The repository has 110 stars and 26 forks and 6 open issues.