hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Allows querying emails with advanced search, reading full email content and attachments, creating and managing drafts, replying to emails, archiving emails, handling attachments, and bulk operations support
Allows listing available calendars, viewing calendar events, creating new events, deleting events, supporting multiple calendars, and custom timezone support
Servidor de Google Workspace de MCP
Un servidor de Protocolo de Contexto de Modelo para los servicios de Google Workspace. Este servidor proporciona herramientas para interactuar con Gmail y Google Calendar mediante el protocolo MCP.
Características
- Compatibilidad con varias cuentas de Google
- Usar y cambiar entre varias cuentas de Google
- Cada cuenta puede tener metadatos y descripciones personalizados.
- Integración con Gmail
- Consultar correos electrónicos con búsqueda avanzada
- Leer el contenido completo del correo electrónico y los archivos adjuntos
- Crear y gestionar borradores
- Responder correos electrónicos
- Archivar correos electrónicos
- Manejar accesorios
- Soporte de operaciones masivas
- Integración de calendario
- Lista de calendarios disponibles
- Ver eventos del calendario
- Crear nuevos eventos
- Eliminar eventos
- Soporte para múltiples calendarios
- Compatibilidad con zonas horarias personalizadas
Ejemplos de indicaciones
Pruebe estos ejemplos de indicaciones con su asistente de IA:
Gmail
- "Recuperar mis últimos mensajes no leídos"
- "Buscar mis correos electrónicos del Scrum Master"
- Recuperar todos los correos electrónicos de contabilidad
- "Toma el correo electrónico sobre ABC y resúmelo"
- Escribe una buena respuesta al último correo electrónico de Alice y sube un borrador.
- Responder al correo electrónico de Bob con una nota de agradecimiento. Guardar como borrador.
Calendario
- "¿Qué tengo en mi agenda mañana?"
- Consulta la agenda familiar de mi cuenta privada para la próxima semana.
- Necesito organizar un evento con Tim de dos horas la semana que viene. ¿Podrías sugerirme algunos horarios?
Prerrequisitos
- Node.js >= 18
- Un proyecto de Google Cloud con las API de Gmail y Calendario habilitadas
- Credenciales OAuth 2.0 para las API de Google
Instalación
- Clonar el repositorio:Copy
- Instalar dependencias:Copy
- Construya el código TypeScript:Copy
Configuración
Configuración de OAuth 2.0
Las API de Google Workspace (G Suite) requieren autorización OAuth2. Siga estos pasos para configurar la autenticación:
- Crear credenciales OAuth2:
- Vaya a la consola de Google Cloud
- Crea un nuevo proyecto o selecciona uno existente
- Habilite la API de Gmail y la API de Google Calendar para su proyecto
- Vaya a "Credenciales" → "Crear credenciales" → "ID de cliente OAuth".
- Seleccione "Aplicación de escritorio" o "Aplicación web" como tipo de aplicación.
- Configurar la pantalla de consentimiento de OAuth con la información requerida
- Agregar URI de redireccionamiento autorizados (incluya
http://localhost:4100/code
para desarrollo local)
- Ámbitos OAuth2 requeridos:Copy
- Crea un archivo
.gauth.json
en la raíz del proyecto con tus credenciales de Google OAuth 2.0:Copy - Cree un archivo
.accounts.json
para especificar qué cuentas de Google pueden usar el servidor:Puedes especificar varias cuentas. Asegúrate de que tengan acceso a tu aplicación de Google Auth. El campoCopyextra_info
es especialmente útil, ya que puedes añadir aquí información que quieras compartir con la IA sobre la cuenta (por ejemplo, si tiene un calendario específico).
Configuración del escritorio de Claude
Configurar Claude Desktop para utilizar el servidor mcp-google-workspace:
En MacOS: Edite ~/Library/Application\ Support/Claude/claude_desktop_config.json
En Windows: edite %APPDATA%/Claude/claude_desktop_config.json
Uso
- Iniciar el servidor:Argumentos opcionales:Copy
--gauth-file
: Ruta al archivo de credenciales de OAuth2 (predeterminado: ./.gauth.json)--accounts-file
: Ruta al archivo de configuración de cuentas (predeterminado: ./.accounts.json)--credentials-dir
: Directorio para almacenar las credenciales de OAuth (predeterminado: directorio actual)
- El servidor se iniciará y escuchará los comandos MCP a través de stdin/stdout.
- En la primera ejecución de cada cuenta, hará lo siguiente:
- Abra una ventana del navegador para la autenticación OAuth2
- Escuche en el puerto 4100 la devolución de llamada OAuth2
- Almacene las credenciales para uso futuro en un archivo llamado
.oauth2.{email}.json
Herramientas disponibles
Gestión de cuentas
gmail_list_accounts
/calendar_list_accounts
- Listar todas las cuentas de Google configuradas
- Ver metadatos y descripciones de la cuenta
- No se requiere user_id
Herramientas de Gmail
gmail_query_emails
- Buscar correos electrónicos con la sintaxis de consulta de Gmail (por ejemplo, 'is:unread', 'from: example@gmail.com ', 'newer_than:2d', 'has:attachment')
- Devuelve correos electrónicos en orden cronológico inverso
- Incluye metadatos y resumen de contenido.
gmail_get_email
- Recuperar el contenido completo del correo electrónico por ID
- Incluye el cuerpo completo del mensaje y la información del archivo adjunto.
gmail_bulk_get_emails
- Recuperar varios correos electrónicos por ID en una sola solicitud
- Eficiente para el procesamiento por lotes
gmail_create_draft
- Crear nuevos borradores de correo electrónico
- Soporte para destinatarios de CC
gmail_delete_draft
- Eliminar borradores de correos electrónicos por ID
gmail_reply
- Responder a correos electrónicos existentes
- Opción de enviar inmediatamente o guardar como borrador
- Compatibilidad con "Responder a todos" mediante CC
gmail_get_attachment
- Descargar archivos adjuntos de correo electrónico
- Guardar en el disco o devolver como recurso incrustado
gmail_bulk_save_attachments
- Guarde varios archivos adjuntos en una sola operación
gmail_archive
/gmail_bulk_archive
- Mover correos electrónicos fuera de la bandeja de entrada
- Soporte para operaciones individuales o masivas
Herramientas de calendario
calendar_list
- Listar todos los calendarios accesibles
- Incluye metadatos de calendario, roles de acceso e información de zona horaria.
calendar_get_events
- Recuperar eventos en un rango de fechas
- Soporte para múltiples calendarios
- Opciones de filtro (eventos eliminados, resultados máximos)
- Personalización de la zona horaria
calendar_create_event
- Crear nuevos eventos de calendario
- Soporte para asistentes y notificaciones
- Campos de ubicación y descripción
- Manejo de zonas horarias
calendar_delete_event
- Eliminar eventos por ID
- Opción para notificaciones de cancelación
Desarrollo
- El código fuente está en TypeScript en el directorio
src/
- La salida de la compilación va al directorio
dist/
- Utiliza módulos ES para una mejor modularidad
- Sigue las mejores prácticas de la API de Google
Estructura del proyecto
Comandos de desarrollo
npm run build
: compila código TypeScriptnpm start
: Inicia el servidornpm run dev
: Iniciar en modo de desarrollo con recarga automática
Contribuyendo
- Bifurcar el repositorio
- Crear una rama de características
- Confirme sus cambios
- Empujar hacia la rama
- Crear una solicitud de extracción
Licencia
Licencia MIT: consulte el archivo de LICENCIA para obtener más detalles
This server cannot be installed
Permite la interacción con Gmail y Google Calendar mediante el protocolo MCP, soportando múltiples cuentas de Google, administración de correo electrónico y operaciones de calendario a través de lenguaje natural.
- Features
- Example Prompts
- Prerequisites
- Installation
- Configuration
- Usage
- Available Tools
- Development
- Contributing
- License