Gmail and Outlook mailboxes reaching a Cursor agent through one Carly MCP server

How to Connect Multiple Email Accounts to Cursor

If your mail is split across Gmail and Outlook, Cursor’s plugin catalog cannot cover it at any account count: there are first-party Google Workspace plugins and no Microsoft mail plugin at all. One Carly MCP server holds every mailbox on both providers and lets a Cursor agent address any of them by name. Calendars on both sides come with it.

What one Cursor session can do afterwards

  • Search a personal Gmail and a work Outlook in the same prompt.
  • Compare a thread in one employer’s mailbox against a client’s.
  • Pull every message about a failed deploy across all connected accounts at once.
  • Draft or send from the exact address you choose.
  • Label, flag, move, or archive in the correct account.
  • Read a client mailbox while writing only to your own.

Nothing is merged into a pooled inbox. Each account stays individually addressable by its full address, and every result names where it came from.

The provider split is the real limit, not the account count

Most “multiple accounts” articles are about a ceiling of one: a connector that authorizes a single identity, where a second login replaces the first. Cursor’s situation is lopsided rather than capped, and the asymmetry is what trips people up.

On the Google side there is real coverage. Cursor shipped Google Workspace plugins on Aug 3, 2026: Gmail, Google Drive, and Google Calendar, with the Gmail plugin able to “search and read mail, draft and send messages, apply labels and manage threads.” It even has an accounts affordance at Settings → Plugins → Gmail → Accounts, though an open bug report from Aug 14, 2026 describes a second Google account showing “Added” and then reverting to “Authorize” within a couple of seconds.

On the Microsoft side there is nothing to have a bug in. The marketplace is curated and manually reviewed, and it carries no Outlook, Exchange, or Microsoft 365 mail plugin; the Microsoft entries are Azure and Dataverse. So the mixed setup that most working people actually have, personal Gmail plus a Microsoft 365 work account, has no plugin-based answer regardless of how many slots the Gmail plugin turns out to hold.

That is the gap Carly closes. Gmail and Outlook are both first-class connections inside one account, exposed to Cursor through one server, addressable by full email address.

Where Cursor Automations stop

Cursor goes further than most coding agents on unattended work, so it is worth stating exactly where the line falls. Automations run cloud agents in the background and fire on events, not only on a schedule: GitHub, GitLab, Slack, webhooks, and Linear are documented triggers, and an automation can call MCP tools.

Mail is not on that list on either provider. Nothing starts because a message arrived or a client replied.

MCP has no trigger mechanism and no scheduler. Its own Triggers and Events working group opens by conceding that clients learn about server-side changes by polling, and that work is still listed as on the horizon rather than shipped.

So Cursor is the place to ask questions about mail, and Carly is the place to put work that should happen whether or not anyone is at the keyboard.

1. Give each mailbox a role

Using fictional addresses across both providers:

AddressProviderRole
fictional.priya.natarajan@gmail.comGmailPersonal
fictional.priya.natarajan@stripe.comGoogle WorkspaceMain Company
fictional.priya.natarajan@cloudflare.comMicrosoft 365Client
fictional.priya.natarajan@outlook.comOutlook.comSide project

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

2. Connect every mailbox to Carly

  1. Sign in at carlyassistant.com.
  2. Open carlyassistant.com/integrations.
  3. Click Connect on Gmail or Outlook, whichever matches the account.
  4. Authorize the identity and confirm the address Carly reports back.
  5. Repeat for every other mailbox, on either provider, in any order.

Choose Use another account if Google preselects a previous login, and use a private window if Microsoft does the same. Verify the full address after each authorization before adding the next.

Google Workspace domains and Microsoft 365 tenants each approve independently. If one needs administrator review, ask that administrator to approve the connection; the other accounts are unaffected while you wait.

3. Add Carly as an MCP server in Cursor

Cursor reads MCP servers from ~/.cursor/mcp.json for every project, or .cursor/mcp.json inside a single repository:

{
  "mcpServers": {
    "carly": {
      "url": "https://carlyassistant.com/mcp/"
    }
  }
}

Then open Cursor Settings, find the Carly server, and complete the OAuth flow in the browser. Cursor supports OAuth against remote MCP servers, so nothing secret goes in the file and you register no OAuth application of your own on either provider. Sign in to the Carly workspace holding the mailboxes.

Confirm the server is connected and its tools are listed. Reload the window if they do not appear.

4. Test every mailbox read-only first

One account per prompt to start, deliberately crossing providers:

In fictional.priya.natarajan@stripe.com, list the sender and subject of the five newest unread messages. Do not change anything.

In fictional.priya.natarajan@cloudflare.com, find the newest thread containing “renewal.” State the source mailbox and do not draft.

Then the query that no plugin setup can answer:

Search the Stripe Gmail account and the Cloudflare Microsoft account for “incident” from the last 30 days. Include the full source address in every row.

Every row should name its account. If attribution is missing, require it in the prompt and re-run before letting the agent write anything.

5. Reuse this routing prompt

Treat fictional.priya.natarajan@gmail.com as Personal, fictional.priya.natarajan@stripe.com as Main Company, fictional.priya.natarajan@cloudflare.com as Client, and fictional.priya.natarajan@outlook.com as Side project. Always state the target address before changing data. Ask before sends, moves, deletes, labels, or flags.

Then name the target on each action:

Draft the reply from fictional.priya.natarajan@stripe.com. Do not send yet.

Move that thread to the Renewals folder in fictional.priya.natarajan@cloudflare.com only.

Send the approved reply from the account that received the original thread.

Mixed-provider setups are where misrouting is easiest, because the two mailboxes rarely look alike in a result list. Keep approvals on until the attribution is reliably correct.

Plugins and per-account servers versus Carly in Cursor

NeedCursor pluginsOne MCP server per mailboxCarly MCP server
Reach one Gmail inboxYesYesYes
Reach one Outlook mailboxNo plugin existsYesYes
Reach several accounts on one providerReported as unreliableOne entry eachYes
Reach Gmail and Outlook togetherNoTwo stacks to maintainYes, one connection
Address a specific account in a promptNo shared conventionNo shared conventionYes, by email address
Register OAuth apps yourselfNoUsually requiredNo
Keep the work running with Cursor closedNoNoYes

Carly gives Cursor one account-aware mail toolset spanning both providers. Carly offers free Zapier-style workflows; AI agents start at $35/month.

Quick fixes when a mailbox does not appear

ProblemFix
Carly’s tools do not show upReload the Cursor window after adding the server
The server sits unauthenticatedOpen Cursor Settings and complete the OAuth flow, then reload
The same identity connected twiceReconnect using Use another account or a private window, then confirm in Carly
A domain or tenant blocks authorizationAsk that administrator to approve Carly, then reauthorize
Cursor queries the wrong mailboxUse the full address and require source attribution in the prompt
Results do not say which account they came fromAdd the attribution requirement to the routing prompt above

Frequently asked questions

Can Cursor use Gmail and Outlook at the same time?

Through plugins, no, because no Outlook or Microsoft 365 mail plugin exists in the marketplace. Through one Carly MCP server, yes: both providers are ordinary connections inside the same Carly account and both are reachable in a single prompt.

How many email accounts can this reach?

As many as you authorize in Carly, in any mix of Gmail, Google Workspace, Outlook.com, and Microsoft 365. Cursor connects to one server, so the count is a Carly setting rather than a Cursor one.

Does the Gmail plugin hold two Google accounts?

There is an Accounts list in the plugin, so it is something you can attempt, but an open bug report describes the second account failing to persist. Treat it as unsettled and use the Carly server if you depend on it.

Should I use Cursor for inbox work?

For mail questions alongside code, it fits. Recurring triage, drafting, and follow-up belong in a Carly workflow that runs without a session open and can start when mail actually arrives.


Related: Multiple Gmail accounts in Cursor · Multiple Outlook accounts in Cursor · Best AI assistants for multiple email accounts · Cursor alternatives · What is MCP · Carly’s Gmail 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