notifyd

Servidor MCP de rmzlb

Operate a self-hosted notifyd notification service: digest, jobs, retries, suppressions, projects and test sends.

Se ejecuta en local (Se ejecuta en tu equipo: su página tiene el comando de instalación)Se ejecuta con dockerRequiere clave API

Instalar notifyd

Se ejecuta en tu equipo. Tu cliente lo inicia con este comando:

docker run -i --rm ghcr.io/rmzlb/notifyd:0.4.0

Requiere Docker en tu equipo. Los pasos de configuración de abajo muestran dónde va el comando en cada cliente.

  • DATABASE_URL secreto PostgreSQL connection string
  • JWT_SECRET secreto Secret for subscriber tokens
  • ADMIN_API_KEY secreto Operator key; also the Bearer token for /mcp
  • EMAIL_PROVIDER opcional resend | cloudflare | smtp | agentmail | log
  • EMAIL_FROM opcional Default sender address

Compartir este servidor

Abre esta página, con el comando de instalación y los pasos de configuración.

mcp.tc/i/notifyd

Descripción

notifyd is a self-hosted notification service written in Rust that sends email, SMS, WhatsApp, push and in-app messages through one API, backed only by PostgreSQL. Its built-in MCP server lets an assistant act as the operator: read a ranked digest of findings, inspect and retry failed jobs, manage suppressions, update project settings and send test messages.

It runs as a Docker image (ghcr.io/rmzlb/notifyd) and serves a Streamable HTTP endpoint at /mcp on your own host. Requests need an Authorization Bearer header: the admin key gives full access, and a read-only key exposes only the read tools.

Qué puedes hacer

  • Get a ranked digest of what needs attention, with actions
  • List and inspect jobs by project, channel, status or recipient
  • Retry or cancel stuck or wrong sends
  • List and update project sender identity, channels and send windows
  • Manage the suppression list with all or marketing scope
  • View sent, failed, bounced and opened metrics per template
  • Send test notifications on any channel

Herramientas

notifyd solo muestra sus herramientas a clientes con clave, así que no podemos listarlas aquí.

Prompts de ejemplo

  • Run the notifyd digest and tell me what needs attention.

  • List failed jobs from the last 24 hours and retry the ones that are safe.

  • Add user@example.com to the marketing suppression list.

  • Send a test email from the myapp project to me@example.com.

Configuración

Todos los clientes inician notifyd en tu equipo con el mismo comando. Elige el tuyo; la página recuerda tu elección.

Claude Code

  1. Ejecútalo en un terminal, en la carpeta de tu proyecto:
claude mcp add --transport stdio notifyd --env "DATABASE_URL=<YOUR_DATABASE_URL>" --env "JWT_SECRET=<YOUR_JWT_SECRET>" --env "ADMIN_API_KEY=<YOUR_ADMIN_API_KEY>" -- docker run -i --rm ghcr.io/rmzlb/notifyd:0.4.0
  1. Inicia Claude Code y escribe /mcp. notifyd debería aparecer como conectado.

Añade --scope user para que esté disponible en todos los proyectos. Sustituye los marcadores por tus propios valores.

Claude Desktop

  1. Abre Settings → Developer → Edit Config. Se abre claude_desktop_config.json. Añade:
claude_desktop_config.json
{
  "mcpServers": {
    "notifyd": {
      "command": "docker",
      "args": [
        "run",
        "-e",
        "DATABASE_URL",
        "-e",
        "JWT_SECRET",
        "-e",
        "ADMIN_API_KEY",
        "-i",
        "--rm",
        "ghcr.io/rmzlb/notifyd:0.4.0"
      ],
      "env": {
        "DATABASE_URL": "<YOUR_DATABASE_URL>",
        "JWT_SECRET": "<YOUR_JWT_SECRET>",
        "ADMIN_API_KEY": "<YOUR_ADMIN_API_KEY>"
      }
    }
  }
}
  1. Guarda el archivo y reinicia Claude Desktop. Sustituye los marcadores por tus propios valores.

Necesita Docker en tu equipo. El archivo está en ~/Library/Application Support/Claude/ en macOS y en %APPDATA%\Claude\ en Windows.

Cursor

O añádelo a mano en ~/.cursor/mcp.json (todos los proyectos) o en .cursor/mcp.json (este proyecto):

mcp.json
{
  "mcpServers": {
    "notifyd": {
      "command": "docker",
      "args": [
        "run",
        "-e",
        "DATABASE_URL",
        "-e",
        "JWT_SECRET",
        "-e",
        "ADMIN_API_KEY",
        "-i",
        "--rm",
        "ghcr.io/rmzlb/notifyd:0.4.0"
      ],
      "env": {
        "DATABASE_URL": "<YOUR_DATABASE_URL>",
        "JWT_SECRET": "<YOUR_JWT_SECRET>",
        "ADMIN_API_KEY": "<YOUR_ADMIN_API_KEY>"
      }
    }
  }
}

Necesita Docker en tu equipo. Sustituye los marcadores por tus propios valores.

VS Code

Añádelo a .vscode/mcp.json. VS Code pide el secreto la primera vez y lo guarda de forma segura:

.vscode/mcp.json
{
  "servers": {
    "notifyd": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-e",
        "DATABASE_URL",
        "-e",
        "JWT_SECRET",
        "-e",
        "ADMIN_API_KEY",
        "-i",
        "--rm",
        "ghcr.io/rmzlb/notifyd:0.4.0"
      ],
      "env": {
        "DATABASE_URL": "${input:database-url}",
        "JWT_SECRET": "${input:jwt-secret}",
        "ADMIN_API_KEY": "${input:admin-api-key}"
      }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "database-url",
      "description": "DATABASE_URL",
      "password": true
    },
    {
      "type": "promptString",
      "id": "jwt-secret",
      "description": "JWT_SECRET",
      "password": true
    },
    {
      "type": "promptString",
      "id": "admin-api-key",
      "description": "ADMIN_API_KEY",
      "password": true
    }
  ]
}

Necesita Docker en tu equipo.

Devin Desktop

  1. Añádelo a ~/.config/devin/mcp_config.json (macOS y Linux) o a %APPDATA%\devin\mcp_config.json (Windows):
mcp_config.json
{
  "mcpServers": {
    "notifyd": {
      "command": "docker",
      "args": [
        "run",
        "-e",
        "DATABASE_URL",
        "-e",
        "JWT_SECRET",
        "-e",
        "ADMIN_API_KEY",
        "-i",
        "--rm",
        "ghcr.io/rmzlb/notifyd:0.4.0"
      ],
      "env": {
        "DATABASE_URL": "<YOUR_DATABASE_URL>",
        "JWT_SECRET": "<YOUR_JWT_SECRET>",
        "ADMIN_API_KEY": "<YOUR_ADMIN_API_KEY>"
      }
    }
  }
}
  1. Actualiza la lista de servidores MCP en Cascade. Sustituye los marcadores por tus propios valores.

Devin Desktop es el nuevo nombre de Windsurf.

Codex

codex mcp add notifyd --env "DATABASE_URL=<YOUR_DATABASE_URL>" --env "JWT_SECRET=<YOUR_JWT_SECRET>" --env "ADMIN_API_KEY=<YOUR_ADMIN_API_KEY>" -- docker run -i --rm ghcr.io/rmzlb/notifyd:0.4.0

O edita directamente ~/.codex/config.toml:

config.toml
[mcp_servers.notifyd]
command = "docker"
args = ["run", "-i", "--rm", "ghcr.io/rmzlb/notifyd:0.4.0"]
env = { DATABASE_URL = "<YOUR_DATABASE_URL>", JWT_SECRET = "<YOUR_JWT_SECRET>", ADMIN_API_KEY = "<YOUR_ADMIN_API_KEY>" }

Necesita Docker en tu equipo. Sustituye los marcadores por tus propios valores.

Gemini CLI

gemini mcp add -e "DATABASE_URL=<YOUR_DATABASE_URL>" -e "JWT_SECRET=<YOUR_JWT_SECRET>" -e "ADMIN_API_KEY=<YOUR_ADMIN_API_KEY>" notifyd docker -- run -i --rm ghcr.io/rmzlb/notifyd:0.4.0

Así lo añades al proyecto actual. Añade -s user para usarlo en todas partes.

Cualquier cliente

La mayoría de los clientes que inician servidores locales aceptan esta forma:

{
  "mcpServers": {
    "notifyd": {
      "command": "docker",
      "args": [
        "run",
        "-e",
        "DATABASE_URL",
        "-e",
        "JWT_SECRET",
        "-e",
        "ADMIN_API_KEY",
        "-i",
        "--rm",
        "ghcr.io/rmzlb/notifyd:0.4.0"
      ],
      "env": {
        "DATABASE_URL": "<YOUR_DATABASE_URL>",
        "JWT_SECRET": "<YOUR_JWT_SECRET>",
        "ADMIN_API_KEY": "<YOUR_ADMIN_API_KEY>"
      }
    }
  }
}

Zed pone los servidores bajo context_servers en sus ajustes, con los mismos campos command, args y env.

Necesita Docker en tu equipo. Sustituye los marcadores por tus propios valores.

Preguntas frecuentes

¿Puedo pegar mcp.tc/i/notifyd en mi cliente MCP?

No. notifyd se ejecuta en tu propio equipo, iniciado por tu cliente, así que no tiene una dirección web a la que conectarse. El enlace rápido es la página para compartir; el comando de instalación es docker run -i --rm ghcr.io/rmzlb/notifyd:0.4.0.

¿notifyd necesita una clave API?

Sí. Lee DATABASE_URL, JWT_SECRET y ADMIN_API_KEY de su entorno, y DATABASE_URL, JWT_SECRET y ADMIN_API_KEY son secretos. Pon los valores en la configuración de tu cliente en tu propio equipo, nunca en un archivo compartido.

¿notifyd es un servidor remoto o local?

Local. Tu cliente lo inicia como un proceso en tu equipo con docker run -i --rm ghcr.io/rmzlb/notifyd:0.4.0, que necesita Docker.

¿Qué clientes pueden usarlo?

Cualquier cliente que inicie servidores locales: Claude Code, Claude Desktop, Cursor, VS Code, Devin Desktop, Codex, Gemini CLI, Zed y otros. claude.ai y ChatGPT solo se conectan a servidores remotos.

¿Quién escribió esta página?

El robot de mcp.tc leyó los metadatos públicos de notifyd (las páginas de su paquete y de su repositorio), y un modelo de IA redactó el texto a partir de ellos. Una persona revisa todo lo que las comprobaciones no pueden confirmar. Aun así, el texto puede contener errores, así que si encuentras uno, usa Reportar esta ficha en esta página.

Insertar

Muestra notifyd en un README o en tu web. Cada inserción enlaza a esta página, usa el comando de instalación del servidor y no instala cookies. Cómo funcionan las inserciones

Insignia para README

Vista previa de la insignia, claraVista previa de la insignia, oscura
Markdown
[![notifyd on mcp.tc](https://mcp.tc/i/notifyd/badge.svg)](https://mcp.tc/i/notifyd)
HTML
<a href="https://mcp.tc/i/notifyd"><img src="https://mcp.tc/i/notifyd/badge.svg" alt="notifyd on mcp.tc" height="20"></a>

Sigue el modo claro u oscuro de quien lee. Añade ?theme=light o ?theme=dark para fijarlo, o ?style=compact para mostrar el símbolo sin la palabra.

Tarjeta para web

HTML
<script src="https://mcp.tc/w/notifyd.js" async></script>

La tarjeta aparece donde esté la etiqueta. Añade data-theme="dark" o data-size="compact" a la etiqueta para cambiarla. El archivo contiene todo lo que necesita, así que no hace otras solicitudes ni instala cookies.

iframe

HTML
<iframe src="https://mcp.tc/embed/notifyd" title="notifyd on mcp.tc" width="420" height="200" loading="lazy" allow="clipboard-write" style="border:0;border-radius:8px;max-width:100%"></iframe>

Úsalo en páginas que no permiten scripts. Añade ?theme=light o ?theme=dark a la dirección para fijar los colores.

JSON

La ficha como datos para tus propias páginas y herramientas: nombre, descripción corta, comando de instalación, herramientas y los enlaces «Add to». Cualquier web puede leerla (CORS abierto).

https://mcp.tc/i/notifyd.json

Qué significa cada campo

mcp.tc no tiene relación con rmzlb. Esta página se creó a partir de los metadatos públicos de notifyd, comprobados por última vez el 4 oct 2026, y un modelo de IA escribió la descripción, así que puede contener errores. Los nombres y marcas pertenecen a sus titulares. ¿Algo no cuadra? Reportar esta ficha.