Skip to main content
Glama
resend

Email Sending MCP

by resend

Servidor MCP de Resend

npm version

Un servidor MCP para la plataforma Resend. Envía y recibe correos electrónicos, gestiona contactos, difusiones, dominios y más, directamente desde cualquier cliente MCP como Claude Desktop, Cursor o Claude Code.

Características

  • Correos electrónicos — Envía, lista, obtén, cancela, actualiza y envía correos electrónicos por lotes. Admite HTML, texto sin formato, archivos adjuntos (archivo local, URL o base64), CC/BCC, dirección de respuesta, programación, etiquetas y envío basado en temas.

  • Correos recibidos — Lista y lee correos electrónicos entrantes. Lista y descarga archivos adjuntos de correos recibidos.

  • Contactos — Crea, lista, obtén, actualiza y elimina contactos. Gestiona membresías de segmentos y suscripciones a temas. Admite propiedades de contacto personalizadas.

  • Difusiones — Crea, envía, lista, obtén, actualiza y elimina campañas de difusión. Admite programación, marcadores de posición de personalización y texto de vista previa.

  • Dominios — Crea, lista, obtén, actualiza, elimina y verifica dominios de remitente. Configura el seguimiento, TLS y capacidades de envío/recepción.

  • Segmentos — Crea, lista, obtén y elimina segmentos de audiencia.

  • Temas — Crea, lista, obtén, actualiza y elimina temas de suscripción.

  • Propiedades de contacto — Crea, lista, obtén, actualiza y elimina atributos de contacto personalizados.

  • Claves de API — Crea, lista y elimina claves de API.

  • Webhooks — Crea, lista, obtén, actualiza y elimina webhooks para notificaciones de eventos.

Related MCP server: blastengine-mailer

Configuración

Crea una cuenta gratuita en Resend y crea una clave de API. Para enviar correos a direcciones fuera de la tuya, necesitarás verificar tu dominio.

Uso

El servidor admite dos modos de transporte: stdio (predeterminado) y HTTP.

Transporte Stdio (Predeterminado)

Claude Code

claude mcp add resend -e RESEND_API_KEY=re_xxxxxxxxx -- npx -y resend-mcp

Cursor

Abre la paleta de comandos y elige "Cursor Settings" > "MCP" > "Add new global MCP server".

{
  "mcpServers": {
    "resend": {
      "command": "npx",
      "args": ["-y", "resend-mcp"],
      "env": {
        "RESEND_API_KEY": "re_xxxxxxxxx"
      }
    }
  }
}

Claude Desktop

Abre la configuración de Claude Desktop > pestaña "Developer" > "Edit Config".

{
  "mcpServers": {
    "resend": {
      "command": "npx",
      "args": ["-y", "resend-mcp"],
      "env": {
        "RESEND_API_KEY": "re_xxxxxxxxx"
      }
    }
  }
}

Transporte HTTP

Ejecuta el servidor sobre HTTP para integraciones remotas o basadas en web. En modo HTTP, cada cliente se autentica pasando su clave de API de Resend como un token Bearer en el encabezado Authorization.

Inicia el servidor:

npx -y resend-mcp --http --port 3000

El servidor escuchará en http://127.0.0.1:3000 y expondrá el punto final MCP en /mcp usando Streamable HTTP.

Claude Code

claude mcp add resend --transport http http://127.0.0.1:3000/mcp --header "Authorization: Bearer re_xxxxxxxxx"

Cursor

Abre la paleta de comandos y elige "Cursor Settings" > "MCP" > "Add new global MCP server".

{
  "mcpServers": {
    "resend": {
      "url": "http://127.0.0.1:3000/mcp",
      "headers": {
        "Authorization": "Bearer re_xxxxxxxxx"
      }
    }
  }
}

También puedes establecer el puerto mediante la variable de entorno MCP_PORT:

MCP_PORT=3000 npx -y resend-mcp --http

Opciones

Puedes pasar argumentos adicionales para configurar el servidor:

  • --key: Tu clave de API de Resend (solo modo stdio; el modo HTTP usa el token Bearer del cliente)

  • --sender: Dirección de correo electrónico del remitente predeterminado desde un dominio verificado

  • --reply-to: Dirección de correo electrónico de respuesta predeterminada (se puede especificar varias veces)

  • --http: Usar transporte HTTP en lugar de stdio (predeterminado: stdio)

  • --port: Puerto HTTP cuando se usa --http (predeterminado: 3000, o variable de entorno MCP_PORT)

Variables de entorno:

  • RESEND_API_KEY: Tu clave de API de Resend (requerida para stdio, opcional para HTTP ya que los clientes la pasan mediante el token Bearer)

  • SENDER_EMAIL_ADDRESS: Dirección de correo electrónico del remitente predeterminado desde un dominio verificado (opcional)

  • REPLY_TO_EMAIL_ADDRESSES: Direcciones de correo electrónico de respuesta separadas por comas (opcional)

  • MCP_PORT: Puerto HTTP cuando se usa --http (opcional)

NOTE

Si no proporcionas una dirección de correo electrónico del remitente, el servidor MCP te pedirá que proporciones una cada vez que llames a la herramienta.

Desarrollo local

  1. Clona este proyecto y compila:

git clone https://github.com/resend/resend-mcp.git
pnpm install
pnpm run build
  1. Para usar la compilación local, reemplaza el comando npx con la ruta a tu compilación local:

Claude Code (stdio):

claude mcp add resend -e RESEND_API_KEY=re_xxxxxxxxx -- node ABSOLUTE_PATH_TO_PROJECT/dist/index.js

Claude Code (HTTP):

claude mcp add resend --transport http http://127.0.0.1:3000/mcp --header "Authorization: Bearer re_xxxxxxxxx"

Cursor / Claude Desktop (stdio):

{
  "mcpServers": {
    "resend": {
      "command": "node",
      "args": ["ABSOLUTE_PATH_TO_PROJECT/dist/index.js"],
      "env": {
        "RESEND_API_KEY": "re_xxxxxxxxx"
      }
    }
  }
}

Cursor (HTTP):

{
  "mcpServers": {
    "resend": {
      "url": "http://127.0.0.1:3000/mcp",
      "headers": {
        "Authorization": "Bearer re_xxxxxxxxx"
      }
    }
  }
}

Pruebas en vivo con un cliente MCP

Al desarrollar, puedes probar los cambios en una sesión de cliente MCP real mientras editas el código en otra.

La idea: ejecuta tsc --watch para reconstruir continuamente dist/, y apunta un cliente MCP separado al dist/index.js compilado desde un directorio diferente. Cuando quieras aplicar los cambios de código, reinicia la sesión del cliente MCP (los servidores MCP son procesos stdio de larga duración que no se recargan en caliente).

Ejemplo con Claude Code:

  1. Ejecuta el observador de TypeScript para reconstruir automáticamente al guardar:

    pnpm tsc --watch
  2. En un directorio separado, crea un .mcp.json que apunte a la salida de la compilación:

    mkdir -p /tmp/mcp-test
    // /tmp/mcp-test/.mcp.json
    {
      "mcpServers": {
        "resend-dev": {
          "command": "node",
          "args": ["/absolute/path/to/resend-mcp/dist/index.js"],
          "env": {
            "RESEND_API_KEY": "re_xxxxxxxxx"
          }
        }
      }
    }
  3. Inicia Claude Code desde ese directorio y usa las herramientas MCP. Después de realizar cambios en el código, inicia una nueva sesión de Claude Code para obtener la nueva compilación.

El mismo principio se aplica a cualquier cliente MCP: separa tu entorno de prueba de tu entorno de desarrollo, usa una ruta absoluta a dist/index.js y vuelve a conectar el servidor MCP después de reconstruir.

Pruebas con MCP Inspector

Nota: Asegúrate de haber compilado el proyecto primero (consulta la sección Desarrollo local anterior).

Uso del transporte Stdio

  1. Establece tu clave de API:

    export RESEND_API_KEY=re_your_key_here
  2. Inicia el inspector:

    pnpm inspector
  3. En el navegador (Interfaz de usuario del Inspector):

    • Elige stdio (iniciar un proceso).

    • Comando: node

    • Argumentos: dist/index.js (o la ruta completa a dist/index.js)

    • Entorno: RESEND_API_KEY=re_your_key_here (o déjalo en blanco si ya lo exportaste en la misma terminal).

    • Haz clic en Connect, luego usa "List tools" para verificar que el servidor funciona.

Uso del transporte HTTP

  1. Inicia el servidor HTTP en una terminal:

    node dist/index.js --http --port 3000
  2. Inicia el inspector en otra terminal:

    pnpm inspector
  3. En el navegador (Interfaz de usuario del Inspector):

    • Elige Streamable HTTP (conectar a URL).

    • URL: http://127.0.0.1:3000/mcp

    • Agrega un encabezado personalizado: Authorization: Bearer re_your_key_here y activa el interruptor.

    • Haz clic en Connect, luego usa "List tools" para verificar que el servidor funciona.

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
28dResponse time
5dRelease cycle
10Releases (12mo)
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/resend/resend-mcp'

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