MCP Server Notifier
Un servicio de notificaciones ligero que envía webhooks para tareas MCP completadas a proveedores como Discord, Slack y Teams
Documentación
MCP Server Notifier
Un servicio de notificación ligero que se integra con MCP (Model Context Protocol) para enviar webhooks cuando los agentes de IA completan tareas.
Documentación en chino simplificado

Autores
Creado originalmente por tuberrabbit@gmail.com.
Actualmente mantenido por zudsniper.
Características
- Notificaciones por Webhook: Recibe alertas cuando tus agentes de IA completan tareas
- Múltiples Proveedores de Webhook: Soporte para Discord, Slack, Microsoft Teams, Feishu, Ntfy y webhooks personalizados
- Soporte de Imágenes: Incluye imágenes en las notificaciones mediante Imgur
- Soporte Multi-Proyecto: Gestiona eficientemente notificaciones en diferentes proyectos
- Integración Fácil: Configuración sencilla con herramientas de IA como Cursor
- Mensajes Personalizables: Envía notificaciones personalizadas con título, cuerpo y enlaces
Instalación
Opción 1: Usando npm
npm install -g mcp-server-notifier
Opción 2: Usando Docker
docker pull zudsniper/mcp-server-notifier:latest
# Run with environment variables
docker run -e WEBHOOK_URL=https://your-webhook-url -e WEBHOOK_TYPE=discord zudsniper/mcp-server-notifier
Opción 3: Desde el código fuente
git clone https://github.com/zudsniper/mcp-server-notifier.git
cd mcp-server-notifier
npm install
npm run build
Integración
Integración con Cursor
- Ve a 'Configuración de Cursor'
- Haz clic en
MCPen la barra lateral, luego haz clic en+ Add new global MCP server - Agrega
mcp-server-notifier.
{
"mcpServers": {
"notifier": {
"command": "npx",
"args": [
"-y",
"mcp-server-notifier"
],
"env": {
"WEBHOOK_URL": "https://ntfy.sh/webhook-url-example",
"WEBHOOK_TYPE": "ntfy"
}
}
}
}
Configuración
Por defecto, el notificador soporta varios tipos de webhook:
- Discord
- Slack
- Microsoft Teams
- Feishu
- Ntfy
- JSON genérico
Puedes especificar el tipo de webhook y la URL mediante variables de entorno:
env WEBHOOK_URL="https://your-webhook-url" WEBHOOK_TYPE="discord" npx -y mcp-server-notifier
Tokens de Autenticación
WEBHOOK_TOKEN es una variable de entorno opcional. Cuando se establece, se incluirá como token Bearer en el encabezado Authorization solo para solicitudes de webhook de ntfy. Si WEBHOOK_TOKEN no está configurado, no se envía ningún encabezado de Authorization.
- La autenticación básica no está soportada.
- Este token es ignorado por todos los demás proveedores de webhook (Discord, Slack, Teams, Feishu, JSON genérico).
Ejemplo:
env WEBHOOK_URL="https://ntfy.sh/your-topic" WEBHOOK_TYPE="ntfy" WEBHOOK_TOKEN="your-secret-token" npx -y mcp-server-notifier
Archivo de Configuración
Para una configuración más avanzada, puedes crear un archivo webhook-config.json:
{
"webhook": {
"type": "discord",
"url": "https://discord.com/api/webhooks/your-webhook-url",
"name": "My Notifier"
},
"imgur": {
"clientId": "your-imgur-client-id"
}
}
Consulta la Guía de configuración para obtener detalles completos y ejemplos.
Uso
- Pide a tu agente de IA que te notifique con un mensaje personalizado cuando una tarea esté completa
- Configúralo como una regla persistente en la configuración de Cursor para evitar repetir la configuración
Para instrucciones de uso detalladas, consulta la Guía de uso.
Herramientas Disponibles
notify- Propósito: Enviar notificaciones enriquecidas a cualquier webhook configurado
- Entrada:
message- Contenido de texto de la notificacióntitle(opcional) - Título de la notificaciónlink(opcional) - URL para incluir en la notificación (usada como acción de clic para ntfy)imageUrl(opcional) - URL de una imagen para incluir (heredado, usaimageoattachments)image(opcional) - Ruta de archivo local de una imagen para subir a Imgurpriority(opcional, solo ntfy) - Prioridad de notificación (1-5)attachments(opcional, solo ntfy) - Matriz de URLs para adjuntartemplate(opcional, solo ntfy) - Plantilla predefinida a usar: status, question, progress, problemtemplateData(opcional, solo ntfy) - Datos para completar la plantilla elegidaactions(opcional, solo ntfy) - Matriz de definiciones de botones de acción (viewohttp)
- Mejor para: Necesidades generales de notificación
Nota: La funcionalidad de plantillas está actualmente en desarrollo y tiene soporte limitado. Las plantillas funcionan mejor con ntfy.sh pero pueden no estar completamente implementadas para todos los proveedores de webhook. Consulta el archivo ROADMAP.md para los planes de implementación futuros.
Plantillas NTFY
Cuando usas ntfy.sh como tu proveedor de webhook, puedes usar las siguientes plantillas predefinidas:
-
Plantilla de Estado (
status)- Propósito: Enviar actualizaciones de estado sobre sistemas, procesos o tareas
- Campos de Datos:
status- Estado actual (por ejemplo, "online", "completed", "pending")details(opcional) - Información adicional sobre el estadotimestamp(opcional) - Cuándo se registró este estadocomponent(opcional) - El componente del sistema al que se aplica este estado
-
Plantilla de Pregunta (
question)- Propósito: Hacer preguntas que requieren una respuesta
- Campos de Datos:
question- La pregunta principal que se hacecontext(opcional) - Información de fondo para la preguntaoptions(opcional) - Posibles opciones de respuestadeadline(opcional) - Cuándo se necesita una respuesta
-
Plantilla de Progreso (
progress)- Propósito: Seguimiento del progreso de tareas de larga duración
- Campos de Datos:
title- Nombre de la tarea o procesocurrent- Valor de progreso actualtotal- Valor total para alcanzar la finalizaciónpercentage(opcional) - Valor de porcentaje explícito (calculado si no se proporciona)eta(opcional) - Tiempo estimado para completardetails(opcional) - Información adicional sobre el progreso
-
Plantilla de Problema (
problem)- Propósito: Reportar errores o problemas
- Campos de Datos:
title- Descripción breve del problemadescription(opcional) - Información detallada sobre el problemaseverity(opcional) - Qué tan grave es el problema (por ejemplo, "critical", "warning")source(opcional) - Dónde se originó el problematimestamp(opcional) - Cuándo ocurrió el problemasolution(opcional) - Formas sugeridas de solucionar el problema
Ejemplo usando plantilla:
// Send a progress notification
{
"template": "progress",
"templateData": {
"title": "Database Backup",
"current": 75,
"total": 100,
"eta": "2 minutes remaining",
"details": "Compressing backup files"
},
"priority": 3
}
Soporte Docker
El MCP Server Notifier está disponible como imagen Docker:
docker pull zudsniper/mcp-server-notifier:latest
Ejecuta con variables de entorno:
docker run -e WEBHOOK_URL=https://your-webhook-url -e WEBHOOK_TYPE=discord zudsniper/mcp-server-notifier
Configuraciones de Ejemplo
Las configuraciones de webhook de ejemplo están disponibles en el directorio ejemplos.
Desarrollo
Configuración del Entorno de Desarrollo
- Clona el repositorio:
git clone https://github.com/zudsniper/mcp-server-notifier.git
cd mcp-server-notifier
- Instala las dependencias:
npm install
- Construye el proyecto:
npm run build
Probando tus Cambios
- Ejecuta el servidor MCP en modo de desarrollo:
# Install the MCP Inspector if you haven't already
npm install -g @modelcontextprotocol/inspector
# Start the server with the Inspector
npx @modelcontextprotocol/inspector node build/index.js
- El Inspector proporciona una interfaz web donde puedes:
- Enviar solicitudes a tus herramientas
- Ver registros de solicitudes/respuestas
- Depurar problemas con tu implementación
Publicando Nuevas Versiones
Para publicar una nueva versión:
- Actualiza la versión en
package.json - Empuja los cambios a la rama
release - GitHub Actions automáticamente:
- Ejecutará pruebas
- Construirá y publicará imágenes Docker
- Publicará en npm
- Creará un Release de GitHub
Secretos de repositorio requeridos para CI/CD:
DOCKERHUB_USERNAME- Nombre de usuario de Docker HubDOCKERHUB_TOKEN- Token de acceso de Docker HubNPM_TOKEN- Token de acceso de npm
Licencia
Licencia MIT - consulta el archivo LICENSE para más detalles.
Contribuciones
¡Las contribuciones son bienvenidas! No dudes en enviar un Pull Request.
Este MCP está certificado por MCP Review.
Página de certificación: https://mcpreview.com/mcp-servers/tuberrabbit/mcp-server-notifier