Skip to main content

🦾 A strong MCP server for Slack.

Project description

Slack MCP Server

PyPI package version GitHub release version CI/CD status Pre-Commit building state Code quality level documentation CI status Software license

slack-mcp-server logo

Overview

🦾 A strong MCP (Model Context Protocol) server for Slack integration, providing standardized access to Slack's API features through both MCP tools and webhook processing.

Key Features:

  • 🤖 MCP Server: Provides 6 essential Slack tools for AI assistants and clients
  • 🪝 Webhook Server: Processes real-time Slack events with secure verification
  • 🔗 Integrated Mode: Combined MCP + webhook server for complete Slack platform integration
  • 🚀 Multiple Transports: Supports stdio, SSE, and HTTP streaming protocols
  • 📦 Easy Deployment: Docker, Kubernetes, and cloud platform ready

Use Cases:

  • Building AI assistants with Slack integration
  • Creating custom automation tools for Slack workflows
  • Developing real-time Slack applications with event processing
  • Integrating Slack with other tools and platforms

Python versions support

Supported Versions

slack-mcp-server supports Python 3.12+ for optimal performance and modern language features.

Quickly Start

Installation

Choose your preferred installation method:

Using pip

# Minimal base (protocol only)
pip install slack-mcp

# MCP server feature set
pip install "slack-mcp[mcp]"

# Webhook server feature set
pip install "slack-mcp[webhook]"

# Everything
pip install "slack-mcp[all]"

Using uv (recommended)

# Minimal base
uv add slack-mcp

# MCP server / Webhook / All
uv add "slack-mcp[mcp]"
uv add "slack-mcp[webhook]"
uv add "slack-mcp[all]"

Using poetry

# Minimal base
poetry add slack-mcp

# MCP server / Webhook / All
poetry add slack-mcp -E mcp
poetry add slack-mcp -E webhook
poetry add slack-mcp -E all

Note: Installation extras

  • [mcp]: Installs the MCP server feature set (SSE/Streamable transports; not the integrated webhook mode)
  • [webhook]: Installs FastAPI/Uvicorn and related parts for Slack webhook handling (not the integrated mode)
  • [all]: Installs everything in this project
  • Base (no extra): Minimal install with only the base protocol rules of this project

Basic Usage

1. Set Up Environment Variables

# Required: Slack bot token
export SLACK_BOT_TOKEN="xoxb-your-bot-token-here"

# Optional: For webhook server
export SLACK_SIGNING_SECRET="your-signing-secret"

2. Start MCP Server (Standalone)

# Start with stdio transport (default)
slack-mcp-server

# Start with SSE transport for web clients
slack-mcp-server --transport sse --host 0.0.0.0 --port 3001

3. Start Webhook Server (Standalone)

# Start standalone webhook server
slack-webhook-server --host 0.0.0.0 --port 3000

4. Start Integrated Server (MCP + Webhook)

# Combined server with both MCP and webhook functionality
slack-mcp-server --integrated --transport sse --port 8000

Available MCP Tools

Tool Description Usage
slack_post_message Send messages to channels Post notifications, updates
slack_read_channel_messages Read channel message history Analyze conversations
slack_read_thread_messages Read thread replies Follow discussions
slack_thread_reply Reply to message threads Engage in conversations
slack_read_emojis Get workspace emojis Access custom reactions
slack_add_reactions Add emoji reactions React to messages

Docker Quick Start

# Pull and run with environment variables
docker run -p 3000:3000 \
  -e SLACK_BOT_TOKEN="xoxb-your-token" \
  -e SLACK_SIGNING_SECRET="your-secret" \
  chisanan232/slack-mcp-server:latest

Documentation

Comprehensive documentation is available at https://chisanan232.github.io/slack-mcp-server/

Documentation Sections

Quick Links

Coding style and following rules

slack-mcp-server follows coding styles black and PyLint to control code quality, with additional tools for comprehensive code analysis.

Code style: black linting: pylint Imports: isort Type Checking: mypy

Code Quality Tools

  • Black: Consistent code formatting
  • PyLint: Code analysis and style checking
  • MyPy: Static type checking
  • isort: Import sorting and organization
  • Pre-commit: Automated code quality checks

Development Workflow

# Install development dependencies
uv sync --dev

# Run code quality checks
uv run pre-commit run --all-files

# Run tests
uv run pytest

Downloading state

Current download statistics for slack-mcp package:

Downloads Downloads Downloads

Container Downloads

Docker Pulls

Contributing

We welcome contributions! Please see our Contributing Guide for details.

Quick Contribution Steps

  1. Report Issues - Found a bug? Let us know!
  2. Request Features - Have ideas? We'd love to hear them!
  3. Join Discussions - Connect with the community
  4. Development Setup - Start contributing code

Extend with Custom Queue Backend Plugins

Want to add support for additional message queue systems? Create custom queue backend plugins using our template:

Slack MCP Server Backend MQ Template - Quick-start template for developing queue backend plugins

  • Complete project structure with best practices
  • Pre-configured CI/CD workflows
  • Comprehensive documentation

📚 Documentation: https://chisanan232.github.io/Slack-MCP-Server-Backend-MQ-Template/

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

slack_mcp-0.0.2.tar.gz (46.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

slack_mcp-0.0.2-py3-none-any.whl (63.3 kB view details)

Uploaded Python 3

File details

Details for the file slack_mcp-0.0.2.tar.gz.

File metadata

  • Download URL: slack_mcp-0.0.2.tar.gz
  • Upload date:
  • Size: 46.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.5

File hashes

Hashes for slack_mcp-0.0.2.tar.gz
Algorithm Hash digest
SHA256 0b28ba8260bf3ee7f0ff30bbd82cdc476995f8d81735aba3e93d627543ec696f
MD5 dbfeec03a31597468abde5921508fd3e
BLAKE2b-256 c5e4311ad5b70f7a6fa47282b1b5b8d68d48ab713c05a6d2d76f2fc4f004e335

See more details on using hashes here.

File details

Details for the file slack_mcp-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: slack_mcp-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 63.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.5

File hashes

Hashes for slack_mcp-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 05b2e1542588df8388b735a3c8604653a31a5756f1e490ac13023f325f1f6810
MD5 f7ca8fbe3909a6f42cee0b505b794747
BLAKE2b-256 6ef75e2775f9ac824b2b8ef7bc825de30f928eeac395e737b3adad9cf784879f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page