Iris MCP Server
by superangrymonkeyio.github.SuperAngryMonkey/irisv0.3.0
Microsoft 365 mail MCP: reads mail, drafts into Outlook; sending is opt-in (IRIS_ENABLE_SEND).
context tax
queued
security
queued
cold start
queued
freshness
Active12d ago
Install Iris MCP server
Install in Claude Code
claude mcp add iris-superangrymonkey -e IRIS_CLIENT_ID='<iris-client-id>' -- uvx iris-mcpInstall in Cursor
{
"mcpServers": {
"iris-superangrymonkey": {
"command": "uvx",
"args": [
"iris-mcp"
],
"env": {
"IRIS_CLIENT_ID": "<iris-client-id>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project).
Install in Claude Desktop
{
"mcpServers": {
"iris-superangrymonkey": {
"command": "uvx",
"args": [
"iris-mcp"
],
"env": {
"IRIS_CLIENT_ID": "<iris-client-id>"
}
}
}
}Settings → Developer → Edit Config (claude_desktop_config.json), then restart.
Install in VS Code
{
"servers": {
"iris-superangrymonkey": {
"type": "stdio",
"command": "uvx",
"args": [
"iris-mcp"
],
"env": {
"IRIS_CLIENT_ID": "<iris-client-id>"
}
}
}
}Add to .vscode/mcp.json in your workspace.
Install in Windsurf
{
"mcpServers": {
"iris-superangrymonkey": {
"command": "uvx",
"args": [
"iris-mcp"
],
"env": {
"IRIS_CLIENT_ID": "<iris-client-id>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json.
Configuration
| Variable | Required | Secret | Description |
|---|---|---|---|
| IRIS_CLIENT_ID | yes | — | Application (client) ID of YOUR OWN Entra app registration. There is no shared app; you register one. |
| IRIS_TENANT_ID | — | — | Directory (tenant) ID. Defaults to 'organizations'. |
| IRIS_DRAFT_FOLDER | — | — | Mail folder drafts are written to, created on first use. Defaults to 'AI Drafts'. Empty string uses Drafts. |
| IRIS_ALLOWLIST | — | — | Path to a recipient allowlist file. If absent or empty, all recipients are permitted. |
| IRIS_DISABLE_READ | — | — | Set to '1' to unregister the read tools (list/search/get messages and threads) for a drafts-only surface. |
| IRIS_ENABLE_SEND | — | — | Set to '1' to enable sending. ALSO requires Mail.Send granted on the Entra app and a fresh sign-in. Off by default; when unset, iris cannot send and the send tool is not registered. |
Freshness
Active — last maintenance signal 12d ago. The newest of the signals below sets the band.
Last commit (default branch)
2026-09-27 · 12d ago · GitHub
Latest release
2026-09-25 · 14d ago · GitHub · v0.3.0
Package published
no data · npm/PyPI
Registry entry updated
2026-09-25 · 14d ago · official registry · v0.3.0
FAQ
›How do I install the Iris MCP server in Claude Code?
Run: claude mcp add iris-superangrymonkey -e IRIS_CLIENT_ID='<iris-client-id>' -- uvx iris-mcp. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.
›Does Iris require an API key?
Yes. It expects IRIS_CLIENT_ID.
›Can I use Iris as a remote (hosted) MCP server?
No hosted endpoint is published; it runs locally over stdio.
›Is Iris in the official MCP registry?
Yes, as io.github.SuperAngryMonkey/iris.
Alternatives to Iris
Other email MCP servers.