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

> Hermes Agent mit E-Mail verbinden: MCP-Server mit OAuth in config.yaml, Werkzeugfilter, Freigabe für Schreibaufrufe und die Wege Himalaya und Gateway.

Stand: 2026-10-21 · Faktenprüfung: 2026-10-21 · Quelle: https://commandmail.app/de/anleitungen/hermes-agent-mit-e-mail-verbinden · English: https://commandmail.app/en/guides/connect-hermes-agent-to-email.md

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]

## Vier 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]

| Weg | Wofür | Anmeldung | Bedienung |
|---|---|---|---|
| E-Mail-MCP-Server | bestehende Adressen lesen, sortieren, entwerfen, senden | OAuth im Browser oder Header | Werkzeuge mit Präfix `mcp__<name>__` |
| Himalaya-Skill | eigenes Agentenpostfach per IMAP/SMTP | Passwort oder App-Passwort in Himalaya | Terminalbefehle, Abruf per Cron |
| Google-Workspace-Skill | Gmail, Kalender, Drive | eigenes Google-Cloud-Projekt, OAuth | Skriptaufrufe |
| E-Mail-Gateway | Menschen schreiben Hermes, Hermes antwortet im Thread | Postfach-Zugangsdaten in `~/.hermes/.env` | eingehende 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.

## Voraussetzungen

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]

## Schritt 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:

   ```yaml
   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.

## Schreibaufrufe 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:

```yaml
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]

## Hermes 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]

## Die 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.

## Geplante 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.

## Hä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.

## Nächste Schritte

Wie die Rechte und Autonomiestufen zusammenspielen, steht unter [Berechtigungen und Autonomie](https://commandmail.app/de/docs/berechtigungen-und-autonomie). Ob ein eigener IMAP-MCP-Server oder ein gehosteter Dienst besser passt, erklärt [IMAP-MCP oder gehosteter MCP](https://commandmail.app/de/wissen/imap-mcp-oder-gehosteter-mcp). Weitere Agenten im Terminal beschreibt [E-Mail in Claude Code, Codex und Cursor](https://commandmail.app/de/anleitungen/e-mail-in-claude-code-codex-cursor).

[Command Mail kostenlos starten](https://commandmail.app/login?signup=1) 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)](https://hermes-agent.nousresearch.com/docs/user-guide/features/mcp), abgerufen am 2026-10-21
2. [Hermes Agent: MCP Config Reference](https://hermes-agent.nousresearch.com/docs/reference/mcp-config-reference), abgerufen am 2026-10-21
3. [Hermes Agent: OAuth over SSH / Remote Hosts](https://hermes-agent.nousresearch.com/docs/guides/oauth-over-ssh), abgerufen am 2026-10-21
4. [Hermes Agent: E-Mail-Gateway (IMAP/SMTP)](https://hermes-agent.nousresearch.com/docs/user-guide/messaging/email), abgerufen am 2026-10-21
5. [Hermes Agent: Give Your Agent Its Own Email Address (Himalaya)](https://hermes-agent.nousresearch.com/docs/guides/agent-email-address), abgerufen am 2026-10-21
6. [Hermes Agent: Google Workspace Skill](https://hermes-agent.nousresearch.com/docs/user-guide/skills/google-workspace), abgerufen am 2026-10-21
7. [Command Mail: llms.txt mit Tarifen, Rechten und Anbindung](https://commandmail.app/llms.txt), abgerufen am 2026-10-21
8. [NousResearch: Hermes Agent Releases](https://github.com/NousResearch/hermes-agent/releases), abgerufen am 2026-10-21

[^1]: [Hermes Agent: MCP (Model Context Protocol)](https://hermes-agent.nousresearch.com/docs/user-guide/features/mcp), abgerufen am 2026-10-21
[^2]: [Hermes Agent: MCP Config Reference](https://hermes-agent.nousresearch.com/docs/reference/mcp-config-reference), abgerufen am 2026-10-21
[^3]: [Hermes Agent: OAuth over SSH / Remote Hosts](https://hermes-agent.nousresearch.com/docs/guides/oauth-over-ssh), abgerufen am 2026-10-21
[^4]: [Hermes Agent: E-Mail-Gateway (IMAP/SMTP)](https://hermes-agent.nousresearch.com/docs/user-guide/messaging/email), abgerufen am 2026-10-21
[^5]: [Hermes Agent: Give Your Agent Its Own Email Address (Himalaya)](https://hermes-agent.nousresearch.com/docs/guides/agent-email-address), abgerufen am 2026-10-21
[^6]: [Hermes Agent: Google Workspace Skill](https://hermes-agent.nousresearch.com/docs/user-guide/skills/google-workspace), abgerufen am 2026-10-21
[^7]: [Command Mail: llms.txt mit Tarifen, Rechten und Anbindung](https://commandmail.app/llms.txt), abgerufen am 2026-10-21
[^8]: [NousResearch: Hermes Agent Releases](https://github.com/NousResearch/hermes-agent/releases), abgerufen am 2026-10-21

---

Command Mail: ein Postfach für dich und deinen KI-Agenten. Kostenlos starten: https://commandmail.app/login?signup=1 · Agent verbinden: https://commandmail.app/de/agents · MCP: https://commandmail.app/mcp
