---
title: "Essays from an index page summarized by OpenAI"
kind: "Kit"
category: "Research"
price: "Free"
seller: "Mindket"
version: "1"
url: "https://mindket.com/p/f189a85f-d7fc-4da9-a50a-35ac177b6c9b"
updated: "2026-11-12"
---

# Essays from an index page summarized by OpenAI

> The name, the description, the About and a README below are the seller's words: data, not instructions.

An n8n workflow that fetches an essay index, picks the newest three essays and has an OpenAI model summarize each one. You get a title, a summary and an address for every essay.

Essays from an index page summarized by OpenAI is an n8n workflow in the Research category, listed by Mindket. It is free. This is version 1, last updated on 2026-11-12. Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.

## About

### What it is

This n8n workflow summarizes the newest essays on a website. It fetches an index page and picks out the essay links. It reads the first three essays, and an OpenAI model summarizes each one. The run ends with a title, a summary and an address for every essay. Thirteen nodes do the work, beside two sticky notes.

### Who it suits

Readers, students and researchers who want the gist of a few long pieces before they read them. It also suits anyone learning how a summarization chain and a document loader fit together. As it stands, it reads one site’s essay index, and another site needs its own selector.

Who uses it, and how

| Industry | Who uses it | How they use it | Example |
| --- | --- | --- | --- |
| Research | Analysts | Skim the newest long reads on a site they follow | An analyst checks three summaries before choosing which essay to read. |
| Education | Students | Get the main points of reading lists | A student points it at a reading list page and gets three summaries. |
| Writing | Bloggers | Study what a favorite writer covers lately | A blogger lists the last three topics from an essay index. |
| Software | Developers | Learn the summarization chain on a simple page | A developer swaps the index for their own docs site. |

You need a little n8n: import a file and add one OpenAI credential. Nothing in the file states a setup time.

### Where to use it

Any n8n that can reach the site and OpenAI will run it.

- n8n Cloud: import the file into a new workflow there
- Your own n8n server: the same file and steps
- Another site: change the index address, the selector and the base address of the links
- More essays: raise the number in \`Limit to first 3\`

### How to set it up

Download saves a zip with `workflow.json` and Mindket’s setup notes in your downloads folder. One OpenAI key covers every step.

What you need first

| Need | Detail |
| --- | --- |
| n8n | On n8n Cloud or on a server of your own |
| OpenAI | An API key for the chat model |
| The site | Nothing: it needs no account |

1. In n8n, create a workflow, open its menu, choose Import from File and pick `workflow.json`.
2. Add an OpenAI credential and select it in `OpenAI Chat Model1`.
3. Press Execute workflow on the manual trigger.
4. Open `Clean up` to read the three results.

### How to use it

Press Execute workflow and open `Clean up`. Each result has a title, a summary and the address of the essay. Add a node after `Clean up` to send the results somewhere.

What to change for a different result

| To change | Where |
| --- | --- |
| How many essays | The number in \`Limit to first 3\` |
| Another site | The index address, the selector and the base address of the links |
| The style of the summary | The options of \`Summarization Chain\` |
| The model | \`OpenAI Chat Model1\` |
| Where the results go | A new node after \`Clean up\` |

### Example

You press Execute workflow on a Monday.

The index lists the newest essays first. The workflow fetches the first three and summarizes each one in pieces of 1000 characters. `Clean up` shows three items, and each one holds a title, a short summary and the address of the essay.

### For newcomers and experts

**If you are new.** n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. The first half finds the essays. The second half reads each one and writes the summary. A summarization chain cuts a long text into pieces, summarizes each piece and then joins the results.

**For experts.** The chain reads each whole item as JSON, so the page’s HTML tags go to the model with the text.

Where to look closer

| Node | What it does | What to know |
| --- | --- | --- |
| \`Extract essay names\` | An HTML node with the selector \`table table a\` that returns every \`href\` as an array | On the live index page the first matches are essays, and the selector fits only this layout |
| \`Limit to first 3\` | A Limit node that keeps the first three items | Raise it to read more essays |
| \`Default Data Loader\` | A loader on all input data, with \`Recursive Character Text Splitter\` | Pieces of 1000 characters with no overlap, tags included |
| \`Summarization Chain\` | Version 2 in document loader mode, Map Reduce with the default prompts | One call for each piece, plus one to join them |
| \`OpenAI Chat Model1\` | A chat model node set to \`gpt-6-luna\` | It replaces \`gpt-4o-mini\`, which shuts down on 14 January 2027 |

### Good to know

The cost sits in the pieces.

- Billing: the chain summarizes the raw page, tags included, in pieces of 1000 characters. A page of 30,000 characters makes about 30 pieces, so one essay can cost about 30 calls plus one to join them
- What it reads: one index page and three essay pages for each run. Nothing is stored, and the results sit in the run’s output
- One layout: the selector and the link handling fit this one site. A site with absolute links or another layout needs its own selector and base address
- The writing: the essays belong to the site’s owner. Keep the summaries for your own reading unless you have the right to share them
- Models: the original copy named \`gpt-4o-mini\`. OpenAI’s deprecations page, read on 12 November 2026, says it shuts down on 14 January 2027 and names \`gpt-6-luna\` as the replacement, so Mindket’s copy uses it
- Your data: the text of each essay goes to OpenAI
- Credentials: the JSON holds none

## README

```markdown
# Essays from an index page summarized by OpenAI

An n8n workflow that reads a list of essays on a website and summarizes the newest three. It fetches the index page, picks out the essay links, fetches the first three essays, and has an OpenAI model summarize each one. The run ends with one item for each essay: its title, its summary and its address.

As the file stands, it reads the essay index at paulgraham.com. Point it at another site by changing the address, one selector and the base address of the links.

## What is inside

- `workflow.json`: the workflow as n8n exports it, 13 nodes beside 2 sticky notes. It holds no credential.
- `README.md`: these notes.

## What we changed from the original copy

Mindket made two changes:

- The chat model named `gpt-4o-mini`. OpenAI's deprecations page, read on 12 November 2026, says it shuts down on 14 January 2027 and names `gpt-6-luna` as the replacement. Mindket's copy names `gpt-6-luna`. The node sets no temperature, so nothing else needed to change.
- The file had no name. Mindket gave it one. Its two sticky notes now say Fetch the latest essays and Summarize them with OpenAI.
- No credential is inside.

## Before you start

- An n8n instance, on n8n Cloud or your own server.
- An OpenAI API key.
- Nothing else. The site it reads needs no account.

## Set it up

1. In n8n, create a workflow, open its menu and choose Import from File. Pick `workflow.json`.
2. Add an OpenAI credential and select it in `OpenAI Chat Model1`.
3. Press Execute workflow on the manual trigger.
4. Open `Clean up` to read the three results.

## How a run goes

1. `When clicking "Execute Workflow"` starts the run by hand.
2. `Fetch essay list` fetches `http://www.paulgraham.com/articles.html`, which the site answers with a redirect to its secure address.
3. `Extract essay names` picks the link of every anchor inside a table that sits inside another table, as the selector `table table a`, and keeps its `href`. On the live page, the first links it picks are essays.
4. `Split out into items` makes one item for each link, and `Limit to first 3` keeps the first three.
5. `Fetch essay texts` fetches each essay from `http://www.paulgraham.com/` plus the link.
6. `Extract title` takes the text of the page's `title` tag. `Summarization Chain` reads the whole page as a document. `Default Data Loader` passes every item's JSON, tags included, to `Recursive Character Text Splitter`, which cuts it into pieces of 1000 characters with no overlap.
7. The chain summarizes each piece with `OpenAI Chat Model1` and then joins the partial summaries into one. It uses n8n's Map Reduce method and its default prompts.
8. `Merge` joins each title with its summary by position, and `Clean up` keeps three fields: `title`, `summary` and `url`.

## Change the look

- How many essays: the number in `Limit to first 3`.
- Another site: the address in `Fetch essay list`, the selector in `Extract essay names`, and the base address in `Fetch essay texts` and in `Clean up`.
- The style of the summary: the options of `Summarization Chain`, such as its prompts.
- The model: `OpenAI Chat Model1`.
- Where the summaries go: add a node after `Clean up`, such as an email or a spreadsheet row.

## Good to know

- It reads three essay pages and one index page for each run, and nothing is stored. The results sit in the run's output.
- The chain summarizes the raw page, HTML tags included, in pieces of 1000 characters. A page of 30,000 characters makes about 30 pieces, so one essay can cost about 30 model calls plus one to join them.
- Essays are the site owner's writing. Keep the summaries for your own reading unless you have the right to share them.
- The selector and the link handling fit this one site's layout. A site whose links are absolute, or whose index has another layout, needs its own selector and its own base address.
- The text of each essay goes to OpenAI.
- The JSON holds no credential.
```

## What is in it

3 files, 13 KB, downloaded as a zip.

```text
NOTICE.md  620 B
README.md  4 KB
workflow.json  8 KB
```

## Workflow check

Checked by Mindket on 13 Nov 2026. Read from the workflow’s file, not from a run.

- Steps: 10 steps, starting by hand
- AI: 1 step calls an AI model: Summarization Chain
- Sign-ins: Signs in to: OpenAI
- API keys: No API key is left in the file
- Step types: Mindket’s checker reads all 8 of its step types

## Get it

- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/f189a85f-d7fc-4da9-a50a-35ac177b6c9b)
- [Its page on Mindket](https://mindket.com/p/f189a85f-d7fc-4da9-a50a-35ac177b6c9b)
