Inbox triage: prospect emails waiting on you, matched to open deals with nudge drafts
Gmail + HubSpot
Who it's for
AEs and SDRs who lose track of prospect emails they meant to answer. You get the threads that have waited more than 3 days, tied to the open deal, with a short reply drafted for each. HubSpot can be swapped for Salesforce, Attio or Pipedrive. On Outlook, Microsoft 365 (Work IQ) can read mail instead of Gmail, but it needs a Global Administrator and can send mail, so guard it closely.
What you get
Waiting threads, matched to deals, with two drafts ready for approval. Sample output: every company and person in it is fictional.
Prospect emails waiting on you for more than 3 days (Oct 16): 3 matched, 9 skipped (newsletters, internal, no HubSpot match) | From | Company | Waiting | Their ask | Open deal | |---|---|---|---|---| | Priya Raman | Mossgate Labs (fictional) | 5 days | Can the pilot start Nov 2? | Mossgate pilot, Proposal, $18K, close Nov 20 | | Sam Whitlock | Quarry Lane Analytics (fictional) | 4 days | Asked for the SOC 2 report | Quarry Lane renewal + upsell, Negotiation, $48K | | Alex Rivera | Fernhill Software (fictional) | 8 days | "Let's pick this up after the board meeting" | Fernhill expansion, Proposal, $22K. Skipped: they asked to wait | Draft 1 (not created yet) To: [email protected] Subject: Re: Pilot timing Hi Priya, Sorry for the slow reply. Yes, a Nov 2 start works on our side. I'll send the pilot checklist on Monday so your team can review it before kickoff. Does 30 minutes on Oct 22 work to go through it? Jordan Draft 2 (not created yet) To: [email protected] Subject: Re: Security docs Hi Sam, Apologies for the wait. I've asked our security team for the SOC 2 report and will send it as soon as I have it, by Wednesday at the latest. Jordan Check before approving: Draft 2 promises a date. Confirm it with your security team. Reply 'approve 1', 'approve 2' or 'approve all' to create Gmail drafts. Nothing is sent.
Time and cost
Estimate About 10–15 minutes, most of it editing the drafts.
Assumptions: One run over about two weeks of inbox, with roughly 10 candidate threads and 3 drafts.
- Gmail: One or two thread searches, a thread read per candidate, and one draft created per reply after you approve it. Nothing is sent. Credit use not confirmed by Gmail.
- HubSpot: Reads only: a contact or company search per sender, plus their open deals. Credit use not confirmed by HubSpot.
Exact credit costs depend on your plan with each vendor. Check the tool pages before a large run.
MCP servers
Every server is confirmed in: Claude
-
ClaudeRead + writeCredits not confirmedNeeds admin or IT
https://gmailmcp.googleapis.com/mcp/v1 -
ClaudeChatGPTRead + writeCredits not confirmedNeeds admin or IT
https://mcp.hubspot.com
Set up in a chat app
Every server in this recipe is confirmed for Claude. Connect each one, then paste the prompts below into one conversation.
- Connect Gmail without code (Claude)
- Connect HubSpot without code (Claude, ChatGPT)
Developer setup
Auth setup and mcp.json for Claude Code and Cursor
- Gmail: Sign in with OAuth in your client (run
/mcpin Claude Code). Do it once interactively, and the client stores and refreshes the token. - HubSpot: Sign in with OAuth in your client (run
/mcpin Claude Code). Do it once interactively, and the client stores and refreshes the token.
Put this in .mcp.json (Claude Code, project root) or ~/.cursor/mcp.json (Cursor). Swap the example keys for your own, and don't commit real ones. Remove the // comment lines if your client requires strict JSON.
{
"mcpServers": {
"gmail": {
"url": "https://gmailmcp.googleapis.com/mcp/v1"
},
"hubspot": {
"url": "https://mcp.hubspot.com"
}
}
}
Step-by-step prompts
- My email domain is {my_domain}. Search my Gmail for threads from the last {days} days where the latest message is from someone outside {my_domain}, it arrived more than 3 days ago, and I haven't replied. Skip newsletters, notifications and calendar invites. Quote the last line of each.
- For each sender, find the contact and company in HubSpot and any open deals: deal name, stage, amount, close date and last activity. Drop senders with no open deal, and any thread with newer activity logged in HubSpot. Don't change anything.
- Show me the remaining threads as a table, oldest first. Skip any where the prospect asked me to wait until a later date.
- For the threads I pick, write a short reply to each: answer their ask if I can, or say when I will. Under 80 words, no pressure. Flag any date or promise in the text. Show me the text only.
- After I approve each one, create it as a Gmail draft to the prospect. Don't send anything.
Run it on a schedule (optional)
- Run it two or three times a week, for example Monday and Thursday mornings.
- In a scheduled run, stop at the table and the draft text. Approve each Gmail draft yourself.
- Gmail's MCP server is in Google's Developer Preview and needs your company's own Google Cloud OAuth client. Get it working in a manual run first.
Where this goes wrong
- Threads you already answered elsewhere. A reply sent from a sequencing tool, a shared inbox or a call won't show in the Gmail thread. Before drafting, check the deal's last activity in HubSpot, and skip any thread with a newer call, meeting or email logged.
- Nudging someone who asked you to wait. "Circle back after Q4" isn't an unanswered question. Have it quote the prospect's last line for each thread, and skip any that set a later date.
- Promises you can't keep in the draft. The model may write "I'll send it today" or confirm a date you haven't agreed. Have it flag every date or commitment in each draft, and fix them before you approve.
- The wrong deal for the sender. A company can have more than one open deal, or the sender may be on an old closed deal. Show every open deal for the sender's company and pick one yourself when there's more than one.
Gotchas
- Gmail's documented MCP tools can create drafts and apply labels but have no send tool, so every reply waits in your Drafts folder.
- Gmail's MCP server is in Google's Developer Preview. It needs Developer Preview Program membership, a Google Cloud project with the Gmail API and Gmail MCP API enabled, and your own OAuth client added as a custom connector. A rep usually can't set this up alone: ask your Google Workspace admin or IT.
- Google documents Gmail setup for Claude.ai and Claude Desktop on Enterprise, Pro, Max or Team plans. ChatGPT support isn't confirmed.
- HubSpot non-admin users need a Super Admin to approve the connector first.
- Using Salesforce instead? Use SOSL search (find) to match the sender's email to a Contact, then SOQL to list open Opportunities on the account. It needs Enterprise Edition or above and an admin-created External Client App, and every tool call counts against your org's daily API request quota.
- On Outlook and Microsoft 365? Work IQ can read mail with fetch, but its tools can also send email, unlike Gmail's. Keep the 'never send' guardrail. A Global Administrator must enable it, use is billed in Copilot Credits, and Microsoft documents it for GitHub Copilot tools, not Claude or ChatGPT.
Download
Get the prompts, guardrails and expected output as one Markdown file. Paste it into a Claude Project or ChatGPT project's instructions, or save it as CLAUDE.md for Claude Code.
Download inbox-triage-nudges.md
New recipe and breakage notes every week
Vendor sites: HubSpot. If we join an affiliate program, these links will be labeled as affiliate links.