gmail multi-comptes

google

gmail multi-comptes.

gmail piloté par agent : recherche avec la syntaxe gmail native, lecture complète des messages, envoi, réponse en thread, drafts, archivage, corbeille. plusieurs comptes google connectés par utilisateur — l'agent choisit le compte émetteur.

ajouter à otoauth : oauth google (per-user)prefix : gmail_*

setup & usage

⚠ authorize Gmail on your Google account

From this card, click connect: Google asks you to authorize Gmail only (scope gmail.modify) on the account you choose. The Google account itself (address, token) is carried by the Google Account connector — one account can authorize several services, one service at a time, without re-authorizing the others.

  • multiple Google accounts: each tool acts on the one the call names with _account=<email> (the tools' account=<email> is the same choice — two different addresses are refused), otherwise the one the project pins, otherwise the default; an unknown address is refused, never replaced by another, and the response names the account that served (_account); google_accounts tells you which ones have authorized Gmail
  • an account that has not authorized Gmail is refused by the tools, naming this card — come back here to authorize it
  • ▸ search, read, draft, send

    Two tools, under the chosen account: gmail(op=search|get|attachment|drafts|draft|accounts) reads or prepares a draft — nothing leaves, nothing is deleted; gmail_act(op=send|archive|trash) acts, and your client asks you to confirm it.

  • "find this week's unread emails" → gmail(query="is:unread newer_than:7d"); "archive the newsletters" → gmail_act(op="archive", message_ids=[…])
  • "draft a reply to this email" → gmail(op="draft", reply_to="…", body="…"); "send it" → gmail_act(op="send", draft_id="…"), the draft as it stands
  • composing (gmail op=draft, or gmail_act op=send with a full message) appends the sending account's Gmail signature (after --), like the web client — the Gmail API never does it on its own. sign=False composes without it; the response reports signature: appended, none_configured or disabled
  • "read the .xlsx spreadsheet attached to this email, devis sheet" — an attachment (op=attachment) comes back as CSV per sheet, truncated
  • · project scope (#605)

    A {kind: "url"} attachment of a composed mail is read server-side: under a project with excluded_url_prefixes, a matching url is refused, naming the pattern (file_source seam). Details: docs/projects.md.

    ⚙ multiple comptes

    this connector accepts multiple comptes: connecting with another compte adds it alongside the others, named by its address; reconnecting with the same one replaces its own.

  • the first linked compte is the default
  • without specification, the agent takes the only linked compte, otherwise the one marked as default; otherwise the call is refused, naming the available comptes — never a random choice
  • target a compte for a call: _account="<name>" on the tool; list them: oto_identity(op='list', connector='gmail')
  • set the default: oto_identity(op='set', connector='gmail', identity_id='<name>')
  • ⚠️ no tool walks through the comptes on its own: a total across several comptes is obtained by calling each one (_account) and adding up
  • outils

    chargement…

    utilisation

    claude code — installe le plugin oto — claude plugin marketplace add otomata-tech/oto-plugin — mcp + skill configurés.
    claude.ai — branche mcp.oto.cx/mcp en connecteur custom (guide)
    cli — pipx install oto-cli puis oto gmail …