---
title: "Connected mailboxes"
description: "Mailboxes that stay at Gmail or another provider and are worked from here."
url: "https://openemail.uk/docs/mcp/tools/connected-mailboxes"
area: "MCP server"
category: "Tools"
---

# Connected mailboxes

Mailboxes that stay at Gmail or another provider and are worked from here.

## Connected mailboxes tools

| Tool | What it does |
| --- | --- |
| listConnectedMailboxes | The mailboxes connected to the workspace, newest first: the address of each, its provider, whether it syncs and when it last did. |
| getConnectedMailbox | One connected mailbox by its id, with what went wrong if it stopped syncing. |
| getConnectedMailboxSettings | Look up the mail servers of an address and whether it takes an app password, a password or a Microsoft sign-in. Nothing is connected. |
| updateConnectedMailbox | Pause or resume a connected mailbox, or rename its address. A chat asks first unless you asked for it. |
| syncConnectedMailbox | Sync a connected mailbox now instead of at the next interval. A chat asks first unless you asked for it. |
| disconnectConnectedMailbox | Stop syncing and sending through a mailbox and remove its address. The mail already here stays, and nothing changes at the provider. In the app’s chat it always asks first. |

> Reading needs `threads:read`, and syncing `threads:write`. Pausing, renaming and disconnecting need `domains:write`. A client limited to some addresses sees only the mailboxes of those addresses.

> Connecting a mailbox takes its app password, which never passes through a tool: the person enters it in the app, or a script sends it with `POST /connected-mailboxes`. A new password after the old one stopped working goes the same way.

## Reference

### `listConnectedMailboxes`

The outside mailboxes connected to this workspace (Gmail, Outlook, Yahoo, iCloud and other accounts), newest first, as Settings, Connected mailboxes lists them: the address, the provider, whether it is syncing, paused or needs its sign-in again, and when it last synced. Mail arrives from each one about once a minute, and what a person does here (read, archive, delete, spam) is done there too. A member sees the mailboxes they reach.

- Scopes: `threads:read`.
- The app's assistant runs it without asking.
- Toolkit: `workspace`.

**Inputs**

Takes no input.

Also available in: API [`GET /connected-mailboxes`](https://openemail.uk/docs/api/reference/connected-mailboxes#get-connected-mailboxes); TypeScript [`nextmail.connectedMailboxes.list()`](https://openemail.uk/docs/sdk/reference/connected-mailboxes#list); Python [`connected_mailboxes.list()`](https://openemail.uk/docs/python/reference/connected-mailboxes#list); Ruby [`connected_mailboxes.list`](https://openemail.uk/docs/ruby/reference/connected-mailboxes#list); PHP [`connectedMailboxes->list`](https://openemail.uk/docs/php/reference/connected-mailboxes#list); Go [`ConnectedMailboxes.List`](https://openemail.uk/docs/go/reference/connected-mailboxes#list); Java [`connectedMailboxes().list`](https://openemail.uk/docs/java/reference/connected-mailboxes#list); C# [`ConnectedMailboxes.ListAsync`](https://openemail.uk/docs/csharp/reference/connected-mailboxes#list).

### `getConnectedMailbox`

One connected mailbox by its id: its address, provider, status, servers and last sync.

- Scopes: `threads:read`.
- The app's assistant runs it without asking.
- Toolkit: `workspace`.

**Inputs**

- `id` (`string`, required, 1 to 64 characters)

Also available in: API [`GET /connected-mailboxes/{id}`](https://openemail.uk/docs/api/reference/connected-mailboxes#get-connected-mailboxes-id); TypeScript [`nextmail.connectedMailboxes.get()`](https://openemail.uk/docs/sdk/reference/connected-mailboxes#get); Python [`connected_mailboxes.get()`](https://openemail.uk/docs/python/reference/connected-mailboxes#get); Ruby [`connected_mailboxes.get`](https://openemail.uk/docs/ruby/reference/connected-mailboxes#get); PHP [`connectedMailboxes->get`](https://openemail.uk/docs/php/reference/connected-mailboxes#get); Go [`ConnectedMailboxes.Get`](https://openemail.uk/docs/go/reference/connected-mailboxes#get); Java [`connectedMailboxes().get`](https://openemail.uk/docs/java/reference/connected-mailboxes#get); C# [`ConnectedMailboxes.GetAsync`](https://openemail.uk/docs/csharp/reference/connected-mailboxes#get).

### `getConnectedMailboxSettings`

The servers and the kind of sign-in an address needs before it can be connected: the provider, the incoming IMAP server and the outgoing SMTP server. The connection itself needs a password and happens in the app or over the REST API, never through a tool. An Outlook.com or Microsoft 365 address connects in the app with a Microsoft sign-in.

- Scopes: `domains:write`.
- The app's assistant runs it without asking.
- Toolkit: `workspace`.

**Inputs**

- `email` (`string`, required, 3 to 320 characters)

Also available in: API [`GET /connected-mailboxes/settings`](https://openemail.uk/docs/api/reference/connected-mailboxes#get-connected-mailboxes-settings); TypeScript [`nextmail.connectedMailboxes.discover()`](https://openemail.uk/docs/sdk/reference/connected-mailboxes#discover); Python [`connected_mailboxes.discover()`](https://openemail.uk/docs/python/reference/connected-mailboxes#discover); Ruby [`connected_mailboxes.discover`](https://openemail.uk/docs/ruby/reference/connected-mailboxes#discover); PHP [`connectedMailboxes->discover`](https://openemail.uk/docs/php/reference/connected-mailboxes#discover); Go [`ConnectedMailboxes.Discover`](https://openemail.uk/docs/go/reference/connected-mailboxes#discover); Java [`connectedMailboxes().discover`](https://openemail.uk/docs/java/reference/connected-mailboxes#discover); C# [`ConnectedMailboxes.DiscoverAsync`](https://openemail.uk/docs/csharp/reference/connected-mailboxes#discover).

### `updateConnectedMailbox`

Pause or resume a connected mailbox, or rename how its address shows. A paused mailbox neither syncs nor sends. A new password, or a new Microsoft sign-in for an Outlook mailbox, is given in the app, never through a tool. A chat asks first unless the person asked for it.

- Scopes: `domains:write`.
- The app's assistant asks first unless you asked for it.
- Toolkit: `workspace`.

**Inputs**

- `id` (`string`, required, 1 to 64 characters)
- `paused` (`boolean`)
- `label` (`string`, nullable, up to 120 characters)

Also available in: API [`PATCH /connected-mailboxes/{id}`](https://openemail.uk/docs/api/reference/connected-mailboxes#patch-connected-mailboxes-id); TypeScript [`nextmail.connectedMailboxes.update()`](https://openemail.uk/docs/sdk/reference/connected-mailboxes#update); Python [`connected_mailboxes.update()`](https://openemail.uk/docs/python/reference/connected-mailboxes#update); Ruby [`connected_mailboxes.update`](https://openemail.uk/docs/ruby/reference/connected-mailboxes#update); PHP [`connectedMailboxes->update`](https://openemail.uk/docs/php/reference/connected-mailboxes#update); Go [`ConnectedMailboxes.Update`](https://openemail.uk/docs/go/reference/connected-mailboxes#update); Java [`connectedMailboxes().update`](https://openemail.uk/docs/java/reference/connected-mailboxes#update); C# [`ConnectedMailboxes.UpdateAsync`](https://openemail.uk/docs/csharp/reference/connected-mailboxes#update).

### `syncConnectedMailbox`

Ask a connected mailbox to sync now instead of at its next minute.

- Scopes: `threads:write`.
- The app's assistant asks first unless you asked for it.
- Toolkit: `workspace`.

**Inputs**

- `id` (`string`, required, 1 to 64 characters)

Also available in: API [`POST /connected-mailboxes/{id}/sync`](https://openemail.uk/docs/api/reference/connected-mailboxes#post-connected-mailboxes-id-sync); TypeScript [`nextmail.connectedMailboxes.sync()`](https://openemail.uk/docs/sdk/reference/connected-mailboxes#sync); Python [`connected_mailboxes.sync()`](https://openemail.uk/docs/python/reference/connected-mailboxes#sync); Ruby [`connected_mailboxes.sync`](https://openemail.uk/docs/ruby/reference/connected-mailboxes#sync); PHP [`connectedMailboxes->sync`](https://openemail.uk/docs/php/reference/connected-mailboxes#sync); Go [`ConnectedMailboxes.Sync`](https://openemail.uk/docs/go/reference/connected-mailboxes#sync); Java [`connectedMailboxes().sync`](https://openemail.uk/docs/java/reference/connected-mailboxes#sync); C# [`ConnectedMailboxes.SyncAsync`](https://openemail.uk/docs/csharp/reference/connected-mailboxes#sync).

### `disconnectConnectedMailbox`

Disconnect an outside mailbox. It stops syncing and can no longer send from here; the mail already here stays, and nothing is deleted at the provider. A chat always asks first.

- Scopes: `domains:write`.
- The app's assistant always asks first.
- Toolkit: `workspace`.

**Inputs**

- `id` (`string`, required, 1 to 64 characters)

Also available in: API [`DELETE /connected-mailboxes/{id}`](https://openemail.uk/docs/api/reference/connected-mailboxes#delete-connected-mailboxes-id); TypeScript [`nextmail.connectedMailboxes.disconnect()`](https://openemail.uk/docs/sdk/reference/connected-mailboxes#disconnect); Python [`connected_mailboxes.disconnect()`](https://openemail.uk/docs/python/reference/connected-mailboxes#disconnect); Ruby [`connected_mailboxes.disconnect`](https://openemail.uk/docs/ruby/reference/connected-mailboxes#disconnect); PHP [`connectedMailboxes->disconnect`](https://openemail.uk/docs/php/reference/connected-mailboxes#disconnect); Go [`ConnectedMailboxes.Disconnect`](https://openemail.uk/docs/go/reference/connected-mailboxes#disconnect); Java [`connectedMailboxes().disconnect`](https://openemail.uk/docs/java/reference/connected-mailboxes#disconnect); C# [`ConnectedMailboxes.DisconnectAsync`](https://openemail.uk/docs/csharp/reference/connected-mailboxes#disconnect).
