Skip to main content
Version: Next

Requirements

Before developing a Slack MCP Server message queue plugin, ensure your development environment meets the following requirements:

System Requirementsโ€‹

  • Operating System: Linux, macOS, or Windows
  • Memory: Minimum 1GB RAM (2GB+ recommended for development)
  • Disk Space: Minimum 1GB for full development environment
  • Internet Connection: Required for downloading dependencies and testing with external queue services

Core Prerequisitesโ€‹

Python Versionโ€‹

  • Python: Version 3.12 or higher (up to 3.13 supported)
  • Recommended: Python 3.13 for optimal compatibility with async features
Python Installation

If you don't have Python installed:

  • macOS: Use brew install python or download from python.org
  • Linux: Use your package manager (e.g., apt install python3.13)
  • Windows: Download from python.org or use winget install Python.Python.3.13

Package Manager: uv (Required)โ€‹

This template is specifically designed for uv - a fast, modern Python package manager written in Rust.

Installation:

# macOS and Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# Alternative: via pip
pip install uv

Why uv?

  • โšก 10-100x faster than pip/poetry for dependency resolution
  • ๐Ÿ”’ Deterministic builds with lockfile support
  • ๐Ÿ› ๏ธ All-in-one tool for project management, virtual environments, and Python installation
  • ๐Ÿ“ฆ Drop-in replacement for pip with better dependency resolution

Version Controlโ€‹

  • Git: Version 2.20 or higher
  • GitHub Account: For template creation and repository management (recommended)

Slack MCP Server Integrationโ€‹

Understanding the Slack MCP Serverโ€‹

To develop message queue plugins, you should understand:

  • Slack MCP Server: The main server that handles Slack events and webhook processing
  • QueueBackend Protocol: The interface your plugin must implement
  • Plugin Discovery: How the server finds and loads your queue backend

Development Dependenciesโ€‹

Your plugin will integrate with:

# These are provided by the Slack MCP Server
dependencies = [
"slack-mcp-server", # Core server functionality
]

Message Queue Services (Optional)โ€‹

Depending on your queue backend implementation, you may need access to:

Local Development Servicesโ€‹

  • Redis: brew install redis (macOS) or apt install redis-server (Linux)
  • RabbitMQ: brew install rabbitmq (macOS) or apt install rabbitmq-server (Linux)
  • Docker: For containerized queue services

Cloud Servicesโ€‹

  • AWS Account: For SQS, SNS integration
  • Google Cloud: For Pub/Sub integration
  • Azure Account: For Service Bus integration

Development Tools (Auto-configured)โ€‹

These tools are automatically set up in the template:

Testing & Quality Assuranceโ€‹

  • pytest: Async-capable testing framework
  • pytest-cov: Code coverage reporting
  • pytest-asyncio: Async test support
  • mypy: Static type checking
  • black: Code formatting
  • pylint: Code linting

Documentationโ€‹

  • Docusaurus: Documentation site generation
  • API documentation: Auto-generated from docstrings

CI/CDโ€‹

  • GitHub Actions: Automated testing and publishing
  • Pre-commit hooks: Code quality enforcement

Environment Setup Verificationโ€‹

After installing the prerequisites, verify your setup:

# Check Python version
python --version # Should be 3.12+

# Check uv installation
uv --version # Should show uv version

# Check Git
git --version # Should be 2.20+

# Verify you can create virtual environments
uv venv test-env
source test-env/bin/activate # Linux/macOS
# or test-env\Scripts\activate # Windows
deactivate
rm -rf test-env

Next Stepsโ€‹

Once your environment meets these requirements, you're ready to:

  1. ๐Ÿ“‹ Install the template - Clone and set up your plugin project
  2. ๐Ÿ”ง Implement your backend - Build your message queue logic
  3. ๐Ÿงช Test your plugin - Validate integration with Slack MCP Server
  4. ๐Ÿš€ Publish your package - Share with the community

Common Issues & Solutionsโ€‹

Python Version Issuesโ€‹

# If you have multiple Python versions
uv python install 3.13
uv python pin 3.13

uv Installation Issuesโ€‹

# If uv command not found after installation
source ~/.bashrc # or restart terminal

Permission Issuesโ€‹

# If you get permission errors
uv venv --system-site-packages

Ready to proceed? Let's move on to installation!