All Posts
aiautomationcontentnewsletterclaude

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:

  1. Read your inbox via Gmail MCP, filtering for newsletter senders you care about
  2. Score each story against criteria you define (relevance to AI, product news, research, etc.)
  3. Summarize top stories in a clean digest format
  4. 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.