Slack

Interactúa con espacios de trabajo de Slack, permitiendo el envío de mensajes, la gestión de canales y las interacciones con usuarios.

Documentación

Slack Model Context Protocol Server

Este es un conector que permite a Claude Desktop (o cualquier cliente MCP) interactuar con tu espacio de trabajo de Slack para publicar mensajes y consultar una lista de todos los usuarios.

Desarrollo Local

Para ejecutar este cliente localmente, agrega la siguiente configuración a tu archivo de configuración del servidor MCP de Claude Desktop:

 {
  "mcpServers": {
    "mcp-slack-local": {
      "command": "node",
      "args": ["/path/to/project/dist/index.js"], <---- replace this with your project path
      "env": {
        "SLACK_BOT_USER_OAUTH_TOKEN": "test-bot-token", 
        "SLACK_TEAM_ID": "test-team-id"
      }
    },
  }
}

Después de esto, deberías poder probar esta implementación en tu aplicación Claude Desktop usando ejemplos de indicaciones como:

  • "¿Puedes listar todos los usuarios de mi equipo de Slack?"
  • "¿Puedes enviar un mensaje de bienvenida a mi canal de Slack con el ID <channel id>?"

Ejecutando el servidor localmente:

node dist/index.js

Con la compilación en otra terminal

npm run watch

Alcances de Permisos de Slack

Los siguientes permisos ya están implementados:

PermisoDescripciónImplementado
app_configurations:readLeer información de configuración de la aplicación a través de las API de App Manifest❌
app_configurations:writeEscribir información de configuración de la aplicación y crear aplicaciones a través de las API de App Manifest❌
app_mentions:readVer mensajes que mencionan directamente a @your_slack_app en conversaciones en las que la aplicación está presente❌
assistant:writePermitir que tu aplicación de Slack actúe como un asistente de IA❌
bookmarks:readListar marcadores❌
bookmarks:writeCrear, editar y eliminar marcadores❌
calls:readVer información sobre llamadas en curso y pasadas❌
calls:writeIniciar y gestionar llamadas en un espacio de trabajo❌
canvases:readtu aplicación de Slack podrá acceder al contenido de los lienzos creados dentro de Slack.❌
canvases:writetu aplicación de Slack podrá crear, editar y eliminar lienzos.❌
channels:historyVer mensajes y otro contenido en canales públicos a los que tu aplicación de Slack ha sido agregada❌
channels:joinUnirse a canales públicos en un espacio de trabajo❌
channels:manageGestionar canales públicos a los que tu aplicación de Slack ha sido agregada y crear nuevos❌
channels:readVer información básica sobre canales públicos en un espacio de trabajo❌
channels:write.invitesInvitar miembros a canales públicos❌
channels:write.topicEstablecer la descripción de canales públicos❌
chat:writePublicar mensajes en canales y conversaciones aprobados✅
chat:write.customizeEnviar mensajes como @your_slack_app con un nombre de usuario y avatar personalizados❌
chat:write.publicEnviar mensajes a canales de los que @your_slack_app no es miembro❌
commandsAgregar accesos directos y/o comandos de barra que las personas puedan usar❌
conversations.connect:managePermite que tu aplicación de Slack gestione canales de Slack Connect❌
conversations.connect:readRecibir eventos de invitación de Slack Connect enviados a los canales en los que tu aplicación de Slack está presente❌
conversations.connect:writeCrear invitaciones de Slack Connect para canales a los que tu aplicación de Slack ha sido agregada, y aceptar invitaciones enviadas a tu aplicación de Slack❌
datastore:readVer y consultar datos de Slack App Datastore❌
datastore:writeEscribir datos en Slack App Datastore❌
dnd:readVer la configuración de No molestar para personas en un espacio de trabajo❌
emoji:readVer emojis personalizados en un espacio de trabajo❌
files:readVer archivos compartidos en canales y conversaciones a los que tu aplicación de Slack ha sido agregada❌
files:writeSubir, editar y eliminar archivos como tu aplicación de Slack❌
groups:historyVer mensajes y otro contenido en canales privados a los que tu aplicación de Slack ha sido agregada❌
groups:readVer información básica sobre canales privados a los que tu aplicación de Slack ha sido agregada❌
groups:writeGestionar canales privados a los que tu aplicación de Slack ha sido agregada y crear nuevos❌
groups:write.invitesInvitar miembros a canales privados❌
groups:write.topicEstablecer la descripción de canales privados❌
im:historyVer mensajes y otro contenido en mensajes directos a los que tu aplicación de Slack ha sido agregada❌
im:readVer información básica sobre mensajes directos a los que tu aplicación de Slack ha sido agregada❌
im:writeIniciar mensajes directos con personas❌
im:write.topicEstablecer la descripción en mensajes directos❌
incoming-webhookCrear webhooks unidireccionales para publicar mensajes en un canal específico❌
links.embed:writeIncrustar URLs de reproductores de video en mensajes y superficies de la aplicación❌
links:readVer URLs en mensajes❌
links:writeMostrar vistas previas de URLs en mensajes❌
metadata.message:readPermite que tu aplicación de Slack lea metadatos de mensajes en canales a los que tu aplicación de Slack ha sido agregada❌
mpim:historyVer mensajes y otro contenido en mensajes directos de grupo a los que tu aplicación de Slack ha sido agregada❌
mpim:readVer información básica sobre mensajes directos de grupo a los que tu aplicación de Slack ha sido agregada❌
mpim:writeIniciar mensajes directos de grupo con personas❌
mpim:write.topicEstablecer la descripción en mensajes directos de grupo❌
noneEjecutar métodos sin necesidad de un alcance❌
pins:readVer contenido fijado en canales y conversaciones a los que tu aplicación de Slack ha sido agregada❌
pins:writeAgregar y eliminar mensajes y archivos fijados❌
reactions:readVer reacciones de emoji y su contenido asociado en canales y conversaciones a los que tu aplicación de Slack ha sido agregada❌
reactions:writeAgregar y editar reacciones de emoji❌
reminders:readVer recordatorios creados por tu aplicación de Slack❌
reminders:writeAgregar, eliminar o marcar recordatorios como completados❌
remote_files:readVer archivos remotos agregados por la aplicación en un espacio de trabajo❌
remote_files:shareCompartir archivos remotos en nombre de un usuario❌
remote_files:writeAgregar, editar y eliminar archivos remotos en nombre de un usuario❌
search:read.filesBuscar el contenido de un espacio de trabajo en archivos❌
search:read.imBuscar el contenido de un espacio de trabajo en mensajes directos❌
search:read.mpimBuscar el contenido de un espacio de trabajo en mensajes directos de grupo❌
search:read.privateBuscar el contenido de un espacio de trabajo en canales privados❌
search:read.publicBuscar el contenido de un espacio de trabajo en canales públicos❌
team.billing:readPermite que tu aplicación de Slack lea el plan de facturación de los espacios de trabajo en los que tu aplicación de Slack ha sido instalada❌
team.preferences:readPermite que tu aplicación de Slack lea las preferencias de los espacios de trabajo en los que tu aplicación de Slack ha sido instalada❌
team:readVer el nombre, el dominio de correo electrónico y el icono de los espacios de trabajo a los que tu aplicación de Slack está conectada❌
tokens.basicEjecutar métodos sin necesidad de un alcance❌
triggers:readLeer nuevos desencadenadores de la plataforma❌
triggers:writeCrear nuevos desencadenadores de la plataforma❌
usergroups:readVer grupos de usuarios en un espacio de trabajo❌
usergroups:writeCrear y gestionar grupos de usuarios❌
users.profile:readVer detalles del perfil de personas en un espacio de trabajo❌
users:readVer personas en un espacio de trabajo✅
users:read.emailVer direcciones de correo electrónico de personas en un espacio de trabajo❌
users:writeEstablecer la presencia de tu aplicación de Slack❌
workflow.steps:executeAgregar pasos que las personas puedan usar en Workflow Builder❌
workflows.templates:readLeer una plantilla de flujo de trabajo❌
workflows.templates:writeEscribir una plantilla de flujo de trabajo❌

Contacto

Si tienes preguntas, no dudes en contactarnos a través de AVIMBU.