Build Your AI Newsletter Digest: From Inbox Chaos to Daily Intelligence
June 26, 2026
Build Your AI Newsletter Digest: From Inbox Chaos to Daily Intelligence
If you subscribe to more than a handful of AI newsletters, you already know the problem. By 9 AM, your inbox holds 15 emails from The Rundown, TLDR AI, Import AI, and a dozen others. Each one competes for your attention. You read some, skip others, and by the time you sit down to write something worth posting on LinkedIn, the moment’s gone.
This guide shows you how to build an AI newsletter digest workflow that reads your inbox, scores each story by relevance, generates a ranked digest, and drafts LinkedIn-ready posts—all before you finish your first cup of coffee.
The workflow uses Claude Code and Gmail MCP (Model Context Protocol) to eliminate manual curation. No fluff, just the steps to build it.
What You’re Building
Before diving in, let’s be clear about what “workflow” means here.
Your AI newsletter digest will do four things:
- Read your inbox via Gmail MCP, filtering for newsletter senders you care about
- Score each story against criteria you define (relevance to AI, product news, research, etc.)
- Summarize top stories in a clean digest format
- Draft LinkedIn posts based on highest-scoring content
The output is a Markdown file with:
- A ranked digest of the top 5 stories
- 2-3 LinkedIn post drafts, ready to edit and publish
- Source attribution and links
You run this once each morning. Or schedule it. Either way, you get a distilled view of what matters without touching your inbox.
Prerequisites
You’ll need:
- Claude Code with Ultra mode enabled (for longer context windows when processing multiple newsletters)
- A Gmail account (or Google Workspace) you’re willing to grant API access
- Node.js 18+ installed locally
- Gmail MCP server (the bridge between Claude Code and your Gmail data)
- Basic comfort with terminal commands (you won’t write code, but you’ll be configuring files)
Part 1: Set Up Gmail MCP Server
Create a Google Cloud Project and Enable the Gmail API
Go to the Google Cloud Console and create a new project. Call it something like claude-newsletter-digest.
Inside the project:
- Navigate to APIs & Services > Library
- Search for “Gmail API” and click Enable
- Go to APIs & Services > OAuth consent screen
- Choose External (unless you’re on Google Workspace)
- Fill in required fields and save
- Under Scopes, add
https://www.googleapis.com/auth/gmail.readonly(read-only is all you need) - Go to APIs & Services > Credentials > Create Credentials > OAuth 2.0 Client ID
- Choose Desktop App as the application type
- Download the JSON file, rename it
credentials.json
Install Gmail MCP Server
Install the Gmail MCP server globally:
npm install -g @gptscript-ai/gmail-mcp-server
Place your credentials.json in an accessible location.
Authenticate with OAuth
Run the authentication flow:
node auth.js
This opens a browser window asking you to grant access. After you approve, it saves an access token locally. You won’t need to repeat this unless the token expires.
Configure Claude Code to Use Gmail MCP
Edit your Claude Code configuration file (usually ~/.claude/config.json):
{
"mcpServers": {
"gmail": {
"command": "node",
"args": ["/path/to/gmail-mcp-server/index.js"],
"env": {
"CREDENTIALS_PATH": "/path/to/credentials.json"
}
}
}
}
Restart Claude Code. Gmail should now appear as an available tool.
Part 2: Build the Newsletter Digest Workflow
Create the Skill File
Claude Code skills live as Markdown files with embedded instructions. Create newsletter-digest.md:
# Newsletter Digest Skill
## Instructions
You are an AI newsletter curator. Every time this skill runs, you will:
1. Use the Gmail tool to fetch emails from the last 24 hours
2. Filter for known newsletter senders (see the sender list below)
3. Score each story on a scale of 1–10 using the criteria below
4. Summarize the top 5 stories
5. Draft 2–3 LinkedIn posts based on top stories
6. Output everything as a Markdown digest
## Sender List
Filter emails from these senders (adjust to your actual subscriptions):
- The Rundown AI
- TLDR AI
- Import AI (Jack Clark)
- Superhuman AI
- Ben's Bites
- The Batch (deeplearning.ai)
- AI Breakfast
- Mindstream
Skip emails not from these senders.
## Scoring Criteria
Score each story from 1–10 based on:
- **Relevance** (0–3): Is this directly about AI models, tools, research, or industry moves?
- **Novelty** (0–3): Is this new information, or a rehash from last week?
- **Practical value** (0–2): Does this change how someone might build with AI or run an AI business?
- **Engagement potential** (0–2): Would an AI practitioner or founder audience find this worth discussing?
Stories scoring 7+ go in the digest. Stories below 4 are dropped.
## Digest Format
For each top story, output:
[Score/10] Story Headline
Source: [newsletter name]
Summary: 2–3 sentences in plain English.
Why it matters: 1 sentence.
---
## LinkedIn Post Drafts
Generate 2–3 LinkedIn post drafts. Each should:
- Open with a specific claim or observation (not a question)
- Be 150–250 words
- Reference the source story naturally
- End with a single clear takeaway or call to action
- Use line breaks between paragraphs (no bullet points)
- Use hashtags sparingly (only if they add real value)
Test the Workflow Manually
Invoke the skill:
/skills run newsletter-digest
The first run takes a minute or two. Watch the tool calls in the output pane—you should see Gmail API calls happening in real time.
If it errors, common culprits are:
- OAuth token expired: Re-run
node auth.js - Sender names don’t match exactly: Check the actual “From” field in your emails
- Too many emails: Try narrowing the time window to 12 hours
Tune the Scoring and Output
After a few runs, adjust the scoring criteria to match your actual interests.
If you care mostly about model releases and research:
- Weight “Novelty” and “Relevance” higher
If you’re a founder using this competitively:
- Weight “Practical value” higher
Add explicit exclusions if helpful:
Skip any story that is primarily about:
- Funding rounds under $10M
- Hardware releases from non-AI companies
- Opinion pieces with no new factual content
Control LinkedIn post tone by adding perspective instructions:
Write LinkedIn posts from the perspective of a skeptical practitioner
who values concrete results over hype. Be willing to push back on inflated claims.
Or for educational approach:
Write LinkedIn posts that explain the story's significance to someone
who follows AI news but doesn't have a technical background.
Part 3: Schedule It to Run Automatically
Option 1: Cron Job (macOS/Linux)
Open your crontab:
crontab -e
Add a line to run at 7 AM daily:
0 7 * * * /usr/local/bin/claude-code skills run newsletter-digest >> ~/logs/newsletter-digest.log 2>&1
Option 2: GitHub Actions (Cloud)
If you want this running even when your laptop is closed, set up a GitHub Actions workflow:
name: Daily Newsletter Digest
on:
schedule:
- cron: '0 7 * * *'
jobs:
run-digest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run newsletter digest skill
env:
CLAUDE_API_KEY: ${{ secrets.CLAUDE_API_KEY }}
GMAIL_CREDENTIALS: ${{ secrets.GMAIL_CREDENTIALS }}
run: |
npm install -g @anthropic-ai/claude-code
claude-code skills run newsletter-digest
Option 3: Push Output to Slack or Notion
Extend the skill to push output elsewhere. Claude Code supports additional MCP servers for Notion, Slack, and other tools. Add to your config and update instructions:
After generating the digest, use the Slack tool to post the summary
to the #ai-news channel as a threaded message.
Common Issues and Fixes
Skill Reads Too Many Emails
If Claude processes hundreds of emails, it’ll time out. Add a hard cap:
Fetch no more than 50 emails. If more than 50 match the sender filter,
prioritize the most recent ones.
LinkedIn Posts Sound Generic
The issue is usually that mediocre stories are reaching the post generation step. Raise the minimum threshold from 7 to 8:
Stories scoring below 8 are dropped entirely.
Scores Feel Random
Anchoring the scale with concrete examples produces consistency:
Example: GPT-5 release announcement = 9/10
Example: $5M seed round for AI startup = 3/10
Example: New reasoning technique research paper = 7/10
Duplicate Stories Across Newsletters
Add deduplication logic:
If two or more stories cover the same event, merge them into
a single digest entry. Note which newsletters covered it.
When to Go Further with Fortezza
If you want this workflow running with:
- No Gmail MCP configuration (skip OAuth and local servers)
- Visual workflow builder (no terminal commands)
- Team sharing (non-technical teammates can trigger it)
- Slack/Notion integration (push output directly)
- Web interface (run from browser instead of terminal)
Then Fortezza Solutions’ no-code automation platform is worth exploring. It has native Google Workspace integrations and builds the same logic—filter, score, draft—inside a visual editor. Average build time: under an hour.
Getting Started
Build the workflow following these steps:
Week 1: Set up Google Cloud project, enable Gmail API, install Gmail MCP server, authenticate
Week 2: Create skill file, test manually, iterate on scoring criteria
Week 3: Schedule with cron or GitHub Actions
Week 4: Tune based on real output, adjust tone, expand sender list as needed
By end of week 4, you have a fully automated workflow reading your inbox every morning.
The compound benefit builds over time. You’re not just saving 20-30 minutes of reading. You’re catching stories faster, maintaining consistent engagement on LinkedIn, and building a searchable archive of what mattered each day.
The pattern here applies beyond newsletters too. Once you have the infrastructure working, adapting it to monitor Reddit threads, Hacker News, or industry forums is mostly swapping the data source and adjusting scoring weights.
Start with newsletters. Expand from there.