A developer desk with two monitors, working across several Outlook mailboxes from a terminal

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:

AddressRole
fictional.iris.hoffman@outlook.comPersonal
fictional.iris.hoffman@datadog.comMain Company
fictional.iris.hoffman@cloudflare.comClient

Use the role in ordinary queries and the full address before anything that changes a mailbox.

2. Connect every Outlook account to Carly

  1. Sign in at carlyassistant.com.
  2. Open carlyassistant.com/integrations.
  3. Find Outlook and click Connect.
  4. Sign in to the first Microsoft identity and approve access.
  5. 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.com as Personal, fictional.iris.hoffman@datadog.com as Main Company, and fictional.iris.hoffman@cloudflare.com as 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.com only.

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

NeedPer-account MCP serverCarly MCP server
Reach one mailboxYesYes
Reach several mailboxesOne server per accountOne server, all accounts
Address a specific mailbox in a promptNo shared conventionYes, by email address
Register your own Microsoft appOften requiredNo
Mix personal Outlook.com with work tenantsUsually separate setupsYes, in one place
Add another tenant laterNew server entryNo config change
Keep the work running outside CodexNoYes

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

ProblemFix
Tools do not show upStart a new Codex session after adding the server
codex mcp login never completesFinish the browser OAuth flow, then rerun codex mcp list
A tenant blocks authorizationAsk that tenant’s Microsoft 365 administrator to approve Carly
Microsoft connected the same mailbox twiceRemove the duplicate and reconnect from a private window
Codex queries the wrong mailboxUse 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."

Gus Ibrahim, Founder & Director, IHR