Skip to main content
Glama
ShermanGu
by ShermanGu

Exchange EWS MCP v0.9.0

Inglés | 简体中文

CI Python 3.10+ Platform: Windows License: MIT

📮 Dale a tu Exchange local un asistente de IA.

¿Cansado de copiar el informe de la semana pasada? ¿Revisando correos antiguos antes de cada respuesta? ¿Consultando calendarios de una persona a la vez solo para reservar una reunión?

Exchange EWS MCP conecta un Agente MCP a Microsoft Exchange mediante EWS + NTLM. El Agente puede buscar correos, preparar borradores, actualizar informes semanales, consultar disponibilidad y gestionar reuniones, mientras que los envíos importantes permanecen bajo el control del usuario.

[!IMPORTANT] Diseñado para Exchange local con EWS + NTLM. No es un cliente OAuth de Exchange Online / Microsoft Graph.

✨ Características destacadas

  • 📧 Buscar correos, redactar borradores, responder, reenviar, editar borradores y añadir adjuntos.

  • 👥 Resolver destinatarios a partir de nombres completos en pinyin o direcciones de correo completas.

  • 📝 Actualizar informes semanales conservando el diseño HTML original de Outlook, incluidos informes sintetizados a partir de los correos de informes semanales de otras personas.

  • 📅 Consultar disponibilidad, encontrar horarios comunes, crear/editar reuniones y enviar invitaciones tras la confirmación.

  • 🔐 Almacenar contraseñas en Windows Credential Manager.

  • 🛡️ Los flujos de trabajo basados en borradores mantienen el envío final bajo el control del usuario.

Related MCP server: OWA Exchange MCP Server

🧭 Arquitectura

flowchart LR
    A["MCP client / Agent"] -->|stdio| S["Exchange EWS MCP"]
    S --> M["Semantic mail workflows"]
    S --> W["Weekly-report workflow"]
    S --> C["Calendar coordination"]
    M --> E["EWS client + NTLM"]
    W --> E
    C --> E
    E --> X["On-premises Exchange"]
    M --> R["Local reference store"]
    W --> R
    C --> R
    S --> K["Windows Credential Manager"]

El servidor se ejecuta localmente en Windows y expone flujos de trabajo de correo y calendario de alto nivel al Agente. Las credenciales de Exchange y los identificadores de Exchange de bajo nivel permanecen en el servidor.


🚀 Inicio rápido

Clona → instala → conecta Exchange → pega una ruta de servidor en tu cliente MCP.

1. Requisitos

  • Windows 10/11 o Windows Server

  • Python 3.10–3.13

  • Acceso a tu endpoint EWS de Exchange

  • Una cuenta de Exchange con permiso para usar EWS con NTLM

2. Instalación

git clone https://github.com/ShermanGu/exchange-ews-mcp.git
cd exchange-ews-mcp
.\install.cmd

El instalador crea .venv e instala todo localmente.

3. Configurar Exchange

.\.venv\Scripts\exchange-ews-mcp.exe configure

Establece el usuario de buzón actual:

.\.venv\Scripts\exchange-ews-mcp.exe set-current-user `
  --email "you@company.example" `
  --display-name "Your Name"

Comprueba la conexión:

.\.venv\Scripts\exchange-ews-mcp.exe status
.\.venv\Scripts\exchange-ews-mcp.exe test

Tu contraseña se almacena en Windows Credential Manager, no en el repositorio.

4. Configurar preferencias de calendario

.\.venv\Scripts\exchange-ews-mcp.exe set-calendar-preferences `
  --time-zone "Asia/Shanghai" `
  --workday-start "09:00" `
  --workday-end "18:00" `
  --slot-minutes 30

5. Conecta tu cliente MCP

✅ Recomendado: apunta directamente al EXE

Tras la instalación, el servidor MCP de producción es:

<repo>\.venv\Scripts\exchange-ews-mcp-server.exe

Si tu cliente MCP tiene campos Command y Arguments:

Command:
D:\tools\exchange-ews-mcp\.venv\Scripts\exchange-ews-mcp-server.exe

Arguments:
<leave empty>

Usa una ruta absoluta, guarda la configuración y reinicia el cliente MCP.

O usa JSON

{
  "mcpServers": {
    "exchange-ews": {
      "command": "D:\\tools\\exchange-ews-mcp\\.venv\\Scripts\\exchange-ews-mcp-server.exe"
    }
  }
}

También puedes ejecutar:

.\.venv\Scripts\exchange-ews-mcp.exe mcp-config

6. Verificación

.\.venv\Scripts\exchange-ews-mcp.exe version
.\.venv\Scripts\exchange-ews-mcp.exe tool-list

Versión esperada: 0.9.0 · Herramientas de producción: 11

🎉 Listo — tu Agente ya puede trabajar con Exchange.

💬 Prueba estos prompts

Find my latest weekly report and update it with this week's progress.
Summarize the weekly reports A and B sent me, then use that summary to generate my new weekly-report draft.
Draft an email to wangxiaoming saying integration testing is complete. Don't send it.
Find the earliest one-hour slot next week when lixiaohong and I are both free, create a meeting, and save it without sending.

🧰 Principales capacidades

Área

Capacidades

Correo

Buscar/leer correos, redactar borradores, responder, reenviar, editar borradores, adjuntos

Personas

Resolución de destinatarios y gestión de ambigüedades

Informes semanales

Leer el historial reciente y crear un borrador actualizado de Responder a todos o un borrador nuevo de Redactar sin reconstruir el HTML

Calendario

Disponibilidad, franjas comunes, lecturas de calendario, crear/actualizar reuniones, enviar invitaciones

La fachada compacta de correo utiliza search_mail, read_mail, resolve_people, save_mail_draft y edit_mail_draft. Los informes semanales utilizan la única entrada weekly_report seguida de continue_action; el HTML siempre permanece en manos del servidor. La creación/edición de calendario utiliza save_meeting; el envío confirmado utiliza send_meeting_invitation.

📝 Informes semanales

Direct user update ───────────────┐
                                   ├→ weekly_report(request=...)
search_mail/read_mail → LLM summary ┘
                                   ↓
                         Read recent history + slots
                                   ↓
                         Agent routes request by loc
                                   ↓
                         Update only relevant text
                                   ↓
                  Create an unsent Reply All or Compose draft

Para las indicaciones de agregación, el Agente primero busca/lee los informes fuente y los resume; ese resumen se convierte en la request que se pasa a weekly_report. La herramienta en sí no busca el correo de otros usuarios.

El Agente no regenera la plantilla HTML completa. El servidor conserva el diseño existente y actualiza solo las ranuras de texto aprobadas. El Agente recibe tres semanas de contexto en total (el informe editable actual más dos informes anteriores), utiliza identificadores de ranura locales cortos como s1, y el servidor avanza automáticamente los marcadores de fecha/semana compatibles del Asunto para el siguiente borrador.

🔒 Seguridad en resumen

  • El correo se redacta primero como borrador.

  • El envío de reuniones requiere confirmación explícita.

  • Las credenciales permanecen en Windows Credential Manager.

  • Los destinatarios o las horas de reunión ambiguos se devuelven para confirmación en lugar de adivinarse.

📚 Documentación

Conexión del agente · Herramientas del agente · Arquitectura · Informes semanales · Pruebas de desarrollo · Registro de cambios

Para contribuyentes: CONTRIBUTING.md · SECURITY.md

Limitaciones

Windows es la plataforma de ejecución principal. El comportamiento de EWS depende de la versión de Exchange y de la política del buzón. La edición de informes semanales actualmente espera una estructura de respuesta HTML compatible con Outlook/Word. Los usuarios de Exchange Online generalmente deberían preferir Microsoft Graph y la autenticación moderna.

Licencia

Publicado bajo la Licencia MIT.

A
license - permissive license
Not graded
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
1wRelease cycle
2Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    MCP server for any Microsoft Exchange / OWA deployment. Gives LLM agents access to email, calendar, directory search, folders, availability, and meeting analytics via 30 tools.
    30
    7
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    A local stdio MCP server that enables reading, sending, and searching emails, as well as listing calendar events via Microsoft Graph API, using device-code authentication.
    10
    82
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Local-first Microsoft Outlook MCP server: a single Go binary that manages calendar events and mail through the Microsoft Graph API over stdio, with tokens stored in the OS keychain and no Entra ID app registration required. Exposes four aggregate tools (calendar, mail, account, system) dispatched by an operation verb, with multi-account support and read-only and mail-gating modes.
    4
    41
    MIT

View all related MCP servers

Related MCP Connectors

  • Read, search, send, organize, draft and schedule email across your inboxes from any MCP client.

  • A paid remote MCP for CLI tool MCP, built to return verdicts, receipts, usage logs, and audit-ready

  • Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ShermanGu/exchange-ews-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server