MCP tools
analog-mcp exposes these tools to MCP-compatible agents. To connect a
client, follow MCP setup.
Tool behavior
Section titled “Tool behavior”Start with analog to view a page, or assess
for help choosing a representation. Read the returned receipt, then use
the saved handle to preview, search, or open the content you need.
Saved-result tools read local data without fetching the page again.
The handle argument accepts an exact handle, a friendly name, or
latest. Use an exact handle when returning to the same save across
several calls; latest changes when another result is saved.
Tool arguments
Section titled “Tool arguments”Each example names the tool and shows its JSON arguments. These are arguments to supply through an MCP client; they are not Python calls or a complete protocol request.
The examples use one saved quotes page.
Replace
20260912-pvtqdw with the handle returned by your own call. Live page
content may change. Each combined example shows the complete text response;
clients may display structured responses differently.
Find a tool
analog
Section titled “analog”View a page as records, prose, and navigation. Fetching happens on your machine and structured extraction requires a connected account. The tool returns a receipt with section shapes, sample records, completeness disclosures, and a handle for the saved result.
The receipt’s JSON text is capped at 16,384 characters. Read its
records_complete, markdown_complete, and omissions fields before
treating it as the whole page. Saved-result tools below read more from
the handle. If saving fails, recovery remains visible and the receipt
does not claim that the handle is available.
pagination.collection_confirmed: false means a next-document link was
found, but it is not known to continue the same collection.
guidance: true may add one available call in next_actions. It is
off by default. Advice is added only if it fits after the selected
evidence, and never changes samples, omissions, capture settings or errors.
Pass pages to follow the page’s own next-page links. Each page costs
one extraction, and the receipt reports the sweep. expand_all opens
collapsed details; load_all follows load-more controls. See
Fetching for choosing these options.
analog(url: string, pages: integer = 1, expand_all: boolean = false, load_all: boolean = false, guidance: boolean = false)Accepted values:
pages— 1–50.
Tool: analog
The receipt reports ten quotes and four navigation records across three sections. Its samples provide a starting point; section 0 contains the quotes. Follow the returned handle to read their full values.
View the quotes page
{ "url": "https://quotes.toscrape.com/js/"}Output{ "schema_version": "29", "request_id": "9a67f5ce-90b9-43ab-a1c6-6d2347989551", "handle": "20260912-pvtqdw", "resolved_url": "https://quotes.toscrape.com/js/", "mode": "auto", "counts": { "sections": 3, "records": 14, "collections": 0, "markdown_characters": 1684, "withheld_areas": 0 }, "records_complete": true, "markdown_complete": false, "sections": [ { "index": 0, "record_count": 10, "items_detected": 10, "field_count": 3, "fields": [ { "name": "tags", "type": "text", "source": "rendered text", "multivalued": true, "hidden": false, "numeric": false }, { "name": "text", "type": "text", "source": "rendered text", "multivalued": false, "hidden": false, "numeric": false }, { "name": "text_2", "type": "text", "source": "rendered text", "multivalued": false, "hidden": false, "numeric": false } ], "fields_omitted": 0, "samples": [ { "record_index": 0, "fields": [ { "name": "tags", "value": [ "change", "deep-thoughts", "thinking", "world" ] }, { "name": "text", "value": "“The world as we have created it is a process of our thinking. It cannot be changed without changing our thinking.”" }, { "name": "text_2", "value": "by Albert Einstein" } ] }, { "record_index": 9, "fields": [ { "name": "tags", "value": [ "humor", "obvious", "simile" ] }, { "name": "text", "value": "“A day without sunshine is like, you know, night.”" }, { "name": "text_2", "value": "by Steve Martin" } ] }, { "record_index": 1, "fields": [ { "name": "tags", "value": [ "abilities", "choices" ] }, { "name": "text", "value": "“It is our choices, Harry, that show what we truly are, far more than our abilities.”" }, { "name": "text_2", "value": "by J.K. Rowling" } ] }, { "record_index": 2, "fields": [ { "name": "tags", "value": [ "inspirational", "life", "live", "miracle", "miracles" ] }, { "name": "text", "value": "“There are only two ways to live your life. One is as though nothing is a miracle. The other is as though everything is a miracle.”" }, { "name": "text_2", "value": "by Albert Einstein" } ] }, { "record_index": 3, "fields": [ { "name": "tags", "value": [ "aliteracy", "books", "classic", "humor" ] }, { "name": "text", "value": "“The person, be it gentleman or lady, who has not pleasure in a good novel, must be intolerably stupid.”" }, { "name": "text_2", "value": "by Jane Austen" } ] }, { "record_index": 4, "fields": [ { "name": "tags", "value": [ "be-yourself", "inspirational" ] }, { "name": "text", "value": "“Imperfection is beauty, madness is genius and it's better to be absolutely ridiculous than absolutely boring.”" }, { "name": "text_2", "value": "by Marilyn Monroe" } ] }, { "record_index": 5, "fields": [ { "name": "tags", "value": [ "adulthood", "success", "value" ] }, { "name": "text", "value": "“Try not to become a man of success. Rather become a man of value.”" }, { "name": "text_2", "value": "by Albert Einstein" } ] }, { "record_index": 6, "fields": [ { "name": "tags", "value": [ "life", "love" ] }, { "name": "text", "value": "“It is better to be hated for what you are than to be loved for what you are not.”" }, { "name": "text_2", "value": "by André Gide" } ] }, { "record_index": 7, "fields": [ { "name": "tags", "value": [ "edison", "failure", "inspirational", "paraphrased" ] }, { "name": "text", "value": "“I have not failed. I've just found 10,000 ways that won't work.”" }, { "name": "text_2", "value": "by Thomas A. Edison" } ] }, { "record_index": 8, "fields": [ { "name": "tags", "value": [ "misattributed-eleanor-roosevelt" ] }, { "name": "text", "value": "“A woman is like a tea bag; you never know how strong it is until it's in hot water.”" }, { "name": "text_2", "value": "by Eleanor Roosevelt" } ] } ], "records_omitted": 0, "disclosures": {} }, { "index": 1, "kind": "navigation", "placement": "header", "record_count": 2, "items_detected": 2, "field_count": 4, "fields": [ { "name": "text", "type": "text", "source": "rendered text", "multivalued": false, "hidden": false, "numeric": false }, { "name": "url", "type": "url", "source": "attribute:href", "multivalued": false, "hidden": false, "numeric": false }, { "name": "group", "type": "text", "source": "rendered text", "multivalued": false, "hidden": false, "numeric": false }, { "name": "depth", "type": "text", "source": "structure", "multivalued": false, "hidden": false, "numeric": true } ], "fields_omitted": 0, "samples": [ { "record_index": 0, "fields": [ { "name": "text", "value": "Quotes to Scrape" }, { "name": "url", "value": "https://quotes.toscrape.com/" }, { "name": "group", "value": "" }, { "name": "depth", "value": "0" } ] }, { "record_index": 1, "fields": [ { "name": "text", "value": "Login" }, { "name": "url", "value": "https://quotes.toscrape.com/login" }, { "name": "group", "value": "" }, { "name": "depth", "value": "0" } ] } ], "records_omitted": 0, "disclosures": {} }, { "index": 2, "kind": "navigation", "placement": "footer", "record_count": 2, "items_detected": 2, "field_count": 4, "fields": [ { "name": "text", "type": "text", "source": "rendered text", "multivalued": false, "hidden": false, "numeric": false }, { "name": "url", "type": "url", "source": "attribute:href", "multivalued": false, "hidden": false, "numeric": false }, { "name": "group", "type": "text", "source": "rendered text", "multivalued": false, "hidden": false, "numeric": false }, { "name": "depth", "type": "text", "source": "structure", "multivalued": false, "hidden": false, "numeric": true } ], "fields_omitted": 0, "samples": [ { "record_index": 0, "fields": [ { "name": "text", "value": "GoodReads.com" }, { "name": "url", "value": "https://www.goodreads.com/quotes" }, { "name": "group", "value": "" }, { "name": "depth", "value": "0" } ] }, { "record_index": 1, "fields": [ { "name": "text", "value": "Zyte" }, { "name": "url", "value": "https://www.zyte.com" }, { "name": "group", "value": "" }, { "name": "depth", "value": "0" } ] } ], "records_omitted": 0, "disclosures": {} } ], "outline": { "regions": 3, "extracted": 3 }, "pagination": { "current_page": 1, "max_page_seen": 2, "next_url": "https://quotes.toscrape.com/js/page/2/", "in_page_controls": false, "collection_confirmed": true }, "omissions": { "section_summaries": 0, "field_summaries": 0, "records": 0, "sample_fields": 0, "list_items": 0, "value_characters": 0, "warning_entries": 0, "browse_actions": 0, "markdown_characters": 1684 }}assess
Section titled “assess”Get a recommendation for how to view a page, together with measured Markdown size, task guidance, pagination, navigation, and available feed or sitemap information. This runs locally without sign-in or structured extraction and does not create a saved result.
Set probe_feed to false to skip the extra feed and sitemap checks.
The page is still fetched, and information declared in its HTML remains
available. Assess a page explains how to act on the result.
assess(url: string, probe_feed: boolean = true)Tool: assess
The recommendation is markdown for a direct read. The pagination
information also reports a next page. Choose records when you want to
search quotes by field or compare items; the recommendation is advice.
Check how to read the quotes page
{ "url": "https://quotes.toscrape.com/js/"}Output{ "recommendation": "markdown", "est_markdown_tokens": 426, "platform_feed_hint": null, "feed_probe": null, "sitemap_probe": { "status": "none_declared", "sitemaps": [] }, "declared_feeds": [], "pagination": { "current_page": 1, "max_page_seen": 2, "next_url": "https://quotes.toscrape.com/js/page/2/", "stated_total": null, "stated_total_source": null, "in_page_controls": false, "collection_confirmed": true }, "navigation_probe": { "status": "found", "regions": 2, "destinations": [ { "label": "Next →", "url": "https://quotes.toscrape.com/js/page/2/" }, { "label": "GoodReads.com", "url": "https://www.goodreads.com/quotes" }, { "label": "Zyte", "url": "https://www.zyte.com" } ], "truncated": false }, "guidance": "This page as markdown: ~426 tokens (measured). Repeating structure: substantial.\n- pagination: this looks like page 1 of a paginated collection (its links reach page 2) — these records cover this page only. Analog can follow the site's own next links and merge the pages into one result; call `analog` again with the same `url` and `pages: 2`.\nTask-by-task guidance (records vs markdown vs feeds): https://getanalog.io/docs/assess/"}analog_history
Section titled “analog_history”Recover a saved handle or friendly name from recent result metadata, newest first. The response includes the URL, save time, section count, and record count, without returning page content.
limit bounds the number of entries. An empty history returns an empty
list; it does not fetch anything.
analog_history(limit: integer = 20)Accepted values:
limit— at least 0.
Tool: analog_history
This capture used a separate local store containing only the quotes
page, so requesting up to three entries returns one. The text response
is a list; structured responses contain the same list under entries.
Find a recent save
{ "limit": 3}Output[ { "handle": "20260912-pvtqdw", "url": "https://quotes.toscrape.com/js/", "saved_at": "2026-09-12T01:21:00.768156+00:00", "name": null, "sections": 3, "records": 14 }]analog_open
Section titled “analog_open”Read the full saved result as structured JSON, including its ordered sections, records, Markdown, collections, and coverage information. This is the complete-result view, so its response can be large.
Use analog_describe to get your bearings, or
analog_section and analog_find
when you already know what you want to read.
An unreadable save fails with recovery guidance based on its recorded source.
Browser-backed saves can use analog to create a new capture; this does not
restore earlier browser state or capture settings. Supplied pages must be
recreated through their original capture workflow: these MCP tools cannot
ingest supplied HTML or capture files. The store retains neither the input
file nor its path. Unknown acquisition is identified as unknown, and recovery
never runs automatically.
analog_open(handle: string)Tool: analog_open
Unlike the first receipt, this response contains the full saved
records and Markdown. The quotes are in structured_content[0].
The empty collections list means this save has no collection to open.
Open the saved quotes page
{ "handle": "20260912-pvtqdw"}Output{ "schema_version": "29", "request_id": "9a67f5ce-90b9-43ab-a1c6-6d2347989551", "collections": [], "structured_content": [ { "records": [ { "tags": [ "change", "deep-thoughts", "thinking", "world" ], "text": "“The world as we have created it is a process of our thinking. It cannot be changed without changing our thinking.”", "text_2": "by Albert Einstein" }, { "tags": [ "abilities", "choices" ], "text": "“It is our choices, Harry, that show what we truly are, far more than our abilities.”", "text_2": "by J.K. Rowling" }, { "tags": [ "inspirational", "life", "live", "miracle", "miracles" ], "text": "“There are only two ways to live your life. One is as though nothing is a miracle. The other is as though everything is a miracle.”", "text_2": "by Albert Einstein" }, { "tags": [ "aliteracy", "books", "classic", "humor" ], "text": "“The person, be it gentleman or lady, who has not pleasure in a good novel, must be intolerably stupid.”", "text_2": "by Jane Austen" }, { "tags": [ "be-yourself", "inspirational" ], "text": "“Imperfection is beauty, madness is genius and it's better to be absolutely ridiculous than absolutely boring.”", "text_2": "by Marilyn Monroe" }, { "tags": [ "adulthood", "success", "value" ], "text": "“Try not to become a man of success. Rather become a man of value.”", "text_2": "by Albert Einstein" }, { "tags": [ "life", "love" ], "text": "“It is better to be hated for what you are than to be loved for what you are not.”", "text_2": "by André Gide" }, { "tags": [ "edison", "failure", "inspirational", "paraphrased" ], "text": "“I have not failed. I've just found 10,000 ways that won't work.”", "text_2": "by Thomas A. Edison" }, { "tags": [ "misattributed-eleanor-roosevelt" ], "text": "“A woman is like a tea bag; you never know how strong it is until it's in hot water.”", "text_2": "by Eleanor Roosevelt" }, { "tags": [ "humor", "obvious", "simile" ], "text": "“A day without sunshine is like, you know, night.”", "text_2": "by Steve Martin" } ], "fields": { "tags": { "type": "text", "source": "rendered text", "multivalued": true, "traits": [], "hidden": false, "numeric": false, "unit": null, "table_group": null }, "text": { "type": "text", "source": "rendered text", "multivalued": false, "traits": [], "hidden": false, "numeric": false, "unit": null, "table_group": null }, "text_2": { "type": "text", "source": "rendered text", "multivalued": false, "traits": [], "hidden": false, "numeric": false, "unit": null, "table_group": null } }, "field_normalized": {}, "label": "", "label_url": "", "merge_note": "", "kind": "", "placement": "", "xpath": "/html/body/div", "items_detected": 10, "withheld_columns": [], "withheld_visual": null, "withheld_records": 0, "declared_total_rows": null, "declared_total_columns": null, "structural_outliers": [], "markdown": "# [Quotes to Scrape](https://quotes.toscrape.com/)\n\n[Login](https://quotes.toscrape.com/login)\n\n“The world as we have created it is a process of our thinking. It cannot be changed without changing our thinking.”by Albert Einstein\n\nTags: change deep-thoughts thinking world\n\n“It is our choices, Harry, that show what we truly are, far more than our abilities.”by J.K. Rowling\n\nTags: abilities choices\n\n“There are only two ways to live your life. One is as though nothing is a miracle. The other is as though everything is a miracle.”by Albert Einstein\n\nTags: inspirational life live miracle miracles\n\n“The person, be it gentleman or lady, who has not pleasure in a good novel, must be intolerably stupid.”by Jane Austen\n\nTags: aliteracy books classic humor\n\n“Imperfection is beauty, madness is genius and it's better to be absolutely ridiculous than absolutely boring.”by Marilyn Monroe\n\nTags: be-yourself inspirational\n\n“Try not to become a man of success. Rather become a man of value.”by Albert Einstein\n\nTags: adulthood success value\n\n“It is better to be hated for what you are than to be loved for what you are not.”by André Gide\n\nTags: life love\n\n“I have not failed. I've just found 10,000 ways that won't work.”by Thomas A. Edison\n\nTags: edison failure inspirational paraphrased\n\n“A woman is like a tea bag; you never know how strong it is until it's in hot water.”by Eleanor Roosevelt\n\nTags: misattributed-eleanor-roosevelt\n\n“A day without sunshine is like, you know, night.”by Steve Martin\n\nTags: humor obvious simile\n\n- [Next →](https://quotes.toscrape.com/js/page/2/)" }, { "records": [ { "text": "Quotes to Scrape", "url": "https://quotes.toscrape.com/", "group": "", "depth": "0" }, { "text": "Login", "url": "https://quotes.toscrape.com/login", "group": "", "depth": "0" } ], "fields": { "text": { "type": "text", "source": "rendered text", "multivalued": false, "traits": [], "hidden": false, "numeric": false, "unit": null, "table_group": null }, "url": { "type": "url", "source": "attribute:href", "multivalued": false, "traits": [], "hidden": false, "numeric": false, "unit": null, "table_group": null }, "group": { "type": "text", "source": "rendered text", "multivalued": false, "traits": [], "hidden": false, "numeric": false, "unit": null, "table_group": null }, "depth": { "type": "text", "source": "structure", "multivalued": false, "traits": [], "hidden": false, "numeric": true, "unit": null, "table_group": null } }, "field_normalized": { "depth": [ 0.0, 0.0 ] }, "label": "", "label_url": "", "merge_note": "", "kind": "navigation", "placement": "header", "xpath": "/html/body/div/div[1]", "items_detected": 2, "withheld_columns": [], "withheld_visual": null, "withheld_records": 0, "declared_total_rows": null, "declared_total_columns": null, "structural_outliers": [], "markdown": "# [Quotes to Scrape](https://quotes.toscrape.com/)\n\n[Login](https://quotes.toscrape.com/login)" }, { "records": [ { "text": "GoodReads.com", "url": "https://www.goodreads.com/quotes", "group": "", "depth": "0" }, { "text": "Zyte", "url": "https://www.zyte.com", "group": "", "depth": "0" } ], "fields": { "text": { "type": "text", "source": "rendered text", "multivalued": false, "traits": [], "hidden": false, "numeric": false, "unit": null, "table_group": null }, "url": { "type": "url", "source": "attribute:href", "multivalued": false, "traits": [], "hidden": false, "numeric": false, "unit": null, "table_group": null }, "group": { "type": "text", "source": "rendered text", "multivalued": false, "traits": [], "hidden": false, "numeric": false, "unit": null, "table_group": null }, "depth": { "type": "text", "source": "structure", "multivalued": false, "traits": [], "hidden": false, "numeric": true, "unit": null, "table_group": null } }, "field_normalized": { "depth": [ 0.0, 0.0 ] }, "label": "", "label_url": "", "merge_note": "", "kind": "navigation", "placement": "footer", "xpath": "/html/body/footer", "items_detected": 2, "withheld_columns": [], "withheld_visual": null, "withheld_records": 0, "declared_total_rows": null, "declared_total_columns": null, "structural_outliers": [], "markdown": "Quotes by: [GoodReads.com](https://www.goodreads.com/quotes)\n\nMade with ❤ by [Zyte](https://www.zyte.com)" } ], "sections": [ { "type": "records", "structured_content_index": 0 }, { "type": "records", "structured_content_index": 1 }, { "type": "records", "structured_content_index": 2 } ], "outline": [ { "label": "", "kind": "item", "xpath": "/html/body/div", "fate": "extracted", "section_index": 0, "reason": "", "item_count": 10, "superseded_by": null, "children": [ { "label": "", "kind": "header", "xpath": "/html/body/div/div[1]", "fate": "extracted", "section_index": 1, "reason": "", "item_count": 2, "superseded_by": null, "children": [] } ] }, { "label": "", "kind": "footer", "xpath": "/html/body/footer", "fate": "extracted", "section_index": 2, "reason": "", "item_count": 2, "superseded_by": null, "children": [] } ], "document_section_plan": [ { "source": "structured_content", "index": 0 }, { "source": "structured_content", "index": 1 }, { "source": "structured_content", "index": 2 } ], "withheld_areas": 0, "subject_withheld": "below_evidence_bar", "warnings": [], "browse_actions": [], "mode": "auto", "resolved_url": "https://quotes.toscrape.com/js/", "document_view": { "patch": "KLUv/QCIXQUAiDwtYW5hbG9nLW5vZGU9ImJ5M6DQZRoDEE4IYmbED+4wRgLKaeXxsDgbKVoRBSkuLcXpm0YUOrI3spoIpQm7RFu6ZvYQTr0/Kh7KmIMA5WjRdEj3/wGKO0DDQUK6h1G+E82GMus7CAUqkNrOwZTTQZPhbOEbQH1u0WAgj1zDq0DWlPsZTLlXNBZ2BscgVXBOk0YqB2wE44XCVdhSQIiX+gVCFeOJpLqp4SQS", "sha256": "23d0cae2cad42487b8386bd24ba9339df82fcc098654929a95979dd37389fe01" }, "pagination": { "current_page": 1, "max_page_seen": 2, "next_url": "https://quotes.toscrape.com/js/page/2/", "stated_total": null, "stated_total_source": null, "in_page_controls": false, "collection_confirmed": true }, "page_sweep": null, "markdown": "# [Quotes to Scrape](https://quotes.toscrape.com/)\n\n[Login](https://quotes.toscrape.com/login)\n\n“The world as we have created it is a process of our thinking. It cannot be changed without changing our thinking.”by Albert Einstein\n\nTags: change deep-thoughts thinking world\n\n“It is our choices, Harry, that show what we truly are, far more than our abilities.”by J.K. Rowling\n\nTags: abilities choices\n\n“There are only two ways to live your life. One is as though nothing is a miracle. The other is as though everything is a miracle.”by Albert Einstein\n\nTags: inspirational life live miracle miracles\n\n“The person, be it gentleman or lady, who has not pleasure in a good novel, must be intolerably stupid.”by Jane Austen\n\nTags: aliteracy books classic humor\n\n“Imperfection is beauty, madness is genius and it's better to be absolutely ridiculous than absolutely boring.”by Marilyn Monroe\n\nTags: be-yourself inspirational\n\n“Try not to become a man of success. Rather become a man of value.”by Albert Einstein\n\nTags: adulthood success value\n\n“It is better to be hated for what you are than to be loved for what you are not.”by André Gide\n\nTags: life love\n\n“I have not failed. I've just found 10,000 ways that won't work.”by Thomas A. Edison\n\nTags: edison failure inspirational paraphrased\n\n“A woman is like a tea bag; you never know how strong it is until it's in hot water.”by Eleanor Roosevelt\n\nTags: misattributed-eleanor-roosevelt\n\n“A day without sunshine is like, you know, night.”by Steve Martin\n\nTags: humor obvious simile\n\n- [Next →](https://quotes.toscrape.com/js/page/2/)\n\nQuotes by: [GoodReads.com](https://www.goodreads.com/quotes)\n\nMade with ❤ by [Zyte](https://www.zyte.com)", "handle": "20260912-pvtqdw"}analog_export
Section titled “analog_export”Return a saved result in another format. JSON contains the full structured result; CSV and YAML contain pooled records; Markdown contains the page’s Markdown with any required disclosures. The tool returns text and does not write an export file.
CSV and YAML require compatible section fields. When sections cannot
be pooled, use JSON for the whole result or
analog_section to read one section.
analog_export(handle: string, fmt: string = "json")Accepted values:
fmt— one of"json","csv","yaml","md","markdown".
Tool: analog_export
This is the returned Markdown text, including the quotes, tags, and navigation. It uses the saved page rather than fetching the URL again.
Read the saved page as Markdown
{ "handle": "20260912-pvtqdw", "fmt": "md"}Output# [Quotes to Scrape](https://quotes.toscrape.com/)
[Login](https://quotes.toscrape.com/login)
“The world as we have created it is a process of our thinking. It cannot be changed without changing our thinking.”by Albert Einstein
Tags: change deep-thoughts thinking world
“It is our choices, Harry, that show what we truly are, far more than our abilities.”by J.K. Rowling
Tags: abilities choices
“There are only two ways to live your life. One is as though nothing is a miracle. The other is as though everything is a miracle.”by Albert Einstein
Tags: inspirational life live miracle miracles
“The person, be it gentleman or lady, who has not pleasure in a good novel, must be intolerably stupid.”by Jane Austen
Tags: aliteracy books classic humor
“Imperfection is beauty, madness is genius and it's better to be absolutely ridiculous than absolutely boring.”by Marilyn Monroe
Tags: be-yourself inspirational
“Try not to become a man of success. Rather become a man of value.”by Albert Einstein
Tags: adulthood success value
“It is better to be hated for what you are than to be loved for what you are not.”by André Gide
Tags: life love
“I have not failed. I've just found 10,000 ways that won't work.”by Thomas A. Edison
Tags: edison failure inspirational paraphrased
“A woman is like a tea bag; you never know how strong it is until it's in hot water.”by Eleanor Roosevelt
Tags: misattributed-eleanor-roosevelt
“A day without sunshine is like, you know, night.”by Steve Martin
Tags: humor obvious simile
- [Next →](https://quotes.toscrape.com/js/page/2/)
Quotes by: [GoodReads.com](https://www.goodreads.com/quotes)
Made with ❤ by [Zyte](https://www.zyte.com)analog_section
Section titled “analog_section”Read one section’s full records and field schema. index is
zero-based in structured_content, in page order. Use the receipt,
analog_describe, or analog_open
to find the relevant section before choosing its index.
Section numbers belong to this save. A later fetch may organize the page differently.
analog_section(handle: string, index: integer)Accepted values:
index— at least 0.
Tool: analog_section
Section 0 contains all ten quote records and their field definitions. The navigation sections are outside this response.
Read just the quotes
{ "handle": "20260912-pvtqdw", "index": 0}Output{ "records": [ { "tags": [ "change", "deep-thoughts", "thinking", "world" ], "text": "“The world as we have created it is a process of our thinking. It cannot be changed without changing our thinking.”", "text_2": "by Albert Einstein" }, { "tags": [ "abilities", "choices" ], "text": "“It is our choices, Harry, that show what we truly are, far more than our abilities.”", "text_2": "by J.K. Rowling" }, { "tags": [ "inspirational", "life", "live", "miracle", "miracles" ], "text": "“There are only two ways to live your life. One is as though nothing is a miracle. The other is as though everything is a miracle.”", "text_2": "by Albert Einstein" }, { "tags": [ "aliteracy", "books", "classic", "humor" ], "text": "“The person, be it gentleman or lady, who has not pleasure in a good novel, must be intolerably stupid.”", "text_2": "by Jane Austen" }, { "tags": [ "be-yourself", "inspirational" ], "text": "“Imperfection is beauty, madness is genius and it's better to be absolutely ridiculous than absolutely boring.”", "text_2": "by Marilyn Monroe" }, { "tags": [ "adulthood", "success", "value" ], "text": "“Try not to become a man of success. Rather become a man of value.”", "text_2": "by Albert Einstein" }, { "tags": [ "life", "love" ], "text": "“It is better to be hated for what you are than to be loved for what you are not.”", "text_2": "by André Gide" }, { "tags": [ "edison", "failure", "inspirational", "paraphrased" ], "text": "“I have not failed. I've just found 10,000 ways that won't work.”", "text_2": "by Thomas A. Edison" }, { "tags": [ "misattributed-eleanor-roosevelt" ], "text": "“A woman is like a tea bag; you never know how strong it is until it's in hot water.”", "text_2": "by Eleanor Roosevelt" }, { "tags": [ "humor", "obvious", "simile" ], "text": "“A day without sunshine is like, you know, night.”", "text_2": "by Steve Martin" } ], "fields": { "tags": { "type": "text", "source": "rendered text", "multivalued": true, "traits": [], "hidden": false, "numeric": false, "unit": null, "table_group": null }, "text": { "type": "text", "source": "rendered text", "multivalued": false, "traits": [], "hidden": false, "numeric": false, "unit": null, "table_group": null }, "text_2": { "type": "text", "source": "rendered text", "multivalued": false, "traits": [], "hidden": false, "numeric": false, "unit": null, "table_group": null } }, "field_normalized": {}, "label": "", "label_url": "", "merge_note": "", "kind": "", "placement": "", "xpath": "/html/body/div", "items_detected": 10, "withheld_columns": [], "withheld_visual": null, "withheld_records": 0, "declared_total_rows": null, "declared_total_columns": null, "structural_outliers": []}analog_collection
Section titled “analog_collection”Read one collection as canonical records with their member sections. Collections combine compatible page areas into a deduplicated dataset while retaining where those records appeared. A collection does not have a single physical location on the page.
index is zero-based in the result’s collections list, which is
ordered by the first member section. It is separate from a section
index. Check analog_open for available collections;
some results have none.
analog_collection(handle: string, index: integer)Accepted values:
index— at least 0.
The quotes-page example has no collections. For a save that does,
replace <handle> with its handle and choose an index from its
collections list:
Tool: analog_collection
Read the first reported collection
{ "handle": "<handle>", "index": 0}The response includes records, fields, and section_indices,
plus record and placement counts. Use section_indices with
analog_section when you need to inspect an
individual member section.
analog_find
Section titled “analog_find”Search saved records and Markdown sections in page order. Matching is a case-insensitive substring search; special characters match literally. Results include source attribution so you can return to the relevant section.
Pass field to search one record field. Without it, the search covers
all record fields and Markdown sections. A field that does not exist
returns an explanatory error.
analog_find(handle: string, pattern: string, field: string | null = null)Tool: analog_find
In this save, text_2 contains author names. The matching record
includes its full quote and _source section. The text response is a
list; structured responses contain the same list under matches.
Find the quote by Jane Austen
{ "handle": "20260912-pvtqdw", "pattern": "Jane Austen", "field": "text_2"}Output[ { "tags": [ "aliteracy", "books", "classic", "humor" ], "text": "“The person, be it gentleman or lady, who has not pleasure in a good novel, must be intolerably stupid.”", "text_2": "by Jane Austen", "_source": "structured_content[0]" }]analog_describe
Section titled “analog_describe”Preview a saved result’s sections and field metadata in page order. Fields show names, types, list shapes, and non-null coverage when sparse. Read a section or the full result for values. This tool returns a text preview.
Markdown regions appear in page order with their available labels, roles,
and rendered sizes. Read their text through analog_open or analog_export.
Printed section[N] identifiers keep the record indices used by
analog_section; prose entries do not change them.
complete: true includes hidden fields in the summary. By default they are
counted but not listed. It does not turn the preview into a full-result read.
guidance: true may add one available next action. It is off by default;
field metadata, coverage notes and necessary recovery stay the same.
analog_describe(handle: string, complete: boolean = false, guidance: boolean = false)Tool: analog_describe
The preview locates the quotes in section 0 and identifies two
navigation sections.
analog_section returns all ten quotes in full.
Get your bearings in the saved page
{ "handle": "20260912-pvtqdw"}Outputpagination: this looks like page 1 of a paginated collection (its links reach page 2) — these records cover this page only.
3 sections extracted.
section[0] 10 records · 3 fields fields: tags:text[], text:text, text_2:text
section[1] navigation 2 links (header) · 4 fields fields: text:text, url:url, group:text, depth:text
section[2] navigation 2 links (footer) · 4 fields fields: text:text, url:url, group:text, depth:text
(A single-subject record was also weighed and withheld — Analog couldn't verify enough of the page's facts for a record we'd trust.)analog_feedback
Section titled “analog_feedback”Send a quality report or feature request to Analog. Submitting requires a connected account and returns a confirmation with a report ID.
For extraction_quality, supply the affected URL and at least one
reason label. A quality report includes the URL you explicitly submit;
it never includes page content. The optional note adds context.
For feature_request, supply a non-empty note and omit url and
labels. See Feedback for choosing what to report.
analog_feedback(kind: string, url: string | null = null, labels: list[string] | null = null, note: string = "")Accepted values:
kind— one of"extraction_quality","feature_request".labels— one of"undetected_block","under_rendered","no_records_found","poor_field_naming","misfielded_values","page_chrome_in_records","over_extraction","under_extraction","wrong_content_extracted","garbled_markdown","other".
Replace the placeholder with the request you want to send:
Tool: analog_feedback
Send a feature request
{ "kind": "feature_request", "note": "<your-request>"}A successful submission returns a confirmation and an opaque report ID.