Every drive you own. One safe connection for your AI.

A guarded file-and-mail layer you host yourself. Every account sits under its own label, the server enforces the rules for each one, and files can be copied, moved and searched between accounts. Google Drive and Gmail, with OneDrive and Dropbox in beta.

Do you need this?

You need Crossdrive if any of these is true:

  • Your AI assistant does not let you connect several accounts. Claude is rolling out support for more than one Gmail and Drive account slowly, so many people do not have it yet; ChatGPT and other assistants may not offer it at all. Crossdrive works today, in any MCP client.
  • You want to connect more than three accounts. There is no fixed limit: connect every Google account you use, each under its own label, plus OneDrive or Dropbox (beta, not yet tested on live accounts).
  • You want rules per account, enforced on the server: read-only accounts, mail off, draft or send per account, trash-only delete, dry run, undo and an audit log.
  • You want to work between accounts: copy or move files and folder trees, find duplicates across accounts, one search that names any account that failed.
  • You want your own hosting, not tied to one AI vendor: tokens in your own storage, and any MCP client can connect (only the Claude desktop app verified so far).

If your assistant already lets you connect all your accounts, and you only need to read and draft across a few of them, the built-in connector is simpler: it needs no setup.

What it does

Every account under a label

Connect your Google accounts and give each a label. Every request names its account, as in work:/Finance/2026 or personal:/Taxes, so nothing is ever done in whichever account happens to be connected.

Between accounts

Copy or move files and whole folder trees from one account to another, with the source trashed only after a move is verified. Find duplicates across accounts, and search every account at once with any account that failed named. Between Google Drive, OneDrive and Dropbox this is beta and not yet tested against live accounts.

Mail mode per account

Each Gmail account is set to off, draft or send on its own, so a work account can stay draft-only while another may send. New accounts start at draft. Search, read, label and save attachments to the right folder.

Not tied to one AI app

It is a remote MCP server with OAuth, meant for any client that can add one, and your tokens stay in your own storage. So far only the Claude desktop app has been verified as a client; Claude Code, ChatGPT and others are untested.

Safety is in the code

These rules are enforced by the server, not by a prompt. An assistant that misreads a request still cannot get past them.

Trash only

There is no permanent-delete call in the code. Deleting means moving to the provider's trash, where you can restore it.

Read-only accounts

Mark any account read-only and the server rejects every write to it, whatever the assistant asks for. Copying out of it streams the files, so not even a temporary permission is added.

Dry run, then undo

Most writes can be previewed with a dry run first. Moves, renames and trashes are logged with an id that undo can roll back.

Audit log

Each write is recorded with time, client, account, action and file ids; mail entries add recipients and subject. File contents and mail bodies are not logged.

Per-client consent

No client gets a token until you sign in and approve it. Clients that should only look can be given read-only access.

Content is data

Text inside files and emails is returned as untrusted data. Instructions found in a document never become tool calls on their own.

Your instance, your keys

  • You deploy it to your own Vercel account.
  • It signs in to Google with your own Google Cloud project and OAuth client.
  • Refresh tokens are encrypted at rest (AES-256-GCM) in storage you own.
  • No third-party service sits between your assistant and your files. The code is MIT licensed.

Connect an assistant

First connect your cloud accounts on the connect page: sign in there to manage this instance, then connect each account under a label. Signing in alone connects nothing.

Then add this URL as a custom connector (remote MCP server) in your client. It will ask you to sign in and approve access.

https://drive.compasscto.com/api/mcp
Connect cloud accountsStreamable HTTP · OAuth 2.1
Crossdrive