Corresync

MCP local-first para correo y calendarios neutrales respecto al proveedor, con cuentas aisladas y escrituras protegidas.

Documentación

Corresync

Corresync: two correspondence flows around one local core

Correo, calendarios y tareas. Un servidor MCP local y CLI.
Herramientas locales y neutrales respecto al proveedor para agentes de IA, scripts y para ti.

CI status Latest release Go 1.26 Apache-2.0 license macOS, Linux, and Windows Model Context Protocol over stdio Current documentation Local-first architecture

Sitio web · Primeros pasos · Proveedores · Funciones · Seguridad · Privacidad · Términos · Documentación técnica

corr reúne cuentas aisladas de correo, calendario y tareas en una sola terminal—y un único servidor local de Model Context Protocol. Gmail, Google Calendar y Google Tasks están disponibles a través de un cliente OAuth de escritorio en un proyecto de Google Cloud que tú controlas. El OAuth de Google administrado por Corresync permanece inactivo. Las herramientas canónicas de tareas también incluyen rutas explícitas para Microsoft To Do, Todoist, TickTick y VTODO de CalDAV; los adaptadores restantes de proveedores de tareas permanecen no disponibles hasta que se implementen sus contratos.

  • Busca correo y construye una agenda única entre cuentas sin colapsar su identidad ni el origen del proveedor.
  • Usa un modelo de tareas estable y que preserva la procedencia a medida que los adaptadores de proveedores estén disponibles.
  • Guarda búsquedas de correo locales por cuenta y ventanas de calendario relativas, y luego ejecútalas en vivo sin crear un buzón espejo ni una caché de calendario.
  • Usa las mismas operaciones tipadas desde una CLI amigable, JSON estable o un agente de IA.
  • Mantén el inicio de sesión en un navegador visible, un flujo OAuth explícito de cliente público o un almacén de credenciales local aprobado.
  • Revisa los efectos consecuentes antes de que ocurran. Los resultados remotos desconocidos se detienen para reconciliación en lugar de reintentarse automáticamente.

Cómo se siente

$ corr mail search --all-accounts \
    --query 'subject:"Quarterly plan"' --limit 3
● work · microsoft-owa   Ana Ruiz   Plan review
· personal · jmap       Finance    Plan receipt

$ corr agenda list --all-accounts \
    --start 2026-07-29T00:00:00Z \
    --end 2026-07-30T00:00:00Z

Conecta un agente al mismo núcleo local:

corr integrations detect
corr integrations plan codex claude-code
corr integrations setup codex claude-code
# Phase A also includes github-copilot, gemini-cli, qwen-code, qoder, kimi-code

Luego pregunta de forma natural:

Check my inboxes, calendars, and task lists and summarize what needs attention today.

Un proveedor fallido se convierte en un fallo parcial explícito. Los resultados exitosos permanecen disponibles, y las escrituras aún requieren una cuenta exacta.

Elige la ruta que se ajuste

Las rutas de correo, calendario y tareas se seleccionan de forma independiente. Por ejemplo, una cuenta puede combinar correo IMAP/SMTP con un calendario CalDAV; su ruta de tareas sigue siendo una elección explícita separada.

RutaCorreoCalendarioTareasAutenticación
Outlook WebLecturas y escrituras tipadasCalendarios seleccionables; enlace de Teams compatible con el proveedor—Perfil de navegador visible dedicado
Google (tu cliente OAuth)Lecturas y escrituras de la API de Gmail; sin borrado permanenteCalendarios seleccionables; Google Meet cuando se anunciaGoogle Tasks mediante una concesión separada solo de tareasTu cliente OAuth de escritorio; credencial de cliente y concesiones en el llavero del sistema
Microsoft GraphLecturas y escrituras tipadasCalendarios seleccionables; creación tipada de enlaces de TeamsMicrosoft To DoTu cliente OAuth público autorizado; concesión en el llavero del sistema
Todoist——Operaciones tipadas de TodoistTu cliente OAuth público autorizado; concesión en el llavero del sistema
TickTick——Operaciones tipadas de TickTickTu cliente OAuth confidencial autorizado; identificador de secreto externo y concesión en el llavero del sistema
JMAPOperaciones tipadas de correo——Llavero del sistema o asistente de credenciales aprobado
IMAP / SMTPLectura/gestión IMAP y borrador/envío SMTP——Llavero del sistema o asistente de credenciales aprobado
CalDAV—Operaciones tipadas de calendario y programación condicionalListas VTODO, búsqueda, sincronización y escrituras revisadasLlavero del sistema o asistente de credenciales aprobado

El descubrimiento recopila metadatos de DNS, well-known y del proveedor sin credenciales. Nunca autentica ni agrega una cuenta. La autorización de Microsoft Graph y de Google propiedad del usuario sigue siendo una elección explícita y nunca es un respaldo automático. El descubrimiento de Google puede ofrecer una configuración guiada de cliente de escritorio, pero ningún inicio de sesión de Google comienza hasta una corr auth login explícita posterior. Consulta la guía anotada de configuración de Google.

iCloud tiene un ajuste preestablecido guiado de primera clase sobre los mismos adaptadores neutrales IMAP/SMTP y CalDAV. corr setup reconoce las familias de direcciones de correo de iCloud documentadas o el conjunto completo de endpoints SRV verificados de Apple, revisa ambas rutas como una sola cuenta y usa un identificador de credencial externo por defecto. Después de agregar la cuenta, una transferencia explícita puede abrir la página de contraseñas específicas de la aplicación de Apple y el aviso de credenciales del sistema; el proceso corr nunca lee la contraseña específica de la aplicación.

Cada ruta v0.9 disponible arriba tiene cobertura sintética de contrato de proveedor y de aplicación. La ruta de API de Google propiedad del usuario está disponible pero sin observación en vivo. Otras implementaciones de proveedores y plataformas permanecen sin observación en vivo hasta que una observación autorizada y sin contenido se vincule al commit exacto. Consulta evidencia de compatibilidad antes de conectar una cuenta sensible.

De la instalación a la primera lectura

¿Prefieres una página guiada? Sigue primeros pasos en el sitio web.

1. Instalación

Los instaladores independientes oficiales son la ruta más corta en cada plataforma. Seleccionan la última versión estable, verifican su archivo y binario candidato, instalan para el usuario actual sin elevación y dejan intacta la configuración de cuentas.

macOS y Linux

curl -LsSf https://corresync.org/install.sh | sh
corr --version

Windows PowerShell

powershell -NoProfile -Command "irm https://corresync.org/install.ps1 | iex"
corr --version

Revisa install.sh o install.ps1 antes de ejecutarlo si lo prefieres. Los gestores de paquetes siguen siendo alternativas totalmente compatibles:

# Homebrew · macOS or Linux
brew install nkiyohara/corresync/corresync

# WinGet · Windows
winget install --id nkiyohara.Corresync --exact

# Scoop · Windows
scoop bucket add corresync https://github.com/nkiyohara/scoop-corresync
scoop install corresync/corresync

Archivos directos, paquetes nativos de Linux, fijación de versiones, sumas de verificación y procedencia Sigstore están en la guía de instalación. El sitio web guiado mantiene las mismas opciones de copiar y pegar visibles para quienes no usan GitHub con regularidad.

Los usuarios de Claude Desktop también pueden instalar el .mcpb universal de plataforma desde el último lanzamiento. El paquete ejecuta el mismo binario corr mcp serve verificado localmente a través de stdio; no despliega Corresync ni retransmite datos de buzón. Instala primero la CLI para los pasos explícitos de configuración de cuenta e inicio de sesión a continuación, luego abre o arrastra el .mcpb a Claude Desktop.

Mantente actualizado

Los comandos interactivos realizan una verificación de lanzamiento silenciosa y en caché al inicio. Si existe una actualización, Corresync muestra el comando exacto para tu instalación: corr update para la compilación independiente, o el comando correspondiente de Homebrew, Scoop o WinGet. Los archivos administrados por gestores de paquetes nunca se modifican mediante Corresync.

Las versiones estables se seleccionan por defecto. Los usuarios independientes que quieran candidatos de lanzamiento firmados pueden elegir el canal de vista previa de forma interactiva:

corr settings

Los comandos equivalentes de copiar y pegar para scripts son:

corr config set updates.channel preview
corr update

Vuelve con corr config set updates.channel stable; Corresync nunca degrada el binario en ejecución. Los lanzamientos de vista previa no entran en los catálogos de gestores de paquetes.

Los usuarios independientes pueden optar por la instalación automática verificada:

corr config set updates.auto_install true

Nunca se ejecuta durante llamadas de herramientas MCP, cambios de configuración, trabajo del daemon, salida JSON, tuberías u otras rutas no interactivas. El comando actual continúa normalmente y el nuevo binario está activo en el próximo inicio de corr.

2. Agrega e inicia sesión en tu cuenta

corr setup

La configuración guiada deriva una verificación previa reanudable del estado local actual, opcionalmente instala la finalización de shell en una ruta local de usuario mostrada y luego realiza el descubrimiento de cuentas sin credenciales. Previsualiza las rutas de correo/calendario/tareas seleccionadas y agrega una cuenta solo después de la confirmación. La autenticación o el acceso a credenciales externas sigue siendo una elección separada. La misma ejecución puede agregar más cuentas, seleccionar varios hosts de agentes detectados, previsualizar sus planes de integración local independientes, aplicar solo un plan confirmado y verificar cada resultado. Volver a ejecutar corr setup omite el trabajo saludable y ofrece los pasos faltantes o reparables.

Después de elegir una ruta de conexión, el asistente presenta una lista de verificación de servicios. Para una cuenta de Microsoft, Outlook Mail y Calendar están preseleccionados y se pueden cambiar de forma independiente; Microsoft To Do es una autorización de Graph opcional y explícita. La mensajería de Teams se muestra como próximamente mientras la puerta de lanzamiento v0.9 está cerrada y no se puede seleccionar, persistir ni abrir. El descubrimiento es solo evidencia de ruta: nunca prueba que algún servicio marcado esté habilitado para la cuenta y nunca activa un respaldo de Graph.

Ejecuta corr settings para abrir el mismo asistente de cuentas; inicia sesión en, renombra, selecciona o elimina cuentas; y administra actualizaciones, seguridad e inicio de sesión en el navegador desde un formulario de teclas de flecha. Su entrada de guía de Configuración reanuda el coordinador completo en lugar de mantener otra implementación. La categoría de nivel superior Cuentas contiene Agregar cuenta y la lista de cuentas configuradas; seleccionar una cuenta abre solo acciones para esa cuenta. La eliminación previsualiza los datos locales que elimina y pide confirmación; eliminar la cuenta predeterminada primero pregunta qué cuenta restante debería reemplazarla. Cada elección también muestra el comando equivalente, por lo que el flujo interactivo enseña la CLI directa. Establece CORRESYNC_ACCESSIBLE=true para avisos de lector de pantalla orientados a líneas; escribe :cancel para salir de un paso de entrada de forma segura. El formulario directo de renombrado sigue siendo:

corr account rename personal work

Los scripts y usuarios avanzados conservan la forma determinista:

corr setup you@example.com --alias personal
corr auth login --account personal
corr doctor --account personal

El formulario directo setup ADDRESS crea la misma configuración local neutral de proveedor y sin secretos, realiza un descubrimiento sin credenciales y agrega solo una ruta de primer partido seleccionable automáticamente. Nunca abre una página de inicio de sesión. La autenticación es una acción separada y específica de la cuenta.

Si ninguna ruta se puede seleccionar de forma segura—o si quieres una ruta de API o estándar— inspecciona la evidencia y elige la configuración exacta del proveedor:

corr account discover reader@example.invalid
corr account add reader@example.invalid --help

Para Gmail, Google Calendar y Google Tasks, crea un cliente OAuth de escritorio en un proyecto de Google Cloud que tú controles. La configuración guiada valida el JSON del cliente descargado y coloca su credencial generada en el llavero del sistema; la adición de cuentas aún no autentica. Sigue la guía de configuración de OAuth de Google para las pantallas actuales de Cloud Console, opciones de audiencia, APIs exactas, alcances, importación e inicio de sesión.

Antes de instalar, el verificador de compatibilidad de proveedores opcional puede clasificar la evidencia pública de una dirección. El navegador envía solo el dominio después del @ en un cuerpo de solicitud; nunca envía la parte local, persiste la dirección ni inicia el inicio de sesión. El servicio público usa solo un solucionador DNS fijo y no devuelve ningún registro DNS sin procesar. Omítelo siempre que prefieras y ejecuta corr account discover ADDRESS localmente.

La adición de cuentas no autentica. Las rutas OAuth requieren un registro de cliente que estés autorizado a usar. Google además requiere un identificador externo separado para su credencial de cliente de escritorio generada. Las rutas estándar usan una entrada de llavero o una referencia de asistente aprobada explícitamente. Las contraseñas y tokens nunca entran en config.toml. Consulta configuración de cuentas y proveedores. La ruta de Outlook Web abre un perfil visible dedicado durante el auth login posterior; esa ventana sigue siendo la sesión propiedad del navegador hasta el cierre de sesión de la cuenta o el apagado del daemon. SSO, MFA, Acceso Condicional y avisos de la organización permanecen dentro del flujo propiedad del proveedor.

3. Conecta un agente

corr mcp setup codex

Use corr mcp --help para Claude Code, GitHub Copilot CLI, Gemini CLI, Qwen Code, Qoder, Kimi Code CLI y clientes stdio genéricos. Corresync expone 45 herramientas específicas y dos recursos de monitoreo de solo lectura; no hay HTTP, SSE, endpoint MCP remoto ni relé alojado.

Nada se envía en el primer intento

Las escrituras con consecuencias utilizan un protocolo preview -> commit impuesto por el servidor. El primer comando muestra la cuenta normalizada, el proveedor, el destino, los destinatarios, el resumen del contenido y las condiciones previas de versión sin realizar el efecto.

printf 'Synthetic body.\n' | \
  corr mail send \
    --account work \
    --to reader@example.invalid \
    --subject 'Review example' \
    --body-file -

Después de revisar cada campo, repite el comando exacto con aprobación:

printf 'Synthetic body.\n' | \
  corr mail send \
    --account work \
    --to reader@example.invalid \
    --subject 'Review example' \
    --body-file - \
    --approve

La aprobación es de corta duración, de un solo uso y está vinculada al llamador, la cuenta, el proveedor, el destino, la carga útil y el efecto. Cambiar cualquier campo revisado la invalida. MCP mantiene la vista previa y la confirmación como herramientas tipadas separadas.

Consulta el modelo de seguridad completo. La Política de privacidad pública de Corresync explica el acceso a datos de Google, el almacenamiento local, la divulgación, la retención y la eliminación; los Términos de uso preservan los derechos de software otorgados por Apache-2.0.

Más de una bandeja de entrada

  • Vistas entre cuentas: la búsqueda de correo limitada y las proyecciones de agenda conservan la cuenta original, el proveedor, el calendario, la zona horaria y la procedencia de fallos parciales.
  • Preparación de importación de solo lectura: inspecciona un archivo local aprobado explícitamente, un árbol Maildir o una exportación compatible sin cargar ni modificar la fuente.
  • Monitoreo opcional: avanza deliberadamente desde off a notificaciones locales, colas duraderas y, finalmente, un ejecutor aprobado sin shell. La salida remota es un consentimiento separado.
  • Comentarios que preservan la privacidad: genera un informe de lista permitida localmente, revísalo y luego copia, guarda o abre explícitamente una página de GitHub prellenada. Una configuración separada desactivada por defecto puede enviar un problema público de lista permitida aún más reducido a través de tu cliente gh autenticado después de un fallo interactivo.

Los valores de buzón, calendario, importación y cola de eventos son datos externos privados y no confiables. Su contenido nunca es autoridad para ejecutar un comando o iniciar un agente.

Límites honestos

  • Gmail, Google Calendar y Google Tasks requieren un cliente OAuth de escritorio de Google propiedad del usuario. El OAuth de Google administrado por Corresync permanece deshabilitado; la ruta propiedad del usuario está cubierta por contrato sintético y no observada en vivo.
  • Microsoft Graph requiere tu propio registro de cliente público autorizado. Corresync no incluye ningún relé de tokens.
  • La configuración de notificaciones de escritorio de Windows no está disponible porque Corresync no instala un AppUserModelID; los modos de cola y ejecutor aprobado siguen disponibles.
  • Los enlaces de reuniones del proveedor se solicitan solo cuando la ruta de calendario seleccionada informa soporte nativo.
  • La compilación cruzada y los accesorios sintéticos no demuestran el comportamiento nativo del navegador, llavero, IPC, proveedor, administrador de paquetes, Gatekeeper o SmartScreen.
  • El chat de Teams, los canales, las llamadas, las grabaciones y la gestión del ciclo de vida de las reuniones; el acceso a nivel de inquilino; el inicio de sesión sin supervisión; la interceptación TLS; las acciones arbitrarias del proveedor; la telemetría automática; y la carga de fallos sin procesar están fuera del alcance.

La matriz de acciones exacta y las degradaciones tipadas del proveedor están en features.md.

Un único límite de seguridad local

AI agents ───────── MCP over stdio ─┐
                                    ├── typed use cases + effect policy
Humans and scripts ──────── corr ───┘              │
                                                   │ authenticated local IPC
                                            session owner
                                            ├── browser-owned sessions
                                            ├── explicit OAuth + keyring
                                            └── standards adapters

El propietario de la sesión no expone ningún listener TCP. En Unix, los clientes autentican y fijan el directorio de ejecución privado independiente del entorno, el bloqueo singleton, el socket y el UID del par antes de que el portador local pueda enviarse. En Windows, los clientes verifican primero la tubería con nombre protegida, el propietario, la DACL, el proceso del servidor y el SID.

Lee la arquitectura, el modelo de autenticación y el modelo de amenazas para conocer los límites completos.

Documentación

Quiero…Empieza aquí
Instalar y verificar una versiónInstalación
Agregar cuentas y elegir rutasConfiguración
Comprender el inicio de sesión con navegador, OAuth y estándaresAutenticación
Aprender comandos CLIGuía CLI
Conectar un cliente de IAGuía MCP
Comparar acciones y degradaciones del proveedorMatriz de funciones
Consumir salida de máquina estableContrato JSON
Integrar contratos públicos/locales versionadosPolítica de versionado
Verificar afirmaciones de compatibilidadMatriz de evidencia
Revisar privacidad y manejo de datos de GooglePolítica de privacidad
Revisar términos de uso y licencia de código abiertoTérminos de uso
Conectar Google con tu propio cliente de escritorioConfiguración de OAuth de Google
Revisar el plan de cliente administrado inactivoManual de verificación de Google
Revisar todas las guíasMapa de documentación

Los usuarios que actualizan desde versiones anteriores a v0.7 pueden seguir la guía de migración histórica. corr es el comando principal. El producto, el paquete, el repositorio, las raíces de configuración, el plugin y el servidor MCP siguen llamándose Corresync.

Contribución y seguridad

Lee CONTRIBUTING.md y AGENTS.md. Las pruebas predeterminadas y la CI usan solo accesorios sintéticos:

mise exec -- task verify

Informa vulnerabilidades a través de informes de vulnerabilidades privados de GitHub, nunca en un problema público.