mcp-google-gmail
Servidor MCP para la API de Gmail: busca, lee y envía correos electrónicos, gestiona borradores, etiquetas y la papelera. Para Claude, Cursor, Codex y otros clientes de IA.
Documentación
Gmail MCP
Inglés | Русский
A1 Gmail MCP permite que una aplicación de IA trabaje con tu buzón de Gmail en lenguaje natural. Busca y lee correos, prepara respuestas como borradores, envíalos cuando estés listo, mantén las etiquetas ordenadas y usa la papelera en lugar de la eliminación permanente.
Utiliza la API de Gmail con tu cuenta de Google. Distingue un borrador que aún puedes editar de un correo enviado que no se puede recuperar, y hace explícitos los límites de la API de Gmail en lugar de dar a entender que cada tarea de correo es reversible.
- 24 herramientas. Busca y lee mensajes e hilos, envía correos directamente o mediante borradores, gestiona el ciclo de vida de los borradores, las etiquetas y la papelera.
- Se conecta desde la conversación. Di "conectar Gmail": el servidor te guía a través del cliente OAuth, captura la redirección de Google en
127.0.0.1con PKCE y guarda los tokens él mismo — sin archivos de configuración, sin reinicios. - Envía de forma deliberada. La ruta borrador → revisión → envío es de primera clase; el envío está marcado como destructivo, y el servidor nunca reenvía después de un fallo ambiguo — un correo no se puede desenviar.
- La papelera es la red de seguridad. Eliminar correos pasa por la papelera reversible (unos 30 días); deliberadamente no existe una herramienta de eliminación permanente de mensajes.
- Lectura limitada. Los cuerpos decodificados se truncan en un límite explícito y los adjuntos vuelven como metadatos, para que un boletín largo no inunde silenciosamente la conversación.
- Alcance mínimo de Google. Utiliza solo
gmail.modify— sin eliminación permanente y sin acceso a la configuración de Gmail.
Comienza con una pregunta de solo lectura:
Muestra mis correos no leídos de la última semana y dime cuáles necesitan respuesta.
Conectar el servidor · Explorar casos de uso · Abrir documentación técnica
Véalo funcionar en un minuto
Tú: ¿Qué hay sin leer en mi bandeja de entrada de esta semana sobre el contrato de Acme?
Asistente: Busca con la sintaxis de consulta de Gmail y muestra remitentes, asuntos, fechas y fragmentos. Nada cambia.
Tú: Redacta una respuesta al más reciente: enviamos la copia firmada el viernes.
Asistente: Crea un borrador en el mismo hilo y lo muestra para revisión. No se envía nada.
Tú: Envíalo.
Asistente: Envía el borrador. El envío es un paso separado y explícitamente destructivo, por lo que tu aplicación de IA puede pedir confirmación primero.
Contenido
- Inicio rápido
- Qué puedes pedirle que haga
- Cómo cambia el correo
- Qué puede cambiar
- Obtener acceso
- Configuración
- Datos, límites y trabajo en segundo plano
- Documentación técnica
- Soporte
Inicio rápido
Necesitas Node.js 20+ y una cuenta de Google. No se requieren credenciales al instalar — el servidor se conecta desde la conversación.
- Añade el servidor a tu aplicación de IA.
- Di "conectar Gmail": el asistente te guía para crear el cliente OAuth y aprobar el acceso sin editar archivos de configuración.
- Haz la pregunta de solo lectura anterior.
Codex
En la aplicación: abre Configuración → Servidores MCP, selecciona Añadir servidor, elige STDIO, introduce el comando npx -y mcp-google-gmail@latest y las variables de entorno GOOGLE_GMAIL_CLIENT_ID, GOOGLE_GMAIL_CLIENT_SECRET, GOOGLE_GMAIL_REFRESH_TOKEN, luego selecciona Guardar y Reiniciar.
Desde la línea de comandos:
codex mcp add google-gmail \
-- npx -y mcp-google-gmail@latest
codex mcp list
Claude Code
claude mcp add \
--transport stdio --scope user google-gmail \
-- npx -y mcp-google-gmail@latest
claude mcp list
Claude Desktop
La ruta oficial actual es Configuración → Extensiones. Para una extensión personalizada de escritorio, abre Configuración avanzada → Desarrollador de extensiones → Instalar extensión…, selecciona un archivo .mcpb y sigue las indicaciones.
Este repositorio publica actualmente un paquete npm stdio y no contiene un paquete .mcpb. Para versiones de Claude Desktop que aún admiten configuración local, usa la siguiente configuración JSON stdio como alternativa:
{
"mcpServers": {
"google-gmail": {
"command": "npx",
"args": ["-y", "mcp-google-gmail@latest"]
}
}
}
En esas versiones, guárdalo en ~/Library/Application Support/Claude/claude_desktop_config.json en macOS o %APPDATA%\Claude\claude_desktop_config.json en Windows.
Cursor
Añade esto a ~/.cursor/mcp.json en macOS/Linux o %USERPROFILE%\.cursor\mcp.json en Windows:
{
"mcpServers": {
"google-gmail": {
"type": "stdio",
"command": "npx",
"args": ["-y", "mcp-google-gmail@latest"]
}
}
}
VS Code
Ejecuta MCP: Abrir configuración de usuario y añade:
{
"servers": {
"google-gmail": {
"type": "stdio",
"command": "npx",
"args": ["-y", "mcp-google-gmail@latest"]
}
}
}
Compruébalo con MCP: Listar servidores.
Qué puedes pedirle que haga
Clasificar la bandeja de entrada
- Muestra los mensajes no leídos de los últimos siete días y agrupa por remitente.
- Encuentra la conversación con Acme sobre el contrato y resúmela, de más antiguo a más reciente.
- ¿Qué mensajes tienen adjuntos esperándome? Muestra asuntos y nombres de archivo.
Escribir y enviar correo
- Redacta una respuesta en este hilo diciendo que la copia firmada sale el viernes.
- Muéstrame el borrador, ajusta la redacción y luego envíalo.
- Envía un correo breve de estado al equipo, con el gerente en copia.
Mantener el buzón organizado
- Crea una etiqueta
Receipts/2026y aplícala a los mensajes que coincidan. - Marca los boletines de esta semana como leídos y archívalos.
- Mueve ese hilo a la papelera — y restáuralo si cambio de opinión.
Cómo cambia el correo
- La ruta segura para enviar es un borrador:
create_draftprepara el correo,get_draftlo muestra para revisión,send_draftlo envía.send_messageomite el borrador y envía inmediatamente. - Un correo enviado es externamente irreversible. Después de un tiempo de espera o un error
5xx, el servidor no reenvía; buscain:sentantes de intentarlo de nuevo, porque un envío repetido sería un correo duplicado. - Eliminar un mensaje o hilo significa enviarlo a la papelera.
manage_trashes reversible durante unos 30 días; deliberadamente no existe una herramienta de eliminación permanente. - Los borradores son la excepción:
update_draftreemplaza todo el borrador (la API no tiene edición parcial) ydelete_draftes permanente, porque los borradores omiten la papelera.
Cada llamada funciona en un solo buzón — la cuenta que otorgó el token. Los cuerpos decodificados se truncan en un límite configurable con indicadores explícitos, y los adjuntos vuelven solo como metadatos; el contenido de los adjuntos se obtiene mediante raw_request deliberadamente.
Qué puede cambiar
| Operación | Qué ocurre | Límite de confirmación |
|---|---|---|
| Buscar y leer mensajes, hilos, borradores, etiquetas, el perfil | Lee datos del buzón | Sin cambios |
| Crear o actualizar un borrador | Prepara o reemplaza un correo no enviado | Cambia el buzón |
| Cambiar el estado de leído, destacado o archivado, aplicar o quitar etiquetas | Cambia cómo se organiza el correo | Cambia el buzón |
| Crear o renombrar una etiqueta | Cambia el vocabulario de etiquetas | Cambia el buzón |
| Enviar a la papelera o restaurar un mensaje o hilo | Mueve el correo hacia o desde la papelera; reversible durante ~30 días | Destructivo |
| Enviar un correo o un borrador | Entrega el correo a destinatarios reales; no se puede desenviar | Destructivo |
| Eliminar un borrador o una etiqueta | Lo elimina permanentemente, omitiendo la papelera | Destructivo |
| Solicitud de API sin procesar | Puede llamar a métodos de API sin una herramienta dedicada | Potencialmente destructivo |
El cliente de IA controla los avisos de confirmación. El servidor marca lecturas, escrituras y herramientas destructivas para que el cliente pueda distinguir una inspección de un cambio en vivo.
Obtener acceso
Google Gmail requiere OAuth 2.0; una clave de API no es suficiente. Hay dos formas de entrar, y la primera no necesita archivos de configuración.
Conectar desde el chat (recomendado)
Di "conectar Gmail" y el asistente ejecuta el flujo contigo:
setup_instructionsimprime la lista de verificación: crea o selecciona un proyecto de Google Cloud, habilita la API de Gmail, configura la pantalla de consentimiento y crea un cliente OAuth de Aplicación de escritorio.- Descarga el JSON de ese cliente ("Descargar JSON") y dale al asistente su ruta —
set_clientlo almacena solo para el propietario. El secreto nunca pasa por la conversación. start_logindevuelve un enlace de consentimiento de Google. Ábrelo en esta máquina y aprueba; el código vuelve a un listener de un solo uso en127.0.0.1(PKCE), nunca a través del chat.finish_loginintercambia el código y guarda los tokens en~/.config/mcp-google-gmail/credentials.json(modo 0600) y los verifica con una llamada real a la API de Gmail — así, una API que aún está desactivada se detecta en ese momento.
Los tokens se releen en cada llamada, por lo que la conexión funciona de inmediato — sin reiniciar la aplicación de IA. auth_status muestra qué está conectado, logout revoca y elimina.
Variables de entorno (CI, instalaciones desatendidas)
-
Crea o selecciona un proyecto de Google Cloud y habilita la API de Gmail.
-
Configura la pantalla de consentimiento OAuth y crea un cliente OAuth de Aplicación de escritorio.
-
Autoriza la cuenta de Google cuyo buzón quieres conectar — cada llamada funciona en ese único buzón. El Playground de OAuth 2.0 puede obtener el token de actualización cuando Usar tus propias credenciales OAuth está habilitado.
-
Solicita el alcance:
https://www.googleapis.com/auth/gmail.modifyCubre búsqueda, lectura, envío, borradores, etiquetas y la papelera — pero no la eliminación permanente ni la configuración de Gmail. La eliminación permanente mediante
raw_requestrequiere además el alcance completohttps://mail.google.com/.
Los tokens de actualización OAuth en modo de prueba pueden expirar después de siete días. Publica la aplicación OAuth, o usa una aplicación Interna en un dominio de Workspace, cuando necesites acceso de larga duración. Trata el secreto del cliente y el token de actualización como contraseñas.
Configuración
Cada variable es opcional — sin ninguna de ellas, el servidor se conecta desde el chat.
| Variable | Requerida | Descripción |
|---|---|---|
GOOGLE_GMAIL_CLIENT_ID | No* | ID de cliente OAuth. |
GOOGLE_GMAIL_CLIENT_SECRET | No* | Secreto de cliente OAuth. |
GOOGLE_GMAIL_REFRESH_TOKEN | No* | Token de actualización OAuth. |
GOOGLE_GMAIL_ACCESS_TOKEN | No* | Alternativa de corta duración al trío OAuth (unas 1 hora). |
GOOGLE_GMAIL_OAUTH_PORT | No | Puerto de bucle local fijo para el inicio de sesión en el chat; útil con reenvío de puertos SSH. |
GOOGLE_GMAIL_API_BASE | No | Anulación de la URL base de la API de Gmail. |
GOOGLE_GMAIL_TIMEOUT_MS | No | Tiempo de espera por solicitud; predeterminado 60000 ms. |
GOOGLE_GMAIL_MAX_RETRIES | No | Reintentos por error temporal; predeterminado 3. |
* Proporciona el trío OAuth o un token de acceso.
Datos, límites y trabajo en segundo plano
- Las solicitudes van a Gmail. El servidor local actualiza los tokens OAuth de Google y llama a la API de Gmail. Su telemetría anónima contiene un ID de instalación, versión del paquete, cliente de IA y versiones de plataforma, y nombres de herramientas — nunca tokens OAuth, contenido de correo, argumentos de herramientas o avisos. Establece
ASKADS_TELEMETRY=0para optar por no participar. - Google mide unidades de cuota. Gmail permite aproximadamente 250 unidades de cuota por segundo por usuario; un envío cuesta 100 unidades, una lectura típica 5. Las cuentas de consumidor pueden enviar unos 500 correos al día, las cuentas de Workspace unos 2,000. En
429, el servidor usa retroceso; las lecturas también reintentan después de errores de red y5xx, mientras que los envíos y otras escrituras nunca se reproducen después de un fallo incierto. - No hay sondeo en segundo plano. El servidor solo se ejecuta cuando se le llama. Si tu aplicación de IA admite tareas programadas, puede revisar la bandeja de entrada periódicamente;
raw_requesttambién puede acceder ahistory.listpara sincronización incremental.
Documentación técnica
- Catálogo de capacidades de MCP — páginas orientadas a tareas para cada herramienta.
- Todas las herramientas y entradas
- Documentación de desarrollo
- Documentación de publicación
- Referencia de la API de Gmail
Soporte
¿Encontraste un error o necesitas un escenario? Crea un issue o escribe en Telegram.
¡Llegaste al final!