How to Connect Multiple Outlook Accounts to Codex
Codex has no built-in Outlook connector, so reaching two mailboxes is a question of which MCP server you register. Authorize each Microsoft identity in Carly, add one MCP server, and the Codex CLI can query or act in whichever mailbox you name.
Codex is a coding agent. This setup is genuinely useful for scripted mailbox work from a terminal; recurring triage and follow-up belong in a Carly workflow that runs with nothing open.
Why one server beats one per mailbox
Wiring Outlook into Codex usually means a third-party MCP provider and your own OAuth app. That is tolerable for one mailbox. Three mailboxes across two employers means three server entries, three sets of Microsoft credentials, and no shared way to say which one you mean.
Carly holds each Microsoft identity as its own authorized connection and exposes them through a single server that addresses any of them by email address. A fourth tenant later is a Carly setting, not a config.toml edit.
On July 9, 2026 OpenAI folded the app directory into a plugin directory shared across ChatGPT and Codex. A plugin bundles apps, skills, and app templates; the MCP connection underneath is unchanged, and the 1,600-plus already-approved apps were migrated automatically.
1. Give each Outlook account a role
For example, all fictional:
| Address | Role |
|---|---|
fictional.iris.hoffman@outlook.com | Personal |
fictional.iris.hoffman@datadog.com | Main Company |
fictional.iris.hoffman@cloudflare.com | Client |
Use the role in ordinary queries and the full address before anything that changes a mailbox.
2. Connect every Outlook account to Carly
- Sign in at carlyassistant.com.
- Open carlyassistant.com/integrations.
- Find Outlook and click Connect.
- Sign in to the first Microsoft identity and approve access.
- Confirm the connected address in Carly.
Repeat for every additional mailbox, using a private window if Microsoft preselects the previous login. Verify the full address after each authorization.
Carly accepts personal Outlook.com addresses and Microsoft 365 work accounts alike, and each tenant approves independently, so one company’s administrator declining does not block the others.
3. Register Carly as an MCP server
codex mcp add carly --url https://carlyassistant.com/mcp/
Servers added through the CLI land in ~/.codex/config.toml at user scope. The hand-written equivalent:
[mcp_servers.carly]
type = "http"
url = "https://carlyassistant.com/mcp/"
A trusted project can keep its own .codex/config.toml if you would rather scope the server to a single repository.
Then authenticate:
codex mcp login carly
That opens the browser OAuth flow. Sign in to the Carly workspace holding the Outlook accounts. Codex supports OAuth and bearer tokens against remote HTTP MCP servers, so no secret needs to sit in a config file.
Verify before moving on:
codex mcp list
4. Test every mailbox read-only first
Start a new session so the tools load, then one mailbox per prompt:
In
fictional.iris.hoffman@datadog.com, list the sender and subject of the five newest unread messages. Do not change anything.
In
fictional.iris.hoffman@cloudflare.com, find the newest thread containing “SOC 2 evidence.” State the source account and do not draft.
Then a cross-account query:
Search the Datadog and Cloudflare example accounts for “renewal” in the last 30 days. Include the full source address in every row.
If no tools appear, start a fresh session. Codex loads a newly added server’s tools at session start rather than mid-session.
5. Reuse this routing prompt
Treat
fictional.iris.hoffman@outlook.comas Personal,fictional.iris.hoffman@datadog.comas Main Company, andfictional.iris.hoffman@cloudflare.comas Client. Always state the target address before changing data. Ask before sends, moves, deletes, or categories.
Then name the target in each action:
Draft the reply from
fictional.iris.hoffman@datadog.com. Do not send yet.
File this thread under Compliance in
fictional.iris.hoffman@cloudflare.comonly.
Send the approved reply from the mailbox that received the original message.
Leave approvals on while testing. A coding agent holding send rights on two employers’ mailboxes deserves a confirmation step.
Third-party Outlook MCP versus Carly in Codex
| Need | Per-account MCP server | Carly MCP server |
|---|---|---|
| Reach one mailbox | Yes | Yes |
| Reach several mailboxes | One server per account | One server, all accounts |
| Address a specific mailbox in a prompt | No shared convention | Yes, by email address |
| Register your own Microsoft app | Often required | No |
| Mix personal Outlook.com with work tenants | Usually separate setups | Yes, in one place |
| Add another tenant later | New server entry | No config change |
| Keep the work running outside Codex | No | Yes |
Carly turns several Microsoft logins into one addressable mail toolset for Codex. Carly offers free Zapier-style workflows; AI agents start at $35/month.
Quick fixes when a mailbox does not appear
| Problem | Fix |
|---|---|
| Tools do not show up | Start a new Codex session after adding the server |
codex mcp login never completes | Finish the browser OAuth flow, then rerun codex mcp list |
| A tenant blocks authorization | Ask that tenant’s Microsoft 365 administrator to approve Carly |
| Microsoft connected the same mailbox twice | Remove the duplicate and reconnect from a private window |
| Codex queries the wrong mailbox | Use the full address and require source attribution |
Frequently asked questions
Does Codex have a native Outlook integration?
No. Codex reaches Outlook through the Model Context Protocol, so what it can do depends on the MCP server you register.
How many Outlook accounts can this reach?
As many as you authorize in Carly. Codex talks to one server, so the mailbox count is a Carly setting.
Can I mix a personal Outlook.com address with work accounts?
Yes. Connect each Microsoft identity to Carly and label every address with a clear Personal or Work role.
Related: Codex + Outlook · Multiple Gmail accounts in Codex · Multiple Outlook accounts in ChatGPT · What is MCP · Carly’s Outlook integration
Ready to automate your busywork?
Carly schedules, researches, and briefs you—so you can focus on what matters.
See what people say
"Before Carly, I relied on a Calendly link, but the whole process felt impersonal and not very professional. Carly changed that by handling all the back-and-forth, so I'm no longer stuck in endless email threads trying to line up schedules.
Now Carly reaches out to candidates, shares my real-time availability, lets them pick a slot, then sends a Zoom link and drops it straight into my calendar. She sends reminders to both of us before each call, which has significantly reduced no-shows and last-minute confusion.
On top of scheduling, Carly acts like a full executive assistant, sending me my schedule the night before so I can prepare for each call. It reminds me of the old x.ai assistant, but Carly is noticeably smarter, faster, and better suited to my healthcare recruitment business."


