Outlook Calendar

Accede y gestiona tu calendario local de Microsoft Outlook en Windows.

Documentación

Outlook Calendar MCP Tool

Un servidor de Model Context Protocol (MCP) que permite a Claude acceder y gestionar tu calendario local de Microsoft Outlook (solo Windows).

Outlook Calendar MCP server

License: MIT

Características

  • Ver eventos del calendario: Lista eventos dentro de un rango de fechas, consulta detalles de eventos, verifica el estado de los asistentes
  • Gestionar eventos del calendario: Crea nuevos eventos y reuniones, actualiza eventos existentes
  • Inteligencia de calendario: Encuentra espacios de tiempo libres para programar, identifica horarios óptimos para reuniones
  • Soporte de múltiples calendarios: Accede a diferentes calendarios en tu perfil de Outlook

Requisitos previos

  • Sistema operativo Windows
  • Cliente de escritorio de Microsoft Outlook instalado
  • Soporte de VBScript (consulta la Instalación de VBScript a continuación si estás en Windows 11 24H2+)
  • Node.js (versión 14.x o superior)
  • npm (incluido con Node.js)

Instalación de VBScript (usuarios de Windows 11 24H2+)

Importante: A partir de Windows 11 24H2, VBScript ya no se instala de forma predeterminada y debe habilitarse como una característica opcional.

Si estás experimentando problemas con el servidor MCP que no funciona después de una actualización de Windows, es probable que necesites instalar VBScript:

  1. Abre Configuración (Windows + I)
  2. Ve a AplicacionesCaracterísticas opcionales
  3. Haz clic en "Ver características" junto a "Agregar una característica opcional"
  4. Busca "VBScript"
  5. Selecciona VBScript y haz clic en Instalar
  6. Reinicia tu computadora después de la instalación

Cronología de desaprobación de VBScript:

  • Fase 1 (Finales de 2024+): Disponible como característica opcional en Windows 11 24H2
  • Fase 2 (~2027): Ya no estará habilitado de forma predeterminada
  • Fase 3 (Futuro): Eliminación completa de Windows

Nota: Gracias a los comentarios de la comunidad sobre la desaprobación de VBScript, estoy considerando mejoras arquitectónicas para hacer el proyecto más preparado para el futuro.

Instalación

Opción 1: Instalar desde npm

npm install -g outlook-calendar-mcp

También puedes ejecutarlo directamente sin instalación usando npx:

npx outlook-calendar-mcp

Opción 2: Instalar desde el código fuente

  1. Clona este repositorio o descarga el código fuente
  2. Instala las dependencias:
npm install
  1. Ejecuta el servidor:
npm start

Configuración del servidor MCP

Para usar esta herramienta con Claude, debes agregarla a tu archivo de configuración de ajustes de MCP.

Para la aplicación de escritorio de Claude

Agrega lo siguiente a tu archivo de configuración de Claude Desktop (ubicado en %APPDATA%\Claude\claude_desktop_config.json):

Si está instalado globalmente mediante npm:

{
  "mcpServers": {
    "outlook-calendar": {
      "command": "outlook-calendar-mcp",
      "args": [],
      "env": {}
    }
  }
}

Usando npx (sin instalación):

{
  "mcpServers": {
    "outlook-calendar": {
      "command": "npx",
      "args": ["-y", "outlook-calendar-mcp"],
      "env": {}
    }
  }
}

Si está instalado desde el código fuente:

{
  "mcpServers": {
    "outlook-calendar": {
      "command": "node",
      "args": ["path/to/outlook-calendar-mcp/src/index.js"],
      "env": {}
    }
  }
}

Para la extensión de Claude VSCode

Agrega lo siguiente a tu archivo de ajustes de MCP de la extensión de Claude VSCode (ubicado en %APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json):

Si está instalado globalmente mediante npm:

{
  "mcpServers": {
    "outlook-calendar": {
      "command": "outlook-calendar-mcp",
      "args": [],
      "env": {}
    }
  }
}

Usando npx (sin instalación):

{
  "mcpServers": {
    "outlook-calendar": {
      "command": "npx",
      "args": ["-y", "outlook-calendar-mcp"],
      "env": {}
    }
  }
}

Si está instalado desde el código fuente:

{
  "mcpServers": {
    "outlook-calendar": {
      "command": "node",
      "args": ["path/to/outlook-calendar-mcp/src/index.js"],
      "env": {}
    }
  }
}

Para la instalación desde el código fuente, reemplaza path/to/outlook-calendar-mcp con la ruta real donde instalaste esta herramienta.

Uso

Una vez configurado, Claude tendrá acceso a las siguientes herramientas:

Listar eventos del calendario

list_events
- startDate: Start date in MM/DD/YYYY format
- endDate: End date in MM/DD/YYYY format (optional)
- calendar: Calendar name (optional)

Ejemplo: "Lista mis eventos del calendario para la próxima semana"

Crear evento del calendario

create_event
- subject: Event subject/title
- startDate: Start date in MM/DD/YYYY format
- startTime: Start time in HH:MM AM/PM format
- endDate: End date in MM/DD/YYYY format (optional)
- endTime: End time in HH:MM AM/PM format (optional)
- location: Event location (optional)
- body: Event description (optional)
- isMeeting: Whether this is a meeting with attendees (optional)
- attendees: Semicolon-separated list of attendee email addresses (optional)
- calendar: Calendar name (optional)

Ejemplo: "Agrega una reunión con Juan sobre la propuesta del proyecto el viernes a las 2 PM"

Encontrar espacios de tiempo libres

find_free_slots
- startDate: Start date in MM/DD/YYYY format
- endDate: End date in MM/DD/YYYY format (optional)
- duration: Duration in minutes (optional)
- workDayStart: Work day start hour (0-23) (optional)
- workDayEnd: Work day end hour (0-23) (optional)
- calendar: Calendar name (optional)

Ejemplo: "¿Cuándo estoy libre para una reunión de 1 hora esta semana?"

Obtener estado de los asistentes

get_attendee_status
- eventId: Event ID
- calendar: Calendar name (optional)

Ejemplo: "¿Quién no ha respondido a mi invitación a la reunión de equipo?"

Nota importante: Cuando uses operaciones que requieran un ID de evento (update_event, delete_event, get_attendee_status), debes usar el campo id de la respuesta de list_events. Este es el EntryID único que Outlook utiliza para identificar eventos.

Actualizar evento del calendario

update_event
- eventId: Event ID to update
- subject: New event subject/title (optional)
- startDate: New start date in MM/DD/YYYY format (optional)
- startTime: New start time in HH:MM AM/PM format (optional)
- endDate: New end date in MM/DD/YYYY format (optional)
- endTime: New end time in HH:MM AM/PM format (optional)
- location: New event location (optional)
- body: New event description (optional)
- calendar: Calendar name (optional)

Ejemplo: "Actualiza mi reunión de equipo de mañana para que comience a las 3 PM en lugar de las 2 PM"

Obtener calendarios

get_calendars

Ejemplo: "Muéstrame mis calendarios disponibles"

Notas de seguridad

  • En el primer uso, Outlook puede mostrar avisos de seguridad para permitir el acceso de scripts
  • La herramienta solo accede a tu cliente local de Outlook y no envía datos del calendario a servidores externos
  • Todas las operaciones del calendario se realizan localmente en tu computadora

Solución de problemas

  • VBScript no disponible (Windows 11 24H2+): Si recibes errores después de una actualización de Windows, es posible que VBScript deba instalarse. Consulta la sección Instalación de VBScript anterior
  • Errores de "fallo en la ejecución del script": Generalmente indica que VBScript no está disponible o que Outlook no es accesible
  • Avisos de seguridad de Outlook: Si ves avisos de seguridad de Outlook, debes permitir que el script acceda a tus datos de Outlook
  • Política de ejecución de scripts: Si encuentras errores de ejecución de scripts, es posible que debas ajustar tu política de ejecución de PowerShell
  • Problemas de ruta: Asegúrate de que la ruta en tu archivo de configuración de MCP apunte a la ubicación correcta de la herramienta

Contribuciones

¡Damos la bienvenida a las contribuciones a Outlook Calendar MCP Tool! Consulta nuestra Guía de contribuciones para obtener detalles sobre cómo comenzar.

Al participar en este proyecto, aceptas cumplir con nuestro Código de conducta.

Licencia

Este proyecto está licenciado bajo la Licencia MIT: consulta el archivo LICENSE para obtener más detalles.