AnleitungStand 21. Oktober 2026

Hermes Agent mit E-Mail verbinden: MCP, Himalaya oder Gateway

Hermes Agent bekommt E-Mail-Zugriff am einfachsten über einen entfernten MCP-Server: ein Eintrag mit url und auth: oauth in ~/.hermes/config.yaml, danach hermes mcp login.[1] Alternativ bringt Hermes eigene Wege mit: die Himalaya-Skill für ein Postfach per IMAP/SMTP, die Google-Workspace-Skill für Gmail und ein E-Mail-Gateway, über das Menschen dem Agenten schreiben.[4][5][6] Welcher Weg passt, hängt davon ab, ob der Agent ein eigenes Postfach bedienen, deine bestehenden Adressen bearbeiten oder nur per Mail erreichbar sein soll.

Command Mail ist unser Produkt, deshalb dient es in den Beispielen als MCP-Server. Die Schritte gelten genauso für andere E-Mail-MCP-Server mit Streamable HTTP und OAuth, sofern Hermes sich dort ohne eigenen OAuth-Client anmelden kann, also per dynamischer Client-Registrierung oder Client-Metadaten-Dokument (CIMD). Verlangt ein Anbieter einen vorab registrierten Client, ergänzt du laut Hermes-Doku dessen oauth.client_id und oauth.client_secret im Eintrag.[1][2] Die Hermes-Dokumentation haben wir am 2026-10-21 abgerufen; die neueste Version war an diesem Tag v0.22.3.[8]

Stand: Faktenprüfung: Lesezeit etwa 7 Min.Als Markdown

Inhalt
  1. Vier Wege zu E-Mail in Hermes
  2. Voraussetzungen
  3. Schritt für Schritt: E-Mail-MCP in Hermes einrichten
  4. Schreibaufrufe nur mit Freigabe: trust und Werkzeugfilter
  5. Hermes auf einem Server: Anmeldung ohne Browser
  6. Die Verbindung testen
  7. Geplante Postfach-Aufgaben mit hermes cron
  8. Häufige Probleme
  9. Nächste Schritte
  10. Häufige Fragen
  11. Quellen

01Vier Wege zu E-Mail in Hermes

Hermes trennt in seiner Dokumentation ausdrücklich zwischen Funktionen, die ähnlich klingen. Das Gateway macht Hermes per Mail ansprechbar, die Himalaya-Skill lässt den Agenten ein Postfach bedienen.[4][5]

WegWofürAnmeldungBedienung
E-Mail-MCP-Serverbestehende Adressen lesen, sortieren, entwerfen, sendenOAuth im Browser oder HeaderWerkzeuge mit Präfix mcp__<name>__
Himalaya-Skilleigenes Agentenpostfach per IMAP/SMTPPasswort oder App-Passwort in HimalayaTerminalbefehle, Abruf per Cron
Google-Workspace-SkillGmail, Kalender, Driveeigenes Google-Cloud-Projekt, OAuthSkriptaufrufe
E-Mail-GatewayMenschen schreiben Hermes, Hermes antwortet im ThreadPostfach-Zugangsdaten in ~/.hermes/.enveingehende Mail wird zur Nachricht

Quellen: Hermes-Dokumentation, abgerufen am 2026-10-21.[1][4][5][6]

Für das Gateway und die Himalaya-Skill empfiehlt Hermes ein eigenes Konto für den Agenten und rät davon ab, ihm das persönliche Postfach zu geben.[4][5] Ein MCP-Server mit feinen Rechten ist der Weg, wenn Hermes in deinen echten Adressen arbeiten soll, ohne dass Postfach-Passwörter auf dem Rechner liegen.

02Voraussetzungen

Du brauchst eine aktuelle Hermes-Installation; MCP-Unterstützung gehört laut Doku zur Standardinstallation.[1] Dazu einen E-Mail-Dienst mit MCP-Server und einen Browser, in dem du die Anmeldung bestätigst.

Der Server von Command Mail läuft unter https://commandmail.app/mcp mit OAuth 2.1, PKCE und dynamischer Client-Registrierung.[7] Einen eigenen OAuth-Client brauchst du deshalb nicht. Auf der Zustimmungsseite schaltest du jedes Recht einzeln ein oder aus: mail:read zum Lesen, Suchen und Ordnen im Rahmen der Autonomiestufe, mail:draft für Entwürfe, mail:send-approved für das Senden eines von dir freigegebenen Entwurfs, mail:send für Senden ohne Einzelfreigabe und mailboxes zum Verbinden von Adressen. Senden ohne Freigabe ist anfangs aus.[7]

Der kostenlose Tarif umfasst ein Postfach, weitere Postfächer pausieren und empfangen weiter, und die letzten 90 Tage; Lesen, Suche, Sortieren, Morgenbriefing und Entwürfe sind enthalten, Senden nicht. Pro bringt Senden, bis zu zehn Postfächer und die volle Historie: 19 € im Monat für die ersten 100 zahlenden Pro-Konten, solange dieses Abo läuft, danach 29 € im Monat, jährlich 190 € oder 290 €. Pro lässt sich 7 Tage für 1 € testen, Team kostet 39 € je Person und Monat (Preise vom 2026-10-21).[7]

03Schritt für Schritt: E-Mail-MCP in Hermes einrichten

Die Einrichtung besteht aus einem Konfigurationseintrag, einer Anmeldung und einem Neuladen der Werkzeuge.[1]

  1. ~/.hermes/config.yaml öffnen und unter mcp_servers einen Eintrag anlegen:

    mcp_servers:
      commandmail:
        url: "https://commandmail.app/mcp"
        auth: oauth
        trust: untrusted

    Der Name commandmail ist frei wählbar und bestimmt das Präfix der Werkzeuge. Was trust: untrusted bewirkt, steht im nächsten Abschnitt.

  2. In einem frischen Terminal anmelden: hermes mcp login commandmail. Hermes zeigt einen Anmeldelink, öffnet nach Möglichkeit den Browser und wartet bis zu fünf Minuten auf die Rückmeldung.[1] Bearbeitest du die Datei aus einer laufenden Hermes-Sitzung heraus, lädt die CLI die Verbindungen mit einem Zeitlimit von 30 Sekunden neu. Für eine Anmeldung im Browser reicht das laut Doku nicht, deshalb das separate Terminal.

  3. Auf der Zustimmungsseite die Rechte wählen. Für den Anfang genügen mail:read und mail:draft.

  4. Eine neue Sitzung mit hermes chat starten oder in der laufenden Sitzung /reload-mcp eingeben.[1]

Hermes speichert die Tokens unter ~/.hermes/mcp-tokens/commandmail.json mit Rechten nur für deinen Benutzer und erneuert sie selbst, bis eine Erneuerung scheitert.[1] Die Werkzeuge heißen dann zum Beispiel mcp__commandmail__search_mail oder mcp__commandmail__get_thread; in tools.include trägst du dagegen die Namen ein, die der Server selbst verwendet.[2] Aufrufen musst du sie nicht von Hand; Hermes wählt sie beim normalen Arbeiten.

Hast du Command Mail schon in Claude Code eingerichtet, übernimmt hermes import-agent claude-code laut Doku auch die MCP-Server aus ~/.claude.json.[1] Prüf danach mit einer ersten Aufgabe, ob die Anmeldung in Hermes steht, und führ sonst hermes mcp login aus.

04Schreibaufrufe nur mit Freigabe: trust und Werkzeugfilter

Mit trust: untrusted fragt Hermes vor jedem Werkzeugaufruf nach, der nicht als readOnlyHint: true gekennzeichnet ist. Standard ist full; dann verlangt Hermes für Schreibwerkzeuge keine eigene Freigabe, nur ein gesetztes Kostenlimit (spend_limit) kann noch Rückfragen auslösen.[2] Die Doku empfiehlt untrusted für jeden Server, den du nicht selbst kontrollierst.

Command Mail kennzeichnet seine Werkzeuge entsprechend: Lesen, Suchen und Auflisten tragen readOnlyHint: true, Entwürfe, Sortieraktionen, Regeln und Senden nicht. Unter untrusted laufen Suchen also ohne Unterbrechung, während Hermes vor dem Archivieren, Entwerfen oder Senden fragt.

Zusätzlich kannst du festlegen, welche Werkzeuge Hermes überhaupt lädt. Mit tools.include registriert Hermes nur die genannten Werkzeuge; Platzhalter wie * sind erlaubt.[1] Ein Eintrag für einen Agenten, der lesen und Entwürfe speichern, aber keine Mails sortieren oder senden soll:

mcp_servers:
  commandmail:
    url: "https://commandmail.app/mcp"
    auth: oauth
    trust: untrusted
    tools:
      include: [capabilities, search_mail, list_threads, get_thread, list_attachments, morning_brief, save_agent_draft, list_agent_drafts]

Bei einer Include-Liste kommen Werkzeuge, die der Server später ergänzt, nicht automatisch dazu. hermes mcp configure commandmail zeigt eine Auswahlliste, wenn du die Werkzeuge lieber interaktiv wählst.[1]

Die Filter in Hermes ersetzen nicht die Rechte beim Maildienst. Command Mail baut die Werkzeugliste aus den erteilten Rechten: send_message und reply gibt es nur mit mail:send, send_approved_draft nur mit mail:send-approved. Direktes Senden braucht zusätzlich Pro, ein sendefähiges Postfach auf der Stufe auto und freies Tageslimit; jede Mail geht an höchstens 20 Empfänger.[7]

05Hermes auf einem Server: Anmeldung ohne Browser

Läuft Hermes auf einem VPS, in einem Container oder hinter SSH, öffnet sich dort kein Browser. Im interaktiven Terminal bietet Hermes neben dem Anmeldelink an, die Adresse nach der Weiterleitung einzufügen.[1] Du öffnest den Link auf deinem Rechner und bestätigst. Die Seite, auf der der Browser danach landet, zeigt einen Verbindungsfehler; das ist laut Doku erwartet. Die vollständige Adresse kopierst du ins Terminal.

Andere Wege beschreibt die Anleitung zu entfernten Hosts, etwa eine SSH-Portweiterleitung auf den Rückrufport.[3] Die Desktop-App von Hermes leitet die Anmeldung laut Doku automatisch an ein entferntes Backend weiter, wenn beide aktuell sind.[1] Einen Device-Code-Login nutzt Hermes nur, wenn der Anmeldeserver ihn anbietet; die OAuth-Metadaten von Command Mail nennen keinen.

Statt des entfernten Servers kannst du auch einen lokalen stdio-Server nutzen. Command Mail hat dafür ein Kommandozeilenwerkzeug: curl -fsSL https://commandmail.app/install.sh | sh, danach commandmail login; auch diese Anmeldung läuft über den Browser. commandmail mcp startet dann einen lokalen MCP-Server, den Hermes mit command: "commandmail" und args: ["mcp"] einbindet.[7]

06Die Verbindung testen

Der erste Aufruf sollte capabilities sein. Er liefert Kontoinhaber, erteilte Rechte, jedes Postfach mit seiner Autonomiestufe und die Limits. Bitte Hermes: „Ruf bei commandmail capabilities auf und sag mir, was du darfst.“ Stimmt die Antwort mit deiner Auswahl überein, steht die Verbindung.

Danach eine rein lesende Aufgabe: „Such Rechnungen der letzten 30 Tage und liste Absender, Datum und Betrag.“ Erst im dritten Schritt einen Entwurf anlegen lassen; unter trust: untrusted fragt Hermes dabei nach.

Command Mail kennzeichnet Mailinhalte als nicht vertrauenswürdige Daten und markiert mutmaßliche Prompt Injection.[7] Hermes selbst nennt E-Mail einen unauthentifizierten Eingangskanal und rät, nie automatisch auf unaufgeforderte Mails zu reagieren.[5] Beides gilt besonders, weil dieselbe Hermes-Sitzung oft auch Terminalbefehle ausführen darf.

07Geplante Postfach-Aufgaben mit hermes cron

Für wiederkehrende Aufgaben wie ein Morgenbriefing richtest du mit hermes cron add einen Zeitplan ein.[5] Die Himalaya-Anleitung von Hermes schlägt für den Abruf eines Agentenpostfachs alle 15 bis 30 Minuten vor und gibt einen Auftrag vor, der ausdrücklich verbietet, auf Anweisungen in unaufgeforderten Mails zu reagieren.

Für unbeaufsichtigte Läufe ist die Rechtevergabe beim Maildienst die verlässlichere Grenze, weil in einem Cron-Lauf niemand Rückfragen beantwortet. Ein Agent für das Morgenbriefing braucht mail:read und höchstens mail:draft, kein Senderecht.

08Häufige Probleme

Hermes listet Werkzeuge, aber jeder Aufruf hängt. Die Doku beschreibt das bei Servern, deren Registrierung scheitert: tools/list antwortet ohne Anmeldung, echte Aufrufe laufen in ein Zeitlimit. hermes mcp login prüft inzwischen, ob tatsächlich ein Token gespeichert wurde.[1] Command Mail verlangt schon für die Werkzeugliste ein Token; fehlt es, antwortet der Server mit 401 und einem Hinweis auf die Anmeldung.

Die Anmeldung läuft in ein Zeitlimit. Fünf Minuten sind der Standard. Mit oauth.timeout im Servereintrag verlängerst du die Wartezeit.[1]

Ein Schreibaufruf meldet „outcome_uncertain“. Streamable-HTTP-Server können ungenutzte Sitzungen beenden. Hermes wiederholt danach nur Aufrufe mit readOnlyHint: true selbst; bei allen anderen musst du prüfen, ob die Aktion ausgeführt wurde, bevor du sie erneut startest.[2] Bei einer Mail schaust du in Command Mail unter den gesendeten Nachrichten oder in der Aktivität nach, bevor du sie noch einmal senden lässt.

Der Agent kann nicht senden. Erst den Tarif prüfen, dann die Rechte. Senden braucht Pro; mail:send-approved sendet nur einen Entwurf, den du in Command Mail freigegeben hast, und nicht aus einem Postfach auf read.[7] Für andere Rechte meldest du dich mit hermes mcp login commandmail neu an.

09Nächste Schritte

Wie die Rechte und Autonomiestufen zusammenspielen, steht unter Berechtigungen und Autonomie. Ob ein eigener IMAP-MCP-Server oder ein gehosteter Dienst besser passt, erklärt IMAP-MCP oder gehosteter MCP. Weitere Agenten im Terminal beschreibt E-Mail in Claude Code, Codex und Cursor.

Command Mail kostenlos starten und Hermes verbinden.

Häufige Fragen

Wie verbinde ich Hermes Agent mit einem E-Mail-MCP-Server?

Trag den Server in ~/.hermes/config.yaml unter mcp_servers ein, mit url und bei OAuth-Servern auth: oauth. Danach in einem frischen Terminal hermes mcp login <name> ausführen, die Anmeldung im Browser bestätigen und eine neue Sitzung starten oder /reload-mcp eingeben.

Kann Hermes Agent E-Mails senden?

Ja, auf mehreren Wegen: über ein E-Mail-MCP-Werkzeug, über die Himalaya-Skill per IMAP/SMTP, über die Google-Workspace-Skill für Gmail oder als Antwort im E-Mail-Gateway. Ob gesendet wird, entscheiden die Rechte beim Maildienst und Hermes' eigene Freigaben. Bei Command Mail braucht jedes Senden den Pro-Tarif; ohne Einzelfreigabe zusätzlich das Recht mail:send und ein Postfach auf der Stufe auto.

Wie verhindere ich, dass Hermes ohne Rückfrage Mails verschickt?

Setz für den Server trust: untrusted. Dann fragt Hermes vor jedem Werkzeugaufruf ohne readOnlyHint: true nach. Zusätzlich kannst du mit tools.include nur Lese- und Entwurfswerkzeuge laden und beim Maildienst kein Senderecht erteilen.

Funktioniert die OAuth-Anmeldung, wenn Hermes auf einem Server läuft?

Ja. Hermes zeigt im interaktiven Terminal neben dem Anmeldelink die Möglichkeit, die Adresse nach der Weiterleitung einzufügen. Du öffnest den Link auf deinem Rechner, bestätigst und kopierst die Adresse, auf der der Browser landet, zurück ins Terminal. Einen Device-Code-Login bietet Command Mail laut seinen OAuth-Metadaten nicht an.

Brauche ich für Gmail in Hermes ein Google-Cloud-Projekt?

Nur für die Google-Workspace-Skill, die OAuth-Zugangsdaten aus einem eigenen Projekt nutzt. Die Himalaya-Skill kommt laut Hermes-Doku mit einem App-Passwort aus. Ein gehosteter MCP-Server wie Command Mail braucht weder das eine noch das andere; Gmail kommt dort per Weiterleitung an.

Quellen

  1. Hermes Agent: MCP (Model Context Protocol) hermes-agent.nousresearch.com, abgerufen am
  2. Hermes Agent: MCP Config Reference hermes-agent.nousresearch.com, abgerufen am
  3. Hermes Agent: OAuth over SSH / Remote Hosts hermes-agent.nousresearch.com, abgerufen am
  4. Hermes Agent: E-Mail-Gateway (IMAP/SMTP) hermes-agent.nousresearch.com, abgerufen am
  5. Hermes Agent: Give Your Agent Its Own Email Address (Himalaya) hermes-agent.nousresearch.com, abgerufen am
  6. Hermes Agent: Google Workspace Skill hermes-agent.nousresearch.com, abgerufen am
  7. Command Mail: llms.txt mit Tarifen, Rechten und Anbindung commandmail.app, abgerufen am
  8. NousResearch: Hermes Agent Releases github.com, abgerufen am
DE