Skip to main content
Glama

clean_page

Fetches a URL and returns clean, structured, agent-optimized content: readable markdown, plain text, metadata (author/date/site/word count), extracted links and images, an optional structured facts array, and a 0-100 quality score. Handles common failure modes (paywalls, bot-walls, empty JS shells) with clear typed errors instead of silently returning junk. PAID TOOL: $0.02 USDC per successful call via x402 (USDC on base). Call with no payment first to receive the exact payment requirements (HTTP 402), then retry with an X-PAYMENT header. Failed extractions are not charged.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesAbsolute URL of the page to extract (http/https only).
optionsNo

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?

With no annotations provided, the description fully carries the behavioral disclosure burden. It reveals that the tool is paid ($0.02 USDC via x402), explains the two-step payment flow, promises typed errors for common failure modes instead of 'silently returning junk', and states that failed extractions are not charged. This is far beyond the minimum.

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?

The description is relatively long but well-structured: core function and outputs first, then failure-mode handling, then payment details. Every sentence carries useful information. A bit dense, but the payment flow and output enumeration justify the length.

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?

Without an output schema, the description compensates by enumerating all return components (markdown, plain text, metadata, links, images, facts, quality score). It also covers payment behavior, error policy, and charging rules, so an agent has enough context to correctly invoke the tool and interpret results. Nothing critical is missing.

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?

The schema already provides descriptions for the required url and every nested option property (language, max_length, timeout_ms, extract_facts, include_images). The description adds only implicit hints, such as matching 'optional structured facts array' to extract_facts. Since schema covers most parameters, the description does not need to compensate much but also does not add significant parameter-level meaning.

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: 'Fetches a URL and returns clean, structured, agent-optimized content' with a detailed breakdown of outputs (markdown, metadata, links, images, facts, quality score). Clearly distinguishes itself from sibling tools health, list_capabilities, and pricing, which serve entirely different purposes.

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?

Provides clear context for when to use the tool (when you need to extract clean content from a URL) and includes important usage flow guidance (drop a no-payment call first to get 402 requirements, then retry with X-PAYMENT header). Does not explicitly state when not to use it or compare to alternatives, but siblings are unrelated, so the context is sufficient.

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.