remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Supports environment variable configuration through .env files for storing Slack tokens and other configuration settings.
Integrated for code linting during development to maintain code quality and consistency.
Hosts the package in GitHub Registry, requiring a Personal Access Token (PAT) for installation and access to the MCP server package.
servidor slack-mcp
Un servidor MCP (Protocolo de Contexto de Modelo) para acceder a la API de Slack. Este servidor permite a los asistentes de IA interactuar con la API de Slack mediante una interfaz estandarizada.
Características
Herramientas disponibles:
slack_list_channels
: enumera los canales públicos en el espacio de trabajo con paginaciónslack_post_message
: publica un nuevo mensaje en un canal de Slackslack_reply_to_thread
- Responder a un hilo de mensajes específico en Slackslack_add_reaction
- Agrega un emoji de reacción a un mensajeslack_get_channel_history
- Obtener mensajes recientes de un canalslack_get_thread_replies
: obtener todas las respuestas en un hilo de mensajesslack_get_users
: recupera información básica del perfil de todos los usuarios en el espacio de trabajoslack_get_user_profile
- Obtener la información del perfil de un usuarioslack_search_messages
- Buscar mensajes en el espacio de trabajo
Inicio rápido
Instalación
NOTA: Ahora está alojado en el Registro de GitHub, por lo que necesita su PAT.
Configuración
Debes configurar las siguientes variables de entorno:
SLACK_BOT_TOKEN
: Token OAuth de usuario de bot de SlackSLACK_USER_TOKEN
: Token OAuth de usuario de Slack (necesario para algunas funciones como la búsqueda de mensajes)
También puede crear un archivo .env
para configurar estas variables de entorno:
Uso
Iniciar el servidor MCP
Directamente:
O bien, ejecute el módulo instalado con el nodo:
Edite el json de configuración de MCP para su cliente:
Patrón de implementación
Este servidor adopta el siguiente patrón de implementación:
- Definir solicitud/respuesta usando esquemas Zod
- Esquema de solicitud: Definir parámetros de entrada
- Esquema de respuesta: definir respuestas limitadas a los campos necesarios
- Flujo de implementación:
- Validar solicitud con el esquema Zod
- Llamar a Slack WebAPI
- Analizar la respuesta con el esquema Zod para limitarla a los campos necesarios
- Devolver como JSON
Por ejemplo, la implementación slack_list_channels
analiza la solicitud con ListChannelsRequestSchema
, llama a slackClient.conversations.list
y devuelve la respuesta analizada con ListChannelsResponseSchema
.
Desarrollo
Scripts disponibles
npm run dev
- Inicia el servidor en modo de desarrollo con recarga en calientenpm run build
: compila el proyecto para producciónnpm run start
: inicia el servidor de producciónnpm run lint
: ejecuta comprobaciones de linting (ESLint y Prettier)npm run fix
: corrige automáticamente los problemas de pelusa
Contribuyendo
- Bifurcar el repositorio
- Crea tu rama de funciones
- Ejecutar pruebas y linting:
npm run lint
- Confirme sus cambios
- Empujar hacia la rama
- Crear una solicitud de extracción
You must be authenticated.
Un servidor que implementa el Protocolo de Contexto de Modelo que permite a los asistentes de IA interactuar con la API de Slack a través de una interfaz estandarizada, proporcionando herramientas para mensajería, administración de canales, recuperación de información del usuario y más.