SendGrid MCP

MCP transaccional de SendGrid: envío de prueba, plantillas, diagnóstico de entrega, configuración de cuenta/consola, receptor opcional de Event Webhook. Binario autoalojado, BYOK.

Documentación

SendGrid

SendGrid MCP Server

Servidor MCP para Twilio SendGrid: correo electrónico transaccional con comprobaciones previas, gestión de plantillas, diagnóstico de entrega, ajustes de cuenta/consola y captura local opcional de Event Webhook.

Los usuarios finales ejecutan un único binario compilado: Bun no es necesario.

El CRUD de contactos/listas de marketing queda intencionalmente fuera del alcance.

Este proyecto es mantenido por la comunidad y no está afiliado, respaldado ni patrocinado por Twilio SendGrid.

Características

  • Envío segurosendgrid_validate_send_request, sendgrid_send_with_preflight, modo sandbox
  • Plantillas — listar/crear/actualizar/activar plantillas dinámicas
  • Diagnóstico — Actividad de correo, exclusiones, estadísticas, clasificación de errores, triaje de entrega
  • Webhooks — Configuración de Event Webhook en SendGrid + receptor local opcional (compatible con ngrok)
  • Cuenta y consola — remitentes verificados, autenticación de dominio, ajustes de correo/seguimiento, alertas, análisis de entrada

Catálogo completo de herramientas: MCP_TOOLS.md

Instalación (binario)

Descarga el binario para tu sistema operativo desde GitHub Releases.

PlataformaRecurso
Linux x64sendgrid-linux-x64
Linux arm64sendgrid-linux-arm64
macOS Intelsendgrid-darwin-x64
macOS Apple Siliconsendgrid-darwin-arm64
Windows x64sendgrid-windows-x64.exe
chmod +x sendgrid-linux-x64
mv sendgrid-linux-x64 ~/.local/bin/sendgrid

El binario está compilado con bun build --compile e incluye el entorno de ejecución de Bun. Los usuarios no necesitan instalar Bun.

Requisitos

  • Una clave de API de SendGrid con los alcances necesarios para las herramientas que uses
  • Una dirección de remitente verificado que coincida con SENDGRID_FROM_EMAIL
  • Un cliente MCP (Cursor, Claude Desktop, VS Code, etc.)

Cada usuario ejecuta el servidor localmente con su propia clave de API (trae tu propia clave). No compartas una instancia alojada con credenciales comunes.

Configuración

Variables de entorno obligatorias

VariableDescripción
SENDGRID_API_KEYClave de API de SendGrid (SG....)
SENDGRID_FROM_EMAILDirección From predeterminada (remitente verificado)

Opcionales

VariablePredeterminadoDescripción
SENDGRID_FROM_NAMESendGrid MCPNombre para mostrar de From predeterminado
SENDGRID_REGIONglobalUsar eu para https://api.eu.sendgrid.com/v3
SENDGRID_API_BASE_URLhttps://api.sendgrid.com/v3Anulación de URL base completa de la API de SendGrid
SENDGRID_MCP_LOG_LEVELinfodebug | info | warn | error

Opcional: receptor local de Event Webhook

Solo se activa cuando se define SENDGRID_EVENT_WEBHOOK_PORT.

VariablePredeterminado
SENDGRID_EVENT_WEBHOOK_PORT(deshabilitado)
SENDGRID_EVENT_WEBHOOK_HOST0.0.0.0
SENDGRID_EVENT_WEBHOOK_PATH/sendgrid/events
SENDGRID_EVENT_WEBHOOK_HEALTH_PATH/sendgrid/events/health
SENDGRID_EVENT_WEBHOOK_MAX_EVENTS5000
SENDGRID_EVENT_WEBHOOK_VERBOSEfalse
SENDGRID_EVENT_WEBHOOK_REQUIRE_SIGNATUREfalse
SENDGRID_EVENT_WEBHOOK_PUBLIC_KEY— (obligatorio si la firma está verificada)

Apunta la URL del Event Webhook de SendGrid a tu túnel, por ejemplo, https://<ngrok-host>/sendgrid/events. Inspecciona los eventos mediante las herramientas MCP get_received_webhook_events / get_webhook_receiver_status.

Para túneles públicos, prefiere la verificación de webhook firmada: SENDGRID_EVENT_WEBHOOK_REQUIRE_SIGNATURE=true y SENDGRID_EVENT_WEBHOOK_PUBLIC_KEY=<SendGrid public key>.

Configuración del cliente MCP

Cursor

Configuración → MCP → agregar servidor (o edita ~/.cursor/mcp.json):

{
  "mcpServers": {
    "sendgrid": {
      "command": "/absolute/path/to/sendgrid",
      "args": [],
      "env": {
        "SENDGRID_API_KEY": "SG.xxx",
        "SENDGRID_FROM_EMAIL": "you@yourdomain.com",
        "SENDGRID_FROM_NAME": "Your App"
      }
    }
  }
}

Claude Desktop

{
  "mcpServers": {
    "sendgrid": {
      "command": "/absolute/path/to/sendgrid",
      "args": [],
      "env": {
        "SENDGRID_API_KEY": "SG.xxx",
        "SENDGRID_FROM_EMAIL": "you@yourdomain.com"
      }
    }
  }
}

Reinicia el cliente después de cambiar la configuración de MCP.

Seguridad

  • Las herramientas de envío pueden poner en cola correos reales. Prefiere sendgrid_send_with_preflight en automatizaciones.
  • Las herramientas de consola que modifican requieren confirmToken: "CONFIRM" (alertas, ajustes de correo/seguimiento, remitentes verificados, dominios, webhooks).
  • Actividad de correo (/v3/messages) puede requerir el add-on de Actividad de correo.

Cambios importantes en v2

  • Nombre del servidor MCP: sendgrid-mcp-server
  • Todos los nombres de herramientas llevan prefijo: sendgrid_<name> (por ejemplo, sendgrid_validate_send_request)
  • Las herramientas de listar/leer aceptan un response_format opcional (markdown | json) y devuelven metadatos de paginación en las herramientas de listado

Desarrollo (solo mantenedores)

Bun solo se necesita para compilar desde el código fuente, no para ejecutar el binario de la versión publicada.

git clone https://github.com/Neschadin/sendgrid-mcp.git
cd sendgrid-mcp
bun install
bun run dev          # stdio MCP from TypeScript
bun run build        # compile → bin/sendgrid (local platform)
./scripts/build-release.sh   # all release targets → dist/
bun run lint
bun run typecheck:tsc   # bun build graph + unit tests
bun run smoke
bun test tests

Inspector MCP

SENDGRID_API_KEY=SG.xxx SENDGRID_FROM_EMAIL=you@domain.com bun run inspect

Documentación

Licencia

MIT — ver LICENSE.