MCP server for interacting with your email without requiring Microsoft Graph setup
README
MCP server for managing email archives stored as .eml files. Designed to work alongside a pair of Power Automate flows that automatically export Outlook emails to OneDrive as .eml files, giving AI assistants full read and write access to your inbox, sent items, and drafts through a structured set of tools.
inbox/, outbox/, and drafts/ sub-directories are created automatically on first runnpx eml-mcp /path/to/emails --from=you@example.com
claude mcp add eml -- npx -y eml-mcp /path/to/emails --from=you@example.com
</details>
<details>
<summary>GitHub Copilot</summary>
Add to ~/.copilot/mcp-config.json:
{
"mcpServers": {
"eml": {
"type": "stdio",
"command": "node",
"args": ["/absolute/path/to/eml-mcp/dist/server.js", "/path/to/emails", "--from=you@example.com"]
}
}
}
</details>
<details>
<summary>Codex CLI</summary>
Add to ~/.codex/config.toml:
[mcp_servers.eml]
command = "npx"
args = ["-y", "eml-mcp", "/path/to/emails", "--from=you@example.com"]
</details>
| Argument | Required | Description |
|---|---|---|
| <email-directory> | Yes | Root directory; inbox/, outbox/, and drafts/ sub-directories must exist inside |
| --db-path=<path> | No | SQLite index path (default: ~/.eml-mcp/index.db) |
| --from=<address> | No | From address for composed drafts (default: draft@eml-mcp) |
Each flow watches one Outlook folder and saves every email as an .eml file to the corresponding OneDrive directory. Set up the inbox flow first, then duplicate it for sent items — the only two values that change are noted in the second section.
**When a new email arrives (