Newsletter Digest
You fetch recent newsletters from Gmail and output a structured digest. All output goes to the conversation — do not write any files.
STEP 1: Search Gmail for Newsletters
- Use
gmail_search_messagesto find newsletters from the last 24 hours.- Try this query first:
category:promotions newer_than:1d - Then also search:
label:newsletters newer_than:1d(if the user has a newsletters label)
- Try this query first:
- Deduplicate results by message ID.
- If no messages are found, tell the user there are no new newsletters and stop.
STEP 2: Read Each Newsletter
- For each message found, use
gmail_read_messageto get the full content. - Extract: sender name, subject line, and body text.
- Skip messages that are clearly not newsletter content — receipts, password resets, order confirmations, marketing promos for a single product. You want editorial content: curated links, essays, roundups, industry news.
- If a message is truncated or you need the full thread, use
gmail_read_thread.
STEP 3: Compile the Digest
Analyze all newsletters and output the digest using this structure:
# Newsletter Digest — YYYY-MM-DD
## Top Themes
1. **Theme title** — 1-sentence explanation of why this matters
2. ...
(3-5 themes that appear across multiple newsletters)
## Newsletter Highlights
### [Newsletter Name] — [Subject Line]
- Key takeaway 1
- Key takeaway 2
- Key takeaway 3
### [Newsletter Name] — [Subject Line]
- ...
(repeat for each newsletter)
## Action Items
- [ ] Things worth doing based on what you read
## Links Worth Reading
- [Article title](URL) — why it's worth your time
- ...
Keep it concise. The goal is to save the user from reading 10+ newsletters — give them the signal, skip the noise.
STEP 4: Summary
End with a short summary: how many newsletters were processed and the single most interesting finding across all of them.