L’e-mail pour les agents IA

Une boîte mail pour votre agent.
Aux conditions que vous fixez.

Connectez Claude Code, Codex, Cursor ou n’importe quel client MCP à une vraie boîte mail. Il lit, répond et envoie depuis vos adresses, dans les limites de l’accès que vous approuvez, aussi longtemps que vous le permettez.

Aucune clé à coller. Le client se connecte via votre navigateur, et vous l’approuvez comme toute autre application.

Un agent trouve une demande de remboursement dans [email protected], y répond dans la conversation et la range sous remboursements.

Une adresse à coller.
N’importe quel client MCP.

Le serveur parle MCP sur HTTP. Ajoutez son adresse à votre client, connectez-vous une fois dans le navigateur et approuvez ce qu’il peut atteindre.

claude mcp add --transport http openemail https://api.openemail.uk/mcp

Lancez cette commande dans un terminal, puis tapez /mcp dans Claude Code pour vous connecter.

[mcp_servers.openemail]url = "https://api.openemail.uk/mcp"

Ajoutez ceci à ~/.codex/config.toml, puis lancez codex mcp login openemail.

{ "mcpServers": { "openemail": { "url": "https://api.openemail.uk/mcp" } } }

Ajoutez ceci à ~/.cursor/mcp.json pour tous les projets, ou à .cursor/mcp.json pour un seul.

{ "servers": { "openemail": { "type": "http", "url": "https://api.openemail.uk/mcp" } } }

Ajoutez ceci à .vscode/mcp.json dans votre espace de travail.

{ "mcpServers": { "openemail": { "serverUrl": "https://api.openemail.uk/mcp" } } }

Ajoutez ceci à ~/.codeium/windsurf/mcp_config.json.

https://api.openemail.uk/mcp

Ouvrez « Settings », puis « Connectors », choisissez « Add custom connector » et collez cette adresse.

Ou laissez l’agent se configurer lui-même

Collez ceci dans n’importe quel agent capable de lancer une commande dans un terminal. Il lit un guide écrit pour les agents, puis vous indique la seule étape qui demande votre intervention.

Prompt pour votre agent

Exécute `npx @openemail/cli agents` et lis le guide qu’il affiche. Dis-moi ensuite ce que je dois faire pour te connecter à ma boîte OpenEmail, et attends mon feu vert avant d’envoyer quoi que ce soit.

Vous l’approuvez.
Comme toute autre application.

Quand le client se connecte, vous choisissez l’espace de travail, ce qu’il peut faire, les adresses qu’il atteint et pour combien de temps. Compte → Applications connectées le modifie ou le retire ensuite.

Votre rôle est le plafond
Une application ne détient jamais une permission qui vous manque, et quand votre rôle en perd une, l’application la perd à son prochain appel.
Certaines choses ne sont jamais accordées
Aucune application ne peut créer ni renouveler de clés API, ni ouvrir la facturation, ni gérer l’espace de travail, quoi que vous cochiez.
Les modifications risquées vous attendent
Ajouter un webhook, écrire une règle, changer des rôles ou retirer un domaine demande votre code de vérification, ou une autorisation de 60 minutes que vous activez pour cette application.

Des tâches entières.
Appel par appel.

Chaque étape ci-dessous est un vrai outil, une vraie commande ou un vrai événement. Choisissez une tâche pour la suivre de bout en bout.

Une boîte jetable reçoit l’e-mail de vérification, et l’agent y lit le code lui-même. Pas de compte et pas de clé.

  1. Ligne de commandeopenemail temp new --ttl 30

    Obtient une adresse qui reçoit du courrier pendant les 30 prochaines minutes

  2. Navigateur

    S’en sert pour remplir le formulaire d’inscription sur acme.com

  3. Ligne de commandeopenemail temp watch --first

    Attend l’arrivée du premier message

  4. Ligne de commandeopenemail temp read thr_9e3b7c1a

    Lit le code dans le message

  5. Navigateur

    Saisit le code et termine l’inscription

Boîte de réceptionk7x2m9qfd4pa@domaine partagé

Acme

Votre code Acme est 847 293

Votre point de terminaison est prévenu dès qu’un nouveau message arrive, et l’agent répond dans la conversation depuis l’adresse qui l’a reçu.

  1. Webhookemail.received

    Un nouveau message arrive pour [email protected]

  2. MCPgetThread

    Lit toute la conversation, en commençant par le plus ancien message

  3. MCPreplyToEmail

    Répond dans la conversation, depuis [email protected]

  4. MCPmodifyLabels

    La range sous remboursements

Boîte de réception[email protected]

Ada Park

Mon colis est arrivé abîmé. Puis-je être remboursé pour la commande 4821 ?

[email protected]

Désolés pour le colis. Votre remboursement pour la commande 4821 est en cours.

L’agent programme une relance pour la semaine prochaine et l’annule si la réponse arrive avant. Envoyée deux fois avec la même clé, elle n’est programmée qu’une fois.

  1. Ligne de commandeopenemail send --to [email protected] … --at 7d --idempotency-key quote-311

    Programme une relance dans sept jours

  2. Webhookemail.replied

    Noor répond avant la fin de la semaine

  3. Ligne de commandeopenemail emails cancel msg_4b7e05d3

    Annule la relance avant son départ

Boîte de réception[email protected]

[email protected]Annulée

Je voulais juste m’assurer que vous aviez bien vu le devis envoyé la semaine dernière.

Noor Haddad

Merci, nous acceptons le devis.

Une personne rédige et publie le modèle. L’agent ne fait qu’en remplir les champs, et un champ manquant est refusé plutôt qu’envoyé vide.

  1. Vous

    Rédige et publie le modèle de bienvenue

  2. MCPpreviewTemplate

    En fait le rendu avec les données d’Ada et lit le résultat

  3. MCPsendWithTemplate

    L’envoie à [email protected]

  4. Webhookemail.delivered

    Apprend que le serveur de réception l’a accepté

Boîte de réception[email protected]

Bienvenue, version 3, publiée

[email protected]

Bienvenue chez Acme, Ada. Votre forfait d’équipe est prêt.

Les agents dérapent.
La boîte mail rattrape le coup.

Les agents réessaient et lisent de travers. Voici ce qui limite les dégâts d’un mauvais appel.

API et ligne de commande

POST /emails Idempotency-Key: reply:thr_7c1e4a90

  1. Tentative 1msg_4b7e05d3862c1f0a44b19e2cEnvoyé
  2. Tentative 2msg_4b7e05d3862c1f0a44b19e2cRejoué

Même clé, même résultat. Une nouvelle tentative n’envoie jamais deux fois.

1E-mails envoyés : 1

MCP

tools/call sendEmail

  1. Tentative 1msg_4b7e05d3862c1f0a44b19e2cEnvoyé
  2. Tentative 2msg_91c2f7a04d3b6e8c15a0f2d7Envoyé

Un envoi MCP part tout de suite, et le répéter l’envoie à nouveau.

2E-mails envoyés : 2

D’abord un essai à blanc
Ajoutez --dry-run à n’importe quelle commande et elle affiche la requête qu’elle ferait au lieu de l’envoyer.
Les suppressions demandent confirmation
Une commande destructrice lancée sans intervention humaine refuse de s’exécuter, sauf si l’agent a reçu la consigne de passer --yes.
Le courrier falsifié reste dehors
Le courrier que son propre domaine expéditeur renie va dans Pourriels, loin de la boîte de réception que lit votre agent.
Les clés laissent une trace
Chaque appel fait avec une clé API est journalisé avec son chemin, son statut et sa durée, et le journal est conservé.

128 outils.
Chacun nommé d’après ce qu’il fait.

Une application n’obtient que les outils que couvre son approbation : une application limitée à la lecture n’a donc aucun outil d’envoi.

  • getThreadSummary
  • composeEmail
  • sendEmail
  • replyToEmail
  • listThreads
  • getThread
  • markThreadsRead
  • markThreadsUnread
  • modifyLabels
  • getCurrentDate
  • getUserLabels
  • createLabel
  • updateLabel
  • deleteLabel
  • listContacts
  • getContact
  • createContact
  • updateContact
  • deleteContact
  • listPeople
  • saveContact
  • deleteContacts
  • blockContact
  • unblockContact
  • listContactThreads
  • getContactActivity
  • listAudiences
  • getAudience
  • createAudience
  • updateAudience
  • deleteAudience
  • listAudienceContacts
  • addContactToAudience
  • removeContactFromAudience
  • addContactsToAudience
  • removeContactsFromAudience
  • importContactsToAudience
  • emptyAudience
  • setContactAudiences
  • getAudienceGrowth
  • previewAudienceSend
  • sendToAudience
  • listBroadcasts
  • getBroadcast
  • cancelBroadcast
  • listBroadcastRecipients
  • getBroadcastRecipient
  • getBroadcastStats
  • listTemplates
  • getTemplate
  • getTemplateVersion
  • previewTemplate
  • createTemplate
  • updateTemplate
  • publishTemplate
  • duplicateTemplate
  • replaceTemplateContent
  • restoreTemplateVersion
  • deleteTemplateVersion
  • deleteTemplate
  • listTemplateStarters
  • getTemplateStarter
  • getTemplateAnalytics
  • listTemplateSends
  • sendWithTemplate
  • listFiles
  • getFile
  • deleteFile
  • deleteFiles
  • uploadFile
  • getFileStats
  • createFileLink
  • revokeFileLink
  • listRules
  • getRule
  • createRule
  • testRule
  • setRuleEnabled
  • getEmailTracking
  • getFileDownloads
  • listTrackedEmails
  • getEngagementStats
  • previewTranslation
  • listTranslationLanguages
  • listSuppressions
  • addSuppression
  • removeSuppression
  • getConnections
  • getActiveConnection
  • setActiveConnection
  • getLabel
  • whoAmI
  • listRoles
  • listWorkspaceMembers
  • listInvitations
  • revokeInvitation
  • resendInvitation
  • listDomains
  • getDomain
  • addDomain
  • verifyDomain
  • setDomainCatchAll
  • removeDomain
  • listDomainAddresses
  • addDomainAddress
  • updateDomainAddress
  • removeDomainAddress
  • getDomainLogo
  • setDomainLogo
  • removeDomainLogo
  • setDomainLogoCertificate
  • removeDomainLogoCertificate
  • setDomainDmarcPolicy
  • setAddressPhoto
  • removeAddressPhoto
  • listApiKeys
  • listWebhookEvents
  • listWebhooks
  • rotateApiKey
  • setApiKeyEnabled
  • revokeApiKey
  • setApiKeySendScope
  • listApiKeyRequests
  • listApiKeyActivity
  • listWebhookDeliveries
  • getWebhookDelivery
  • replayWebhookDelivery
  • listWebhookActivity

Demande d’abord votre code

Ce qui manque

Quatre choses.
À connaître avant de connecter un client.

Les clés n’ouvrent pas MCP
Le serveur MCP accepte une connexion approuvée, jamais une clé API. Un script qui détient une clé passe plutôt par la ligne de commande ou l’API.
Les envois MCP partent tout de suite
Un e-mail envoyé via MCP part immédiatement, et l’envoyer deux fois l’envoie deux fois. Pour une fenêtre d’annulation ou une nouvelle tentative sans risque, envoyez par la ligne de commande ou l’API.
Une personne se connecte une fois
La connexion dans le navigateur, et le code d’une modification risquée, ont besoin de vous. Ensuite, l’agent travaille seul jusqu’à la fin de son accès.
Pas de mode test
Chaque clé envoie pour de vrai. Essayez d’abord une modification avec --dry-run, ou envoyez vers une boîte jetable.

Posées en premier.
Réponses sans détour.

Pour qui c’est

Une seule boîte mail.
Quatre portes d’entrée.

Particuliers

Une adresse gratuite sur openemail.uk, avec le client derrière.

acme.comacme.devstudio.acme.com
hello@acme.comremis
billing@acme.comremis
oct-2026-signup@acme.comremis
anything-at-all@acme.comremis
Entreprises

Des adresses pour tous, sans jamais compter un membre comme un poste.

SSarahAAliJJamieNNadia
Aucun siège ajouté. La facture ne bouge pas.
Développeurs

La même boîte mail via une API, un SDK, une CLI et MCP.

/threads?query=invoice
{ "threads": 12 }
La même boîte, qu'elle soit tenue par une personne ou par un programme.
Agents IA

Une boîte mail où votre agent peut travailler, avec l’accès que vous approuvez.

listThreads(folder: "inbox", query: "is:unread")
3 non lus
Il ne lit et n’envoie que le courrier de [email protected].

Donnez-lui une adresse.
Regardez-le travailler.

MCP, l’API et la ligne de commande sont inclus dans toutes les formules, la gratuite comprise. Connectez un client et approuvez exactement ce qu’il atteint.

Votre boîte de réception,
à vos conditions.

L’infrastructure e-mail pour les entreprises, l’IA, les agents et le courrier personnel. Conçue pour l’échelle, la confidentialité et le contrôle. Tout ce que l’e-mail aurait dû avoir dès le premier jour.

OpenEmail

L’infrastructure e-mail pour les entreprises, l’IA, les agents et le courrier personnel. Conçue pour l’échelle, la confidentialité et le contrôle. Tout ce que l’e-mail aurait dû avoir dès le premier jour.

© 2026 OpenEmail. Tous droits réservés.