Open source · Auto-hébergé · MCP natif

Une boîte mail où humains et agents IA travaillent ensemble.

HermodMail est un véritable webmail IMAP/SMTP avec un serveur MCP natif. Vos agents lisent, rédigent et agissent dans votre boîte via des tokens à périmètre limité — pendant que vous gardez le contrôle de chaque dossier, de chaque permission et de chaque envoi.

L'interface réelle d'HermodMail — dossiers IMAP, recherche instantanée, volet de lecture et actions IA quand un fournisseur est configuré.

L'interface réelle d'HermodMail — dossiers IMAP, recherche instantanée, volet de lecture et actions IA quand un fournisseur est configuré.

Le problème

Email n'a pas été conçu pour les agents.

Connecter un agent IA à une messagerie, c'est souvent partager ses identifiants, bricoler des scripts fragiles et espérer que rien ne dérape. HermodMail part d'un autre principe :

Une boîte. Un moteur partagé. Humain et agent accèdent avec des permissions contrôlées.

Des tokens, pas des mots de passe partagés

Créez un token d'API, choisissez ses scopes, confiez-le à votre agent. Les tokens commencent par hmt_ et seul un hash SHA-256 est stocké — la valeur complète n'est montrée qu'à la création.

Vérifiés à chaque appel

Les scopes sont relus en base à chaque appel d'outil. Resserrez ou révoquez un token : cela s'applique aussi aux sessions déjà ouvertes.

De vrais brouillons, pas des transcriptions de chat

Les agents enregistrent de véritables brouillons IMAP — marqués \Draft, visibles dans le dossier Brouillons — au lieu de coller du texte dans une fenêtre de discussion à part.

Comment ça marche

L'agent a fait le travail. L'humain a gardé la décision.

Une collaboration typique : vous donnez une consigne à votre agent, il prépare de vrais brouillons dans votre boîte, et vous relisez et envoyez quand vous êtes prêt.

  1. Vous donnez la consigne

    « Prépare des brouillons de relance pour les comptes rencontrés la semaine dernière. » N'importe quel client MCP convient — l'agent se connecte avec son token.

  2. L'agent travaille via MCP

    Avec mail:write et ai:use, il fouille la boîte, rédige et enregistre de vrais brouillons IMAP. Rien n'est envoyé.

  3. Les brouillons sont déjà là

    Ouvrez le dossier Brouillons dans HermodMail. Chaque brouillon est un vrai message, lisible, modifiable et complémentable — avec le sélecteur de destinataires, les pièces jointes et vos habitudes de signature.

  4. Vous décidez de ce qui part

    Relisez, ajustez, envoyez. Un token sans scope mail:send ne peut envoyer aucun message — la décision d'envoi vous reste.

Un brouillon enregistré par un agent via MCP, qui attend dans le dossier Brouillons.
Un brouillon enregistré par un agent via MCP, qui attend dans le dossier Brouillons.

L'agent a fait le travail. L'humain a gardé la décision.

Un vrai webmail, avant tout

Tout ce qu'on attend d'un client mail — avec ou sans IA.

HermodMail est un webmail complet, utilisable au quotidien. L'IA est une couche facultative, jamais une condition.

IMAP / SMTP

Les protocoles standards — fonctionne avec vos comptes existants.

Dossiers

Créez, renommez et gérez vos boîtes, avec garde-fous sur les dossiers système.

Recherche plein texte

Recherche SQLite rapide sur l'objet, les correspondants et le corps.

Contacts

Récoltés automatiquement depuis vos messages, avec autocomplétion des destinataires.

Brouillons

De vrais brouillons IMAP, enregistrés et modifiables depuis n'importe quel client.

Pièces jointes

Joignez des fichiers à la rédaction, téléchargez-les à la lecture.

fr / en / es

Une interface entièrement traduite en trois langues.

Thème sombre

Auto, clair ou sombre — il suit la préférence de votre système.

Multi-utilisateur

Boîtes et isolation par utilisateur, administrées par un compte admin.

Export Markdown

Exportez n'importe quel message en Markdown propre.

MCP natif

Intégré dès la conception, pas greffé après coup.

L'interface web et les agents MCP ne passent pas par des chemins de code différents : les deux parlent au même moteur de messagerie, qui applique les mêmes règles de propriété et de permissions à une session navigateur comme à un token Bearer.

17 outils, exposés en HTTP

Pointez n'importe quel client compatible MCP vers /mcp avec un en-tête Authorization: Bearer. Voici toute la surface, groupée par le scope exigé :

mail:read
  • list_accounts
  • list_folders
  • sync_folder
  • list_messages
  • search_messages
  • get_message
  • export_markdown
mail:write
  • create_draft
  • mark_message
  • move_message
mail:send
  • send_message
mail:delete
  • delete_message
folder:write
  • create_folder
  • rename_folder
folder:delete
  • delete_folder
ai:use
  • summarize_message
  • draft_reply

get_message ne renvoie jamais de HTML brut — les agents reçoivent du contenu assaini. delete_folder exige un indicateur confirm explicite pour les dossiers non vides.

Permissions

Des permissions qui veulent dire quelque chose.

Chaque token porte un ensemble précis de scopes. Le moteur les vérifie à chaque appel — et quelques règles valent quel que soit le cas.

  • mail:read

    Lister, synchroniser, lire, rechercher, exporter en Markdown, télécharger les pièces jointes.

  • mail:write

    Enregistrer des brouillons, changer les marqueurs, déplacer des messages.

  • mail:send

    Envoyer des messages via SMTP. À accorder en connaissance de cause.

  • mail:delete

    Supprimer des messages, avec un comportement respectant la Corbeille.

  • folder:write

    Créer et renommer des dossiers.

  • folder:delete

    Supprimer des dossiers — protégé pour les dossiers système et non vides.

  • ai:use

    Utiliser les fonctions IA intégrées : résumé, classification, brouillon de réponse, traduction.

Le cycle de vie du token

Montré une fois, haché pour toujours

Seul un hash SHA-256 du token est stocké. S'il fuite, révoquez-le — rien à déchiffrer.

Modifiable à chaud

Changez les scopes d'un token à tout moment ; le nouvel ensemble s'applique à l'appel suivant, même en session ouverte.

Révocable en un clic

Révoquez instantanément depuis Paramètres → Tokens API. Le token cesse de fonctionner immédiatement.

Pas d'enrôlement de comptes

Les tokens d'API ne peuvent jamais ajouter ni retirer de comptes mail. Un token d'agent en lecture seule divulgué ne peut pas enrôler de nouvelles boîtes.

Création d'un token à périmètre limité dans Paramètres → Tokens API (MCP).
Création d'un token à périmètre limité dans Paramètres → Tokens API (MCP).

Honnête par conception : un agent qui détient mail:send peut envoyer de lui-même. HermodMail n'impose pas d'approbation humaine sur chaque message — il vous donne les moyens de décider précisément qui peut envoyer.

Apportez votre modèle

Aucun fournisseur IA imposé. Aucune dépendance cloud forcée.

Le webmail est pleinement fonctionnel avec l'IA désactivée — c'est le réglage par défaut. Quand vous voulez l'assistance intégrée, branchez le fournisseur en lequel vous avez déjà confiance :

Aucun — par défaut

Résumé, classification, brouillon de réponse et traduction restent simplement masqués. Un webmail complet, rien de plus.

API compatibles OpenAI

Tout point de terminaison parlant le format chat/completions, avec votre clé d'API chiffrée sur votre serveur.

Ollama, en local

Exécutez les modèles sur votre propre machine — rien ne quitte votre infrastructure.

Les agents apportent leur LLM

Les clients MCP utilisent leur propre modèle ; le réglage de fournisseur d'HermodMail ne sert qu'à son assistant intégré.

Le contenu des e-mails est, par définition, une donnée non fiable : le texte soumis au modèle est balisé comme donnée, et l'invite système interdit de le traiter comme des instructions.

Pour les développeurs

Auto-héberger est le but.

Un serveur Node unique avec une base SQLite, ou un conteneur. Aucun service externe requis.

git clone https://github.com/cyril-belin/HermodMail.git
cd HermodMail
cp .env.example .env
# Définissez HERMODMAIL_SECRET (openssl rand -base64 48) dans .env
docker compose up -d
# ou : podman-compose up -d

HermodMail écoute sur http://localhost:8667 et stocke tout dans le volume hermodmail-data.

Avant une mise en ligne

Définissez un HERMODMAIL_SECRET solide, servez l'application derrière TLS (le README inclut une configuration Caddy reverse-proxy prête à copier) et lisez les notes de sécurité avant d'exposer quoi que ce soit à Internet.

Documentation complète dans le README

Open source, par conception

Votre serveur de messagerie doit être inspectable.

HermodMail est un logiciel libre sous AGPL-3.0-or-later. Lisez le moteur, auditez la cryptographie, lancez la suite de tests — et modifiez ce qui ne vous convient pas.

AGPL-3.0-or-later

Le texte complet de la licence accompagne le dépôt.

Architecture lisible

Un moteur central, de fins adaptateurs HTTP et MCP, un front-end Vue 3. Rien de caché.

Une suite de tests étendue

Des tests unitaires et à base de propriétés couvrent le moteur, l'authentification, la cryptographie et la surface MCP.

HermodMail est un projet jeune (v0.1.0) en développement actif — testé avec de vraies boîtes mail, construit pour grandir au grand jour.

La même interface, confortable la nuit.

L'agent a fait le travail. L'humain a gardé la décision.

Une boîte, un moteur, des permissions contrôlées — et un toit pour les humains comme pour les machines qui y travaillent.

Star HermodMail sur GitHub