anaksor-ocr
Sokheng · Kit
Reads Khmer and English text from documents, receipts and photos of signs, using a detector for text lines and a recogniser for each line. Suits developers who…
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 . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.
Chat message
It starts when you send a message in n8n’s chat:
An answer in the chat drawn from the page you pointed at, read as trimmed Markdown
What you need before you start.
Language model
Runs gpt-5.6-sol as the agent’s model, which decides when to read a page and writes the answer.
NeedsOpenAI API key
Checked by Mindket on 13 Nov 2026
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.
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.
| 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.
Any n8n that can reach OpenAI and the sites you want to read will run it. The answers appear in the chat.
query fieldDownload saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Setup is one credential and one save.
| Need | Detail |
|---|---|
| n8n | On n8n Cloud or on a server of your own |
| OpenAI | An API key that can use gpt-5.6-sol |
workflow.json.OpenAI Chat Model.HTTP_Request_Tool calls the workflow by its own id, so it needs the saved copy.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.
| 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 |
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.
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.
| 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 |
The original copy’s model is shut down, and its agent type is on its way out of n8n.
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 modelReAct AI Agent with the current AI Agent and reconnect its model and toolHTTP 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 checkAn 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.
workflow.json: the workflow as n8n exports it, 20 nodes, four of them sticky notes. It holds no credential. TheExecute Workflow Trigger.README.md: these notes.OpenAI Chat Model called gpt-4-1106-preview, which OpenAI shut down on 23 October 2026. It now callsgpt-5.6-sol, the replacement on OpenAI's deprecations page, read on 12 November 2026.gpt-5.6-sol.workflow.json.OpenAI Chat Model.HTTP_Request_Tool calls the workflow by its own id, {{ $workflow.id }}, so it needs the saved copy.On new manual Chat Message starts a run when you send a message in the chat. It works only from the editor.ReAct AI Agent reads your message and decides whether it needs a page. It reasons in text, so each step shows in theHTTP_Request_Tool with a query string such as ?url=ADDRESS&method=simplified. The tool'smethod=full or method=simplified.Execute Workflow Trigger. QUERY_PARAMS splits the string into fields,CONFIG sets maxlimit to 70000 unless the call gives another value.HTTP Request downloads the address. Is error? sends a failed request to Stringify error message, which returnsurl came through.Exctract HTML Body keeps the text between the body tags, and Remove extra tags drops scripts, styles, frames,Simplify? checks whether the method contains "simplif". If so, Simplify output swaps every link address for NOURLNOIMG.Convert to Markdown turns the HTML into Markdown, and Send Page Content returns it, or ERROR: PAGE CONTENT TOO LONGmaxlimit. The model answers from what comes back.CONFIG, counted in characters of Markdown.HTTP_Request_Tool.OpenAI Chat Model. The options keep the original's timeout of 300000 ms, temperature ofRemove extra tags.query field.OpenAI Chat Model.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.HTTP Request has Ignore SSL Issues on, so it also reads a page whose certificate fails. Turn it off in the node'sNOTICE.md 591 B README.md 5 KB workflow.json 15 KB
Sokheng · Kit
Reads Khmer and English text from documents, receipts and photos of signs, using a detector for text lines and a recogniser for each line. Suits developers who…
Qwen · Kit
Qwen2.5-7B-Instruct as GGUF files in eight quantization sizes, to chat with locally through llama.cpp. For people who want a capable 7.6B model on their own co…
ACE-Step · Kit
Generates music from text with a 4B diffusion decoder, 50 steps and guidance control, aiming for higher audio quality than the base. For creators with a GPU of…
AbdomenAtlas · Kit
Detects and outlines tumors in 9 organs on CT scans, trained with the R-Super method that learns from radiology reports. A research model for medical imaging g…
dBenf · Kit
Answers typed questions about satellite image patches from all 12 Sentinel-2 bands, returning a probability for each option without writing text. A Qwen3.5-0.8…
zimmerk4 · Kit
Plays the full game Getting Over It from the bottom to the end with a small trained policy network that learned inside a JAX physics simulator. For reinforceme…