HEX
Server: LiteSpeed
System: Linux houston.panomity.com 6.8.0-100-generic #100-Ubuntu SMP PREEMPT_DYNAMIC Tue Jan 13 16:40:06 UTC 2026 x86_64
User: nudepix (1011)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //opt/PraisonAI/docs/mcp/slack.mdx
---
title: "Slack MCP Integration"
sidebarTitle: "Slack"
description: "Guide for integrating Slack messaging capabilities with PraisonAI agents using MCP"
icon: "slack"
---

## Add Slack Tool to AI Agent

```mermaid
flowchart LR
    In[Query] --> Agent[AI Agent]
    Agent --> Tool[Slack MCP]
    Tool --> Agent
    Agent --> Out[Answer]
    
    style In fill:#8B0000,color:#fff
    style Agent fill:#2E8B57,color:#fff
    style Tool fill:#4A154B,color:#fff
    style Out fill:#8B0000,color:#fff
```

## Quick Start

<Steps>
    <Step title="Install Dependencies">
        Make sure you have Node.js installed, as the MCP server requires it:
        ```bash
        pip install praisonaiagents mcp
        ```
    </Step>
    <Step title="Set API Keys">
        Set your Slack credentials as environment variables in your terminal:
        ```bash
        export SLACK_BOT_TOKEN=your_slack_bot_token_here
        export SLACK_TEAM_ID=your_slack_team_id_here
        export OPENAI_API_KEY=your_openai_api_key_here
        ```
    </Step>

    <Step title="Create a file">
        Create a new file `slack_agent.py` with the following code:
        ```python
        from praisonaiagents import Agent, MCP
        import os

        # Get Slack credentials from environment
        slack_token = os.getenv("SLACK_BOT_TOKEN")
        slack_team_id = os.getenv("SLACK_TEAM_ID")

        # Use a single string command with Slack configuration
        slack_agent = Agent(
            instructions="""You are a helpful assistant that can interact with Slack.
            Use the available tools when relevant to manage Slack communications.""",
            llm="gpt-4o-mini",
            tools=MCP("npx -y @modelcontextprotocol/server-slack",
                    env={
                        "SLACK_BOT_TOKEN": slack_token,
                        "SLACK_TEAM_ID": slack_team_id
                    })
        )

        slack_agent.start("Send a message to the general channel")
        ```
    </Step>

    <Step title="Run the Agent">
        Execute your script:
        ```bash
        python slack_agent.py
        ```
    </Step>
</Steps>

<Note>
  **Requirements**
  - Python 3.10 or higher
  - Node.js installed on your system
  - Slack Bot Token and Team ID
  - OpenAI API key (for the agent's LLM)
</Note>