Skip to main content
Glama

Read a web page

read_page
Read-onlyIdempotent

Get the main content of a web page as clean Markdown, without ads, navigation, pop-ups or comments, plus its title, author, date and word count. Use this whenever you need to read, quote or summarise a page. It is cheaper than fetching and cleaning the raw HTML yourself. Link addresses are left out to save tokens: set include_links to true when you need the URLs. A page longer than 60000 characters is cut at a paragraph and the result says so: set max_chars to read more. Reads public pages only. Counts as one document on the API key's plan.

Input Schema

NameRequiredDescriptionDefault
urlYesThe full address of the web page, starting with https://.
max_charsNoMost characters of Markdown to return (60000 is about 15,000 tokens). A longer page is cut at a paragraph or heading, and the result says so and gives the full length. Call again with a larger value, up to 400000, to read more; each call counts as a document.
include_linksNoKeep the page's link addresses in the Markdown, as [text](url). Off by default, because the addresses can be most of the output. Turn on when you need to cite or follow a link.

Output Schema

NameRequiredDescriptionDefault
urlNoThe address the content came from.
dateNoThe publication date, when the page gives one.
siteNoThe site's name.
imageNoThe page's lead image, when it has one.
titleYesThe page's title.
authorNoThe author, when the page names one.
excerptNoA one or two sentence summary of the page.
markdownYesThe main content of the page as Markdown, cut at max_chars when it is longer.
truncatedYesTrue when the Markdown was cut short at max_chars.
word_countYesWords in the main content.
total_charsYesLength in characters of the page's whole Markdown, cut or not.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/openWorld/non-destructive, so the bar is lower, yet the description goes well beyond: it discloses the 60000-character truncation and that the result says so, that link addresses are stripped by default, that only public pages are readable, and that each call counts as one document on the API key's plan.

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

Conciseness4/5

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

Front-loaded with purpose, then usage, then parameter caveats, then limits – a sensible order. It is somewhat long and repeats the max_chars truncation rule already spelled out in the schema, which is minor waste.

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 fetch tool with a full output schema, the description covers everything an agent needs: what content comes back, token/cost implications, truncation and how to extend, link handling, and the public-pages-only constraint.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents url, max_chars and include_links in detail. The description restates the max_chars truncation and include_links tradeoff but adds no syntax or format meaning the schema lacks; baseline 3 applies.

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?

States a specific verb and resource ('Get the main content of a web page as clean Markdown') and enumerates what comes with it (title, author, date, word count). An agent can immediately tell this is a page-reader and not the sibling write tool create_document.

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

Usage Guidelines4/5

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

Explicitly says when to use it ('whenever you need to read, quote or summarise a page') and gives a rationale ('cheaper than fetching and cleaning the raw HTML yourself'), plus one exclusion ('Reads public pages only'). It stops short of naming an alternative tool or covering non-public/JS-heavy pages.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.