---
title: "Chat agent that fetches a web page as Markdown"
kind: "Kit"
category: "Research"
price: "Free"
seller: "Mindket"
version: "1"
url: "https://mindket.com/p/41f2908a-4284-41e1-87e1-c18a61ce12ed"
updated: "2026-11-12"
---

# Chat agent that fetches a web page as Markdown

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

An n8n workflow with a chat agent that can open web pages. Its tool downloads an address, strips scripts and styles, turns the page into Markdown and hands it to an OpenAI model to answer from.

Chat agent that fetches a web page as Markdown 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 is a chat agent that can read a web page for you. You send a question with an address in n8n’s chat, and an OpenAI model decides whether it needs the page. If it does, it calls a tool, which is the lower half of the same workflow. The tool downloads the address, keeps the page body, drops scripts, styles and embedded media, and turns the rest into Markdown. A page whose Markdown runs to 70,000 characters or more comes back as an error line instead. Sixteen nodes do the work, beside four sticky notes.

### Who it suits

Developers and researchers who want a small agent that reads one page at a time, and who want to see how an n8n agent calls a tool of its own. Skip it if the pages you need draw their text with JavaScript, or if other people should use the chat. It opens only inside the n8n editor.

Who uses it, and how

| Industry | Who uses it | How they use it | Example |
| --- | --- | --- | --- |
| Research | Analysts | Ask about one report or article page at a time | An analyst pastes a policy page and asks for its three main changes. |
| Marketing | Content marketers | Read a rival’s landing page without opening it | A marketer asks which plans a competitor’s pricing page lists. |
| Software | Developers | Check a documentation page while they work | A developer asks what a library’s release page says about one version. |
| Education | Teachers | Pull the main points from a page before a class | A teacher asks for a short summary of a museum’s exhibit page. |

You need a little n8n: import a file, add one OpenAI credential and save the workflow so the tool can call it.

### Where to use it

Any n8n that can reach OpenAI and the sites you want to read will run it. The answers appear in the chat.

- n8n Cloud: import the file into a new workflow there
- Your own n8n server: the same file and steps, with the server able to reach the sites you ask about
- The editor’s chat: the only chat this version has, since its trigger works only there
- Other workflows: call the lower half with an Execute Workflow node that sends a \`query\` field

### How to set it up

Download saves a zip with `workflow.json` and Mindket’s setup notes in your downloads folder. Setup is one credential and one save.

What you need first

| Need | Detail |
| --- | --- |
| n8n | On n8n Cloud or on a server of your own |
| OpenAI | An API key that can use \`gpt-5.6-sol\` |

1. In n8n, create a workflow, open its menu, choose Import from File and pick `workflow.json`.
2. Add an OpenAI credential with your key and select it in `OpenAI Chat Model`.
3. Save the workflow. `HTTP_Request_Tool` calls the workflow by its own id, so it needs the saved copy.
4. Press Chat on the canvas and ask about a page, with its address in your message.

### How to use it

Send a question with a web address in the chat, such as a request to list the plans on a pricing page. The agent picks `full` or `simplified` for the tool. `full` keeps link and image addresses in the Markdown. `simplified` swaps them for NOURL and NOIMG, which saves space. An answer can use up to 10 steps, so the agent can read more than one page.

What to change for a different result

| To change | Where |
| --- | --- |
| The page size limit | The 70000 in \`CONFIG\`, counted in characters of Markdown |
| How the agent uses the tool | The description in \`HTTP\_Request\_Tool\` |
| The model and its settings | \`OpenAI Chat Model\` |
| What is stripped from the page | The expression in \`Remove extra tags\` |
| The simplified form | The replacements in \`Simplify output\` |

### Example

A marketer asks the agent to list the plans, prices and limits on a rival’s pricing page, and pastes its address.

The agent calls the tool with the address and `method=simplified`. The tool answers with the page as Markdown, and the model reads it and replies in the chat. If the Markdown runs to 70,000 characters or more, the tool returns an error line instead, and the model tells you the page was too long. Check any price against the page itself.

### 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 top rows are the chat: a trigger, the agent, its model and the tool. The lower rows are the tool’s own steps, which start at `Execute Workflow Trigger`. Run one question and open the chat’s log to see each step.

**For experts.** The tool is a Tool Workflow node whose workflow id is the workflow’s own, so one file holds both halves. It passes a single query string, which `QUERY_PARAMS` splits into fields.

Where to look closer

| Node | What it does | What to know |
| --- | --- | --- |
| \`HTTP Request\` | Downloads the address with a plain GET | A 404 page comes back as text, since \`neverError\` is on |
| \`Exctract HTML Body\` | Keeps the text between the body tags | A reply with no body tag, such as JSON, fails here |
| \`Remove extra tags\` | One regular expression drops scripts, styles, frames, media, SVG and comments | Their content is gone before the Markdown step |
| \`Send Page Content\` | Compares the Markdown’s length with \`maxlimit\` | At the limit or over it, the page becomes an error line |
| \`ReAct AI Agent\` | Reasons in text and calls the tool by name | n8n lists this mode as deprecated |

### Good to know

The original copy’s model is shut down, and its agent type is on its way out of n8n.

- Models: OpenAI’s deprecations page, read on 12 November 2026, lists \`gpt-4-1106-preview\` as shut down on 23 October 2026. Mindket’s copy calls \`gpt-5.6-sol\`, the replacement it names. The options keep the original’s temperature of 0.7 and frequency penalty of 0.3, so clear them in \`OpenAI Chat Model\` if OpenAI refuses either for the new model
- Agent type: n8n marks the ReAct mode as deprecated and says it is removed in n8n v3. After that update, replace \`ReAct AI Agent\` with the current AI Agent and reconnect its model and tool
- A plain download: nothing runs the page’s scripts, so a page that draws its text with JavaScript comes back nearly empty
- Certificates: \`HTTP Request\` has Ignore SSL Issues on, so it also reads a page whose certificate fails. Turn it off in the node’s options if you want the check
- Reach: the agent fetches any address it is given, including ones on your own network. Only people who can open your n8n editor can use the chat
- Site rules: read a site’s terms before you point the agent at many of its pages
- Billing: OpenAI bills each model call, and one question can take several. Every page under the limit goes into the model’s input
- Your data: your questions and the pages’ text go to OpenAI
- Credentials: the JSON holds none

## README

```markdown
# Chat agent that fetches a web page as Markdown

An n8n workflow with a chat agent and one tool. You give the agent a web address in n8n's chat, and the tool downloads
the page, strips what a model does not need and hands back Markdown. An OpenAI model answers from it.

## What is inside

- `workflow.json`: the workflow as n8n exports it, 20 nodes, four of them sticky notes. It holds no credential. The
  agent and the tool sit in one file: the tool is the lower half of the canvas, which starts at `Execute Workflow Trigger`.
- `README.md`: these notes.

## What we changed from the original copy

- `OpenAI Chat Model` called `gpt-4-1106-preview`, which OpenAI shut down on 23 October 2026. It now calls
  `gpt-5.6-sol`, the replacement on OpenAI's deprecations page, read on 12 November 2026.
- The model node was linked to a credential in its author's n8n. The link is gone, so select your own.
- Nothing else. The file has no Code node, and its expressions needed no repair.

## Before you start

- An n8n instance, on n8n Cloud or your own server.
- An OpenAI API key that can use `gpt-5.6-sol`.
- Web addresses the agent may read. The request is a plain download, with no browser behind it.

## 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 with your key and select it in `OpenAI Chat Model`.
3. Save the workflow. `HTTP_Request_Tool` calls the workflow by its own id, `{{ $workflow.id }}`, so it needs the saved copy.
4. Press Chat on the canvas and ask about a page, with its address in your message.

## How a run goes

1. `On new manual Chat Message` starts a run when you send a message in the chat. It works only from the editor.
2. `ReAct AI Agent` reads your message and decides whether it needs a page. It reasons in text, so each step shows in the
   chat's log, and it stops after 10 steps at most.
3. To read a page it calls `HTTP_Request_Tool` with a query string such as `?url=ADDRESS&method=simplified`. The tool's
   description asks for `method=full` or `method=simplified`.
4. The tool starts a run of the same workflow at `Execute Workflow Trigger`. `QUERY_PARAMS` splits the string into fields,
   and `CONFIG` sets `maxlimit` to 70000 unless the call gives another value.
5. `HTTP Request` downloads the address. `Is error?` sends a failed request to `Stringify error message`, which returns
   the error text, or an instruction to fix the query when no `url` came through.
6. `Exctract HTML Body` keeps the text between the body tags, and `Remove extra tags` drops scripts, styles, frames,
   embeds, audio, video, SVG and comments.
7. `Simplify?` checks whether the method contains "simplif". If so, `Simplify output` swaps every link address for `NOURL`
   and every image address for `NOIMG`.
8. `Convert to Markdown` turns the HTML into Markdown, and `Send Page Content` returns it, or `ERROR: PAGE CONTENT TOO LONG`
   when it is not shorter than `maxlimit`. The model answers from what comes back.

## Change the look

- The page limit: the 70000 in `CONFIG`, counted in characters of Markdown.
- How the agent uses the tool: the description in `HTTP_Request_Tool`.
- The model and its settings: `OpenAI Chat Model`. The options keep the original's timeout of 300000 ms, temperature of
  0.7 and frequency penalty of 0.3.
- What is stripped: the expression in `Remove extra tags`.
- Another way in: call the lower half from any workflow with an Execute Workflow node that sends a `query` field.

## Good to know

- Models: the original's model is gone, and OpenAI's page gives no rule on temperature or frequency penalty for the new
  one. If a run fails on either, clear it in the options of `OpenAI Chat Model`.
- Agent type: n8n marks the ReAct mode as deprecated and says it is removed in n8n v3. After that update, replace
  `ReAct AI Agent` with the current AI Agent and reconnect its model and tool.
- `Exctract HTML Body` fails on a reply with no body tag, such as JSON or plain text, and the tool then returns the error.
- A page that draws its text with JavaScript comes back nearly empty, since nothing runs the page's scripts.
- `HTTP Request` has Ignore SSL Issues on, so it also reads a page whose certificate fails. Turn it off in the node's
  options if you want the check.
- The agent fetches any address it is given, including ones on your own network. Only people who can open your n8n
  editor can use the chat.
- Read a site's terms before you point the agent at many of its pages.
- Each question can take several OpenAI calls, and every page that passes the limit goes into the model's input.
- Your questions and the pages' text go to OpenAI.
```

## What is in it

3 files, 20 KB, downloaded as a zip.

```text
NOTICE.md  591 B
README.md  5 KB
workflow.json  15 KB
```

## Workflow check

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

- Steps: 14 steps, starting when another workflow calls it or on a Manual Chat event
- AI: 1 step calls an AI model: ReAct AI Agent
- Sign-ins: Signs in to: OpenAI and Manual Chat
- API keys: No API key is left in the file
- Step types: Mindket’s checker reads all 7 of its step types

## Get it

- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/41f2908a-4284-41e1-87e1-c18a61ce12ed)
- [Its page on Mindket](https://mindket.com/p/41f2908a-4284-41e1-87e1-c18a61ce12ed)
