Skip to main content
Glama

Slack MCP Server

by MNizarSall
MIT License

Servidor MCP de Slack

Un servidor de Protocolo de Contexto de Modelo (MCP) que permite a los asistentes de IA interactuar con los espacios de trabajo de Slack. Este servidor proporciona herramientas para leer y publicar mensajes, gestionar canales y mucho más a través de la API de Slack.

Características

  • Gestión de canales : enumerar canales, obtener información de canales, crear canales
  • Operaciones de mensajes : enviar mensajes, leer el historial de mensajes, responder a hilos
  • Gestión de usuarios : obtener información de los usuarios, enumerar los miembros del espacio de trabajo
  • Operaciones de archivos : subir archivos, compartir archivos en canales
  • Buscar : busca mensajes y archivos en todo el espacio de trabajo
  • Reacciones : agrega y elimina reacciones de emojis a los mensajes

Prerrequisitos

  • Python 3.8 o superior
  • Un espacio de trabajo de Slack con permisos de administrador
  • Token de bot de Slack con alcances apropiados

Instalación

  1. Clonar este repositorio:
git clone <repository-url> cd slack-mcp-server
  1. Instalar dependencias:
pip install -r requirements.txt
  1. Configura tu token de bot de Slack (consulta la sección Configuración a continuación)

Configuración

Configuración del token del bot de Slack

  1. Vaya a la API de Slack y cree una nueva aplicación
  2. Vaya a "OAuth y permisos" en la barra lateral.
  3. Agregue los siguientes alcances de token de bot:
    • channels:read - Ver información básica sobre los canales públicos
    • channels:write - Administrar canales públicos
    • chat:write - Envía mensajes como bot
    • chat:write.public - Envía mensajes a canales de los que el bot no es miembro
    • files:read - Ver archivos compartidos en canales y conversaciones
    • files:write - Cargar, editar y eliminar archivos
    • groups:read - Ver información básica sobre canales privados
    • im:read - Ver información básica sobre los mensajes directos
    • mpim:read - Ver información básica sobre los mensajes directos del grupo
    • reactions:read - Ver reacciones de emojis y su contenido asociado
    • reactions:write - Agregar y editar reacciones emoji
    • search:read - Buscar mensajes y archivos
    • users:read - Ver personas en el espacio de trabajo
    • channels:history - Ver mensajes y otro contenido en canales públicos
    • groups:history - Ver mensajes y otros contenidos en canales privados
    • im:history - Ver mensajes y otro contenido en mensajes directos
    • mpim:history - Ver mensajes y otro contenido en mensajes directos grupales
  4. Instala la aplicación en tu espacio de trabajo
  5. Copia el "Bot User OAuth Token" (comienza con xoxb- )

Variables de entorno

Establezca su token de bot de Slack como una variable de entorno:

export SLACK_BOT_TOKEN="xoxb-your-bot-token-here"

O cree un archivo .env en la raíz del proyecto:

SLACK_BOT_TOKEN=xoxb-your-bot-token-here

Uso

Ejecución del servidor

python slack_mcp_server.py

El servidor se iniciará y escuchará las conexiones MCP a través de stdio.

Uso con Claude Desktop

Agregue la siguiente configuración a su archivo de configuración de Claude Desktop:

{ "mcpServers": { "slack": { "command": "python", "args": ["/path/to/slack_mcp_server.py"], "env": { "SLACK_BOT_TOKEN": "xoxb-your-bot-token-here" } } } }

Herramientas disponibles

El servidor proporciona las siguientes herramientas:

Operaciones del canal
  • list_channels() - Lista todos los canales en el espacio de trabajo
  • get_channel_info(channel_id) - Obtener información detallada sobre un canal
  • create_channel(name, is_private=False) - Crea un nuevo canal
Operaciones de mensajes
  • send_message(channel, text, thread_ts=None) - Envía un mensaje a un canal
  • get_channel_history(channel, limit=10) - Obtener mensajes recientes de un canal
  • search_messages(query, count=20) - Busca mensajes en todo el espacio de trabajo
Operaciones de usuario
  • get_user_info(user_id) - Obtener información sobre un usuario
  • list_users() - Lista todos los usuarios en el espacio de trabajo
Operaciones con archivos
  • upload_file(channels, content, filename, title=None) - Sube un archivo a los canales
  • search_files(query, count=20) - Busca archivos en el espacio de trabajo
Operaciones de reacción
  • add_reaction(channel, timestamp, name) : agrega una reacción de emoji a un mensaje
  • remove_reaction(channel, timestamp, name) : elimina una reacción emoji de un mensaje

Ejemplos

Enviar un mensaje

# Through Claude Desktop or other MCP client "Send a message to #general saying 'Hello from the MCP server!'"

Obtener el historial del canal

# Get the last 5 messages from a channel "Get the last 5 messages from the #development channel"

Buscando mensajes

# Search for messages containing specific keywords "Search for messages containing 'deployment' in the last week"

Creando un canal

# Create a new public channel "Create a new channel called 'mcp-testing' for testing the MCP integration"

Manejo de errores

El servidor incluye un manejo integral de errores para:

  • Tokens de Slack no válidos
  • Limitación de velocidad
  • Problemas de conectividad de red
  • ID de canal/usuario no válidos
  • Errores de permisos

Consideraciones de seguridad

  • Almacene su token de bot de Slack de forma segura y nunca lo comprometa con el control de versiones
  • Utilice variables de entorno o gestión de secretos seguros
  • Rota regularmente tus tokens de bot
  • Supervisa la actividad de los bots en tu espacio de trabajo de Slack
  • Otorgar sólo los permisos mínimos requeridos

Contribuyendo

  1. Bifurcar el repositorio
  2. Crear una rama de características
  3. Realiza tus cambios
  4. Agregue pruebas si corresponde
  5. Enviar una solicitud de extracción

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

Apoyo

Para problemas y preguntas:

  1. Consulte la documentación de la API de Slack
  2. Revise la especificación MCP
  3. Abrir un problema en este repositorio
-
security - not tested
A
license - permissive license
-
quality - not tested

Permite que los asistentes de IA interactúen con los espacios de trabajo de Slack a través del Protocolo de contexto de modelo, proporcionando herramientas para leer/enviar mensajes, administrar canales y acceder a la funcionalidad de la API de Slack.

  1. Características
    1. Prerrequisitos
      1. Instalación
        1. Configuración
          1. Configuración del token del bot de Slack
          2. Variables de entorno
        2. Uso
          1. Ejecución del servidor
          2. Uso con Claude Desktop
          3. Herramientas disponibles
        3. Ejemplos
          1. Enviar un mensaje
          2. Obtener el historial del canal
          3. Buscando mensajes
          4. Creando un canal
        4. Manejo de errores
          1. Consideraciones de seguridad
            1. Contribuyendo
              1. Licencia
                1. Apoyo

                  Related MCP Servers

                  • A
                    security
                    A
                    license
                    A
                    quality
                    Enables interaction with Slack workspaces as a user, supporting channel listing, message posting, threading, reactions, and user management via the Slack API.
                    Last updated -
                    8
                    3
                    JavaScript
                    MIT License
                  • A
                    security
                    A
                    license
                    A
                    quality
                    Enables AI models to interact with messages from various messaging platforms (Mobile, Mail, WhatsApp, LinkedIn, Slack, Twitter, Telegram, Instagram, Messenger) through a standardized interface.
                    Last updated -
                    3
                    3
                    Python
                    MIT License
                    • Linux
                  • A
                    security
                    A
                    license
                    A
                    quality
                    A Model Context Protocol server that enables AI assistants to interact with the HackMD API for managing notes, including creating, reading, updating, and deleting notes.
                    Last updated -
                    12
                    122
                    21
                    TypeScript
                    MIT License
                  • -
                    security
                    A
                    license
                    -
                    quality
                    A Model Context Protocol server implementation that enables AI assistants to interact with Slack workspaces, allowing them to browse channels, send messages, reply to threads, add reactions, and retrieve user information.
                    Last updated -
                    18
                    JavaScript
                    Apache 2.0

                  View all related MCP servers

                  MCP directory API

                  We provide all the information about MCP servers via our MCP API.

                  curl -X GET 'https://glama.ai/api/mcp/v1/servers/MNizarSall/Slack-MCP'

                  If you have feedback or need assistance with the MCP directory API, please join our Discord server