iris
iris
Ein Microsoft 365-Mailserver für KI-Agenten, die keine E-Mail senden können.
Nicht „will nicht“. Kann nicht. iris fordert den delegierten Graph-Bereich Mail.ReadWrite an und niemals Mail.Send. Das Zugriffstoken, das es hält, hat keine Fähigkeit, eine Nachricht zu übertragen, also kann keine Aufforderung, kein Jailbreak und kein Fehler in diesem Code eine Nachricht versenden. Es schreibt Entwürfe in einen Ordner in Ihrem Postfach. Sie öffnen Outlook und drücken Senden.
Das ist das gesamte Design. Alles andere ist Detail.
Warum diese Form
Die übliche Sorge, einem Agenten Zugriff auf Ihr Postfach zu geben, ist, dass er etwas sendet, das Sie nicht genehmigt haben – an die falsche Person, mit dem falschen Ton, oder weil jemand ihn dazu überredet hat. Die übliche Antwort ist eine Bestätigungsabfrage, die eine Leitplanke ist: Code, der um Erlaubnis bittet, und Code kann umgangen werden.
iris entfernt stattdessen die Fähigkeit. Microsoft Graph wird einen Sendeversuch mit diesem Token ablehnen, weil der von Ihnen genehmigte Zustimmungsbildschirm diese Berechtigung nie enthalten hat. Die Sicherheitsgrenze liegt bei Microsoft, nicht bei diesem Programm, und sie gilt auch dann, wenn dieses Programm falsch liegt.
Der Kompromiss ist real: Ein Mensch ist bei jeder Nachricht im Prozess, konstruktionsbedingt. Wenn Sie autonomes Senden möchten, ist iris das falsche Werkzeug.
Related MCP server: mcp-outlook-mail
Installation
uvx iris-mcp # run without installing
pip install iris-mcpPython 3.10+.
Einrichtung
Sie müssen Ihre eigene Entra-Anwendung registrieren. Es gibt keine gemeinsame App-Registrierung und keinen gehosteten Dienst – iris kommuniziert direkt von Ihrem Rechner mit Ihrem Mandanten. Das ist beabsichtigt: Eine gemeinsame App würde bedeuten, der Client-ID einer anderen Person mit Zugriff auf Ihre E-Mails zu vertrauen.
Entra Admin Center → App-Registrierungen → Neue Registrierung. Ein einzelner Mandant ist in Ordnung. Keine Redirect-URI erforderlich.
Authentifizierung → Einstellungen → Öffentliche Clientflüsse zulassen aktivieren. Die Gerätecode-Anmeldung benötigt dies. Es wird nirgends ein Clientgeheimnis verwendet.
API-Berechtigungen → Microsoft Graph → Delegiert →
Mail.ReadWritehinzufügen. Fügen Sie nichts anderes hinzu. Fügen SieMail.Sendnicht hinzu – wenn es vorhanden ist, ist die obige Garantie ungültig.Kopieren Sie die Anwendungs- (Client-) ID und die Verzeichnis- (Mandanten-) ID. Keine davon ist ein Geheimnis.
Fügen Sie dann iris zu Ihrem MCP-Client hinzu:
{
"mcpServers": {
"iris": {
"command": "uvx",
"args": ["iris-mcp"],
"env": {
"IRIS_CLIENT_ID": "<application client id>",
"IRIS_TENANT_ID": "<directory tenant id>"
}
}
}
}Melden Sie sich einmal an: Rufen Sie iris_login auf, öffnen Sie die URL, geben Sie den Code ein, und rufen Sie dann iris_login_finish auf. Der Token-Cache wird neben dem Server geschrieben, Modus 600.
Werkzeuge
Tool | Was es tut |
| Startet die Gerätecode-Anmeldung, gibt eine URL und einen Code zurück |
| Schließt die Anmeldung ab; kann sicher wiederholt aufgerufen werden, während Sie den Code eingeben |
| Wer angemeldet ist, welche Bereiche und ob Graph erreichbar ist |
| Schreibt einen Entwurf (an/cc/bcc, Betreff, Text oder HTML, optional Antwort-an) |
| Listet auf, was im Entwurfsordner wartet |
| Überarbeitet einen Entwurf an Ort und Stelle |
| Löscht einen Entwurf; erfordert |
Wohin Entwürfe gehen
In einen dedizierten Postfachordner der obersten Ebene, standardmäßig AI Drafts (IRIS_DRAFT_FOLDER). Er wird bei der ersten Verwendung erstellt. Setzen Sie die Variable auf eine leere Zeichenfolge, um stattdessen den normalen Entwürfe-Ordner zu verwenden.
Dies sind echte Entwürfe und Outlook sendet sie normal – aber weil sie in einem eigenen Ordner liegen, erscheinen sie nicht in der Entwürfe-Ansicht. Das ist der Punkt: Von Agenten geschriebene E-Mails liegen an einem Ort, an dem Sie hingehen und nachsehen müssen, statt mit Ihren eigenen halbfertigen Nachrichten vermischt zu sein.
Eine erwähnenswerte Besonderheit: createReply von Graph legt eine Antwort immer zuerst in Entwürfe ab, also verschiebt iris sie danach, und eine Verschiebung weist eine neue Nachrichten-ID zu.
Weitere Steuerungen
Empfänger-Whitelist –
recipients.allow, eine Adresse oder Domäne pro Zeile. Fehlt oder leer bedeutet, dass alle Empfänger erlaubt sind. Weisen SieIRIS_ALLOWLISTanderswo zu, wenn Sie das bevorzugen.Kill-Schalter – erstellen Sie eine
DISABLED-Datei neben dem Server oder setzen SieIRIS_DISABLED=1, und jedes Werkzeug verweigert die Arbeit.Audit-Log – jeder Aufruf wird an
audit.logangehängt (IRIS_AUDIT_LOG).
Grenzen
Keine Anhänge. Keine freigegebenen oder delegierten Postfächer – nur /me. Keine Ordner-Verschachtelung über parentFolderId. Die Anmeldung erfolgt als delegierter Gerätecode als öffentlicher Client, sodass der Schadensradius genau ein Postfach ist: Ihres.
Sicherheit
Die Kein-Senden-Garantie, wie Sie sie selbst überprüfen können, und – genauso wichtig – was iris mit Mail.ReadWrite erreichen kann: siehe SECURITY.md.
Lizenz
MIT – siehe LICENSE.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseCqualityDmaintenanceEnables AI agents to create Gmail drafts safely using the Gmail API, without sending emails.11MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to interact with Microsoft 365 Outlook Mail, allowing email operations via natural language.10MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to manage Microsoft Outlook emails through the Microsoft Graph API, supporting operations like listing, reading, sending, and moving emails.MIT
- AlicenseAqualityAmaintenanceEnables AI agents to read and manage Microsoft 365/Outlook email and calendar, with destructive actions (send email, create event) requiring human approval.8MIT
Related MCP Connectors
Authenticated email gateway for AI agents — per-agent inboxes, HITL approval, SPF/DKIM verified.
Authenticated email gateway for AI agents — per-agent inboxes, HITL approval, SPF/DKIM verified.
Governed email for AI agents (Mailbuttons / mbag.ai): sandbox inboxes, policy gate, audit log.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/SuperAngryMonkey/iris'
If you have feedback or need assistance with the MCP directory API, please join our Discord server