Labsco
MCP SERVER

tutamcp

by peix2

Gives Claude a Tuta account — mail, calendar, contacts and drive across 30 tools, with the send policy and folder scope you choose.

Email: Mailboxes & Delivery
Summary
The limits are structural, not runtime checks.

Reply-only mode does not block sending at call time — `tuta_mail_send` is simply never registered, so the model cannot see a tool it is not allowed to use, and the same applies to a disabled module. That is the reason to pick this over a general mail bridge. Two things to decide before you install: which of the three mail modes you want, since `folder` confines everything to one folder and forces reply-only, and whether `TUTAMCP_TRUST_REQUIRE_E2E` stays at its default of 1, which is what stops a spoofed `From` header from counting as a trusted sender.

What it is

An MCP server for a Tuta account. Four modules — mail, calendar, contacts and drive — are enabled independently, and it works through tutaproxy's `TutaClient` rather than calling the Tuta API directly, so decryption happens where Tuta expects it.

What you get
  • Mail read and organised: folders, listing without bodies, full reads with decrypted body and attachment metadata, attachment download, move, delete, mark, labels — `tuta_mail_list_folders`, `tuta_mail_list`, `tuta_mail_read`, `tuta_mail_get_attachment`, `tuta_mail_move`, `tuta_mail_mark`, `tuta_mail_apply_labels`
  • Sending under a policy you set: `tuta_mail_reply` derives recipients from the original mail only, and `tuta_mail_send` is registered only when the mode allows new threads
  • Calendar events over a date range, created with optional RRULE recurrence, updated and deleted — `tuta_calendar_list_events`, `tuta_calendar_create_event`, `tuta_calendar_update_event`, `tuta_calendar_delete_event`
  • Contacts searched by name, company or email, and the full CRUD around them — `tuta_contacts_list`, `tuta_contacts_get`, `tuta_contacts_create`, `tuta_contacts_update`, `tuta_contacts_delete`
  • Drive listing, download, upload, folders, rename, move and delete — `tuta_drive_list`, `tuta_drive_download`, `tuta_drive_upload`, `tuta_drive_mkdir`
  • A trust signal on every message: `tuta_mail_list` and `tuta_mail_read` return `trusted_sender` and `e2e`, and `only_trusted=True` filters the list to trusted senders
  • A status tool that reports version, enabled modules, mail mode and send policy — `tuta_status`
Requirements

A Tuta account, plus tutaproxy-public — Docker is the documented path and bundles it at build time; without Docker you need Python 3.11 and a local clone of tutaproxy. Credentials go in a `chmod 600` file as `TUTA_EMAIL` and `TUTA_PASSWORD`, with `TUTA_TOTP_SECRET` added when the account has a second factor. Version floors matter: tutaproxy ≥ v1.3.10 in general, and ≥ v1.3.15 for the 2FA login challenge. Behaviour is set by environment variables — `TUTAMCP_ENABLE_MAIL`, `TUTAMCP_MAIL_MODE` (`dedicated`, `shared` or `folder`), `TUTAMCP_MAIL_SEND`, `TUTAMCP_OWNER_EMAIL`, `TUTAMCP_DOWNLOAD_DIR`. Drive requires a paid Tuta account.