# Ejecutar el servidor MCP en local

> Ejecuta el paquete de código abierto @emailit/emailit-mcp por stdio o por HTTP local con una clave de API, y configura Claude, Cursor y VS Code para usarlo.

`@emailit/emailit-mcp` es la versión de código abierto del servidor MCP de Emailit. Se ejecuta en tu equipo, se comunica con la API de Emailit con tu clave de API y funciona con los clientes que solo admiten servidores locales (stdio). La mayoría de los usuarios deberían usar en su lugar el [servidor alojado](/es/docs/mcp/); en esta página se explica cuándo tiene sentido el paquete local y cómo configurarlo.

- **Paquete:** [`@emailit/emailit-mcp`](https://www.npmjs.com/package/@emailit/emailit-mcp) en npm
- **Código fuente:** [github.com/emailit/emailit-mcp](https://github.com/emailit/emailit-mcp), licencia MIT
- **Entorno de ejecución:** Node.js 18 o posterior

## Local o alojado

| | Paquete local | Servidor alojado |
| --- | --- | --- |
| Dónde se ejecuta | En tu equipo, lo inicia tu cliente MCP | En `https://api.emailit.com/mcp` |
| Inicio de sesión | Solo clave de API | OAuth o clave de API |
| Herramientas | El conjunto original: emails, dominios, claves de API, listas de contactos, contactos, plantillas, direcciones bloqueadas y webhooks | 109, toda la API v2, incluidas las campañas, las automatizaciones, los formularios, DMARC, la verificación y los eventos |
| Espacios de trabajo | El espacio de trabajo de la clave de API | Varios espacios de trabajo por conexión con OAuth, elegidos en cada petición |
| Roles y permisos | El permiso de la clave de API | Tu rol en cada espacio de trabajo y el permiso aprobado |
| Remitente y dirección de respuesta por defecto | Configurables | No disponibles; el asistente pasa `from` en cada envío |
| Actualizaciones | Tú controlas la versión que ejecutas | Automáticas |

Elige el paquete local cuando:

- tu cliente solo admite servidores stdio o no puede usar OAuth con servidores remotos,
- quieres que se aplique una dirección del remitente y una dirección de respuesta por defecto en todos los envíos, o
- quieres leer el código del servidor, fijar su versión o modificarlo.

## Antes de empezar

- [Node.js](https://nodejs.org) 18 o posterior, para tener disponible `npx`.
- Una [clave de API](/es/docs/developers/api-keys/). Usa una clave Sending Only, limitada a un dominio, si el asistente solo necesita enviar; las demás herramientas necesitan Full Access.
- Un [dominio de envío verificado](/es/docs/domains/add-a-domain/) para la dirección del remitente.

## Configurar tu cliente

El cliente inicia el servidor como subproceso y se comunica con él por stdio. Pasa la clave de API a través de la variable de entorno `EMAILIT_API_KEY`.

**Claude Code**

```bash
claude mcp add emailit \
  -e EMAILIT_API_KEY=secret_•••••••• \
  -e SENDER_EMAIL_ADDRESS=hello@acme.com \
  -- npx -y @emailit/emailit-mcp
```

**Claude Desktop**

  Abre **Settings > Developer > Edit Config**, añade el servidor a `claude_desktop_config.json` y después reinicia Claude Desktop:

```json title="claude_desktop_config.json"
{
  "mcpServers": {
    "emailit": {
      "command": "npx",
      "args": ["-y", "@emailit/emailit-mcp"],
      "env": {
        "EMAILIT_API_KEY": "secret_••••••••",
        "SENDER_EMAIL_ADDRESS": "hello@acme.com"
      }
    }
  }
}
```

**Cursor**

  Añade el servidor a `~/.cursor/mcp.json` o al `.cursor/mcp.json` de un proyecto:

```json title="~/.cursor/mcp.json"
{
  "mcpServers": {
    "emailit": {
      "command": "npx",
      "args": ["-y", "@emailit/emailit-mcp"],
      "env": {
        "EMAILIT_API_KEY": "secret_••••••••",
        "SENDER_EMAIL_ADDRESS": "hello@acme.com"
      }
    }
  }
}
```

**VS Code**

  Añade el servidor a `.vscode/mcp.json`. VS Code te pide la clave y la guarda de forma segura:

```json title=".vscode/mcp.json"
{
  "inputs": [
    { "type": "promptString", "id": "emailit-api-key", "description": "Emailit API key", "password": true }
  ],
  "servers": {
    "emailit": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@emailit/emailit-mcp"],
      "env": {
        "EMAILIT_API_KEY": "${input:emailit-api-key}",
        "SENDER_EMAIL_ADDRESS": "hello@acme.com"
      }
    }
  }
}
```

Usa siempre el nombre del paquete con ámbito, `@emailit/emailit-mcp`.

## Variables de entorno

| Variable | Obligatoria | Descripción |
| --- | --- | --- |
| `EMAILIT_API_KEY` | Para stdio | Tu clave de API de Emailit. En modo HTTP, los clientes envían en su lugar su propia clave. |
| `SENDER_EMAIL_ADDRESS` | No | La dirección del remitente por defecto, de un dominio de envío verificado. |
| `REPLY_TO_EMAIL_ADDRESSES` | No | Las direcciones de respuesta por defecto, separadas por comas. |
| `MCP_PORT` | No | El puerto del modo HTTP. Por defecto, `3000`. |

Si no defines un remitente, el servidor pide al asistente una dirección del remitente en cada envío.

## Opciones de la línea de comandos

Las opciones tienen prioridad sobre las variables de entorno equivalentes.

| Opción | Descripción |
| --- | --- |
| `--key <key>` | La clave de API para el modo stdio. |
| `--sender ` | La dirección del remitente por defecto. |
| `--reply-to ` | La dirección de respuesta por defecto. Repite la opción para indicar varias direcciones. |
| `--http` | Sirve Streamable HTTP en lugar de stdio. |
| `--port ` | El puerto para `--http`. Por defecto, `3000` o `MCP_PORT`. |
| `-h`, `--help` | Muestra la ayuda de uso. |

## Ejecutar por HTTP

Para compartir un único servidor local entre varios clientes, inícialo en modo HTTP:

```bash
npx -y @emailit/emailit-mcp --http --port 3000
```

El servidor escucha en `http://127.0.0.1:3000/mcp` y solo es accesible desde tu equipo. Cada cliente se autentica con su propia clave de API como token bearer:

```bash
claude mcp add emailit --transport http http://127.0.0.1:3000/mcp \
  --header "Authorization: Bearer $EMAILIT_API_KEY"
```

## Ejecutar desde el código fuente

```bash
git clone https://github.com/emailit/emailit-mcp.git
cd emailit-mcp
npm install
EMAILIT_API_KEY=secret_•••••••• node src/index.js
```

Para el modo HTTP, añade `--http --port 3000` al último comando.

## Solución de problemas

| Problema | Solución |
| --- | --- |
| `API key is required for stdio mode. Use --key or set EMAILIT_API_KEY.` | Añade `EMAILIT_API_KEY` al bloque `env` de la configuración de tu cliente. |
| El cliente no puede iniciar `npx` | Las aplicaciones de escritorio no siempre ven el `PATH` de tu shell. Usa la ruta completa de `npx` (búscala con `which npx`) como `command`. |
| `Domain not verified` al enviar | Usa un remitente de un [dominio verificado](/es/docs/domains/verification/) o define `SENDER_EMAIL_ADDRESS` con uno. |
| Errores de permisos en las herramientas que no son de envío | La clave es Sending Only. Usa una clave Full Access para los dominios, las plantillas, los contactos y las demás herramientas. |
| No se puede cancelar un email programado | Los emails programados solo se pueden cancelar o reprogramar hasta 3 minutos antes de su hora de envío. |

## Ver también

  - [Descripción general del servidor MCP](/es/docs/mcp/): Alojado o local, permisos y seguridad.
  - [Referencia de herramientas](/es/docs/mcp/tools/): Todas las herramientas alojadas y sus argumentos.
  - [Claves de API](/es/docs/developers/api-keys/): Crea una clave para el servidor.
  - [Otros clientes](/es/docs/mcp/other-clients/): Conecta editores al servidor alojado.

---
Fuente: https://emailit.com/es/docs/mcp/local-server/
