AI-drafted email is easy to spot. It opens with "I hope this finds you well," thanks people for reaching out, and runs three paragraphs longer than anything you would write. The fix is to stop asking the model to guess your style and show it how you already write.
Your sent folder is the best reference you have. This guide has Claude Code read it, write a short style guide, and use that guide every time it drafts a reply. The drafts go into your mailbox as replies to the original messages. You read them, edit them, and send them yourself.
It uses Fluxmail, a self-hosted MCP server that connects Claude Code to Gmail, Outlook, and IMAP mailboxes.
1. Connect your mailbox with drafting access
If you have not connected a mailbox yet, follow the quickstart. For Gmail it takes three commands:
npm install -g fluxmail
fluxmail setup --name "Your name" --email you@example.com
fluxmail accounts add gmail
This workflow only needs to read mail and write drafts. Give Claude Code exactly those two capabilities:
claude mcp add fluxmail -- \
fluxmail stdio --allow mail.read --allow mail.drafts
With this policy Claude Code cannot send, archive, or delete anything. If you already added Fluxmail with a broader profile, remove it first with claude mcp remove fluxmail.
2. Build your style guide
Start Claude Code in a folder where you keep notes, and ask:
Search my sent mail from the last 90 days. Read 40 of my replies, choosing a mix of short and long ones and a range of recipients. Write a style guide to email-voice.md that covers my greetings, sign-offs, typical length, how formal I am with different kinds of people, phrases I use often, and things I never do. Quote short examples.
Claude Code runs searches such as in:sent after:2026-06-25, opens the threads, and writes the file. A useful result is short and specific. For example:
# Email voice
- Greeting: "Hi Ann," for everyone. No greeting in fast back-and-forth threads.
- Sign-off: "Thanks," or just my first name. Never "Best regards."
- Length: two to four sentences. Longer only when someone asked several questions.
- Answer first, then context. Never restate their email back to them.
- Lists when there are three or more items.
- Customers: friendly, a little more formal, always a clear next step.
- My team: casual, lowercase is fine, no pleasantries.
- Never: "I hope this finds you well", "Just circling back", exclamation marks
in the first line.
Read the guide and correct it. You know your habits better than a sample of 40 emails does. Delete anything that is wrong or that you would rather not repeat.
3. Draft replies with the guide
Now ask for drafts:
Using email-voice.md, draft replies to the unread messages in my inbox from today that need an answer. Before each draft, search my sent mail to that person and match how I usually write to them. Skip anything about pricing or contracts.
For each message, Claude Code reads the thread with get_thread, checks your history with a search such as in:sent to:ann@example.com, and writes the reply with create_draft. It passes the original message ID, so each draft is threaded correctly and addressed to the right people.
Open your mail client and go through the drafts. Edit what needs editing and send.
4. Turn it into a skill
Save the routine so you can run it with one command. Create ~/.claude/skills/draft-replies/SKILL.md:
---
name: draft-replies
description: Draft replies to today's unread mail in my voice, using my style guide and past emails to each person.
---
Read ~/notes/email-voice.md before drafting anything.
1. Find unread messages in my inbox from today that ask me something or
wait on me. Skip newsletters, notifications, and automated mail.
2. For each one, read the full thread and search my sent mail to that
sender. Match the tone I use with them.
3. Create a reply draft for each. Do not send.
4. Skip anything about pricing, contracts, legal terms, or hiring. List
those at the end so I can answer them myself.
5. Finish with a table: sender, subject, and a one-line summary of each draft.
Update the path to wherever you saved email-voice.md, then run /draft-replies.
Improve the drafts over time
- Correct the guide, not each draft. When you keep making the same edit, add a line to
email-voice.md. The next run picks it up. - Add examples. A few short replies you liked teach tone better than adjectives. Paste two or three into the guide.
- Say what you do not know. Tell Claude Code to leave a placeholder like
[date?]instead of inventing a date, a price, or a commitment. - Refresh every few months. Your style drifts, and so do the people you write to. Rebuild the guide from recent sent mail now and then.
Why drafts and not sending
An agent that reads your inbox also reads mail from strangers, and some of that mail may try to steer it. With only mail.read and mail.drafts, the worst outcome is a bad draft that you delete. Keep sending with you. How to give an AI agent access to your email safely covers the other controls.
Related guides
- Triage your Gmail inbox with Claude Code sorts the inbox before you draft.
- Triage your Outlook inbox with Claude Code does the same for Microsoft accounts.
- Email search lists every filter Claude Code can use to find past replies.