
Read your Gmail inbox so Ruby can find replies, surface unread mail, and read messages by job.
Ask Ruby
Ruby reads from Gmail and grounds her answers in your data. Every connection starts read-only: she surfaces, summarizes, and drafts, and your team takes the action.
Fetch emails
Search the connected Gmail mailbox using Gmail's native search syntax and return a list of matching messages. This searches the ENTIRE mailbox (every label/category, any age, and optionally spam/trash); there is no date-window or folder limit. Use it to answer 'did the homeowner reply', 'what did the adjuster send', 'find the receipt from <vendor>', and to feed the Communication Gap Detector. Keep listings lean (leave verbose/include_payload off) and use GMAIL_FETCH_MESSAGE_BY_MESSAGE_ID to read a specific message in full.
Fetch message by message id
Read one full Gmail message by its Gmail message id (from GMAIL_FETCH_EMAILS): subject, sender, recipients, date, body, and attachment metadata. Use after a search when you need the actual contents of a message.
List labels
List the labels in the connected Gmail mailbox (system labels like INBOX, SENT, SPAM, CATEGORY_UPDATES plus any user-created labels). Use to discover which label to pass to GMAIL_FETCH_EMAILS via label:. Pass include_details:true to also get per-label message/thread counts, e.g. how many messages are in each Gmail category, without paginating any messages.
List threads
List Gmail conversation threads matching a Gmail search query (same syntax as GMAIL_FETCH_EMAILS). Use when you care about whole back-and-forth conversations rather than individual messages.
Get profile
Get the connected mailbox's profile: the email address plus the TRUE total message and thread counts for the WHOLE mailbox (messagesTotal, threadsTotal). Use this FIRST for any 'how many emails do I have', 'how big is my inbox', or email-volume / analytics-over-time question. The per-search resultSizeEstimate returned by GMAIL_FETCH_EMAILS is an unreliable approximation (it can report the same number for every query) and must never be used as a count, this tool is the authoritative source for mailbox totals.
Let Ruby send mail from this mailbox and draft replies, not just read it. Drafting is always available as the safer option.
An admin switches a connection to read-write in Settings > Integrations. From then on every write waits for a human’s approval before it leaves, by default, and every one lands in your audit log with what changed.
Send email
Send an email from the connected Gmail mailbox. This sends IMMEDIATELY and cannot be recalled, so confirm the recipient, subject, and body first. To reply inside an existing conversation use GMAIL_REPLY_TO_THREAD instead, which keeps the thread intact.
Reply to thread
Reply inside an existing Gmail thread, keeping the original subject so it stays one conversation. Sends immediately. Get `thread_id` from GMAIL_FETCH_EMAILS or GMAIL_LIST_THREADS; it is a thread id, not a message id.
Create email draft
Create a Gmail DRAFT without sending it, so a person can review and send. Prefer this over GMAIL_SEND_EMAIL whenever the wording should be checked first. To draft a reply in an existing thread, pass thread_id and leave subject empty.
Grounded answers
Ruby reads Gmail live and cites what she found, so answers reflect your actual data, not a stale export.
Reads by default
Every connection starts read-only. Ruby surfaces and drafts while your team takes the action; writes are opt-in per connection, human-approved by default, and always logged.
Managed, secure auth
Connect with one click. Tokens are encrypted and scoped per company; revoke access any time.
Knows restoration
Ruby understands jobs, claims, drying logs, and AR, so Gmail data lands in the right operational context.
Connect Gmail once in Ruby. Ask in the Ruby app, or bring the same secure connection into the assistant your team already uses.
Ruby
Ask in the Ruby app and get an answer grounded in Gmail and the rest of your connected stack.
Claude
Bring the same secure Gmail connection into Claude so it can answer with your live data.
ChatGPT
Use Gmail from ChatGPT with the same per-company, permissioned access Ruby uses.
Do I need developer credentials to connect Gmail?
No. Gmail connects with a single click, Ruby handles the OAuth handshake and token refresh for you.
Can Ruby change anything in Gmail?
Not unless you turn it on. Every Gmail connection starts read-only. An admin can switch a connection to read-write in Settings > Integrations; from then on each write Ruby makes waits for a human's approval before it leaves (by default; the same admin can switch that off) and is recorded in your audit log either way.
Is my Gmail data secure?
Credentials are encrypted at rest and access is scoped per company. You can revoke the connection at any time from Settings > Integrations, which immediately cuts Ruby off.
Can I use Gmail alongside my other tools?
Yes. Ruby reasons across every tool you connect at once, so she can tie Gmail to your CRM, accounting, email, and documentation in a single answer.