Skip to main content
Glama

Read a page as clean Markdown

domscout_extract_markdown

Loads a webpage and returns its main content as clean Markdown with metadata like title, word count, and quality flag. Use it for reading pages instead of screenshots.

Instructions

Costs 1 credit. Loads a page and returns its main content as clean Markdown, with the title, description, Open Graph fields, word count, an estimated token count, and a content-quality flag. This is the right tool for reading a page — it is the cheapest option and returns text rather than an image. Use domscout_capture_screenshot only when you actually need to SEE the page. Set fast:true for static pages (documentation, blogs, news, changelogs): same price, same result shape, roughly an order of magnitude faster, but it does not run JavaScript. Check meta.renderJs and meta.contentQuality in the result and retry without fast:true if the page came back thin.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesThe page to load. Must be http(s) and publicly reachable. Credentials in the URL (https://user:pass@host) are rejected; these tools capture as an anonymous visitor, so use the REST API directly if the page needs authentication.
fastNoSkip the browser and read the served HTML directly. Much faster and the same price, but JavaScript does not run, so a client-rendered page may come back empty. Cannot be combined with waitForSelector or delay, which need a live page.
delayNoExtra milliseconds to wait after load.
lazyScrollNoScroll the page first to trigger lazy-loaded content. Adds 1 credit. Needs a browser, so it cannot be combined with fast:true.
waitForSelectorNoWait for this CSS selector to appear before capturing.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.3

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations present, the description bears the full burden and handles it well: it discloses the 1-credit cost, the fast option's JavaScript limitation and identical result shape, and the retry behavior when a page comes back thin. These are behavioral traits that materially affect how an agent should invoke the tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences, all dense and non-redundant: cost, result contents, positioning versus screenshot, fast-mode tradeoff, and retry rule. The most decision-relevant facts are front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only page-loading tool with a fully documented parameter schema and no output schema, the description still names the returned fields, cost, sibling alternative, and failure-recovery workflow. Nothing necessary for correct selection or invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, and the description adds extra operational context for fast:true (static page types, same price/result shape, speed difference, retry if thin) beyond the schema's own text. It does not add field-level context for the other parameters, but the schema already documents them fully.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: it loads a page and returns its main content as clean Markdown, and it lists the exact fields in the result. It also distinguishes itself from its primary sibling by calling itself the cheapest option and noting it returns text rather than an image, so an agent can tell it apart from domscout_capture_screenshot.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says this is the right tool for reading a page, and tells the agent to use domscout_capture_screenshot only when visual inspection is needed. It also gives concrete fast:true guidance for static pages and instructs checking meta.renderJs and meta.contentQuality and retrying without fast:true when content is thin.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.