page2md
Server Details
Turn any webpage into clean Markdown for LLM/agent pipelines. Free tier; paid 1 USDC = 1000 req.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-03-26
- URL
TDQS
Scored across 3 tools
The tools are clearly distinct: convert fetches a URL, convert_raw handles existing HTML, and trial_key retrieves an API key. The _raw suffix and descriptions make the boundary between convert and convert_raw unambiguous.
All names use lowercase snake_case, and convert/convert_raw form a predictable pair. trial_key is less action-oriented but still clear and readable.
Three tools are well-scoped for a focused webpage-to-Markdown conversion service. Each tool has a distinct, necessary role and there is no unnecessary surface area.
The server covers both main conversion paths: fetching a URL and processing raw HTML, plus trial key provisioning. No obvious operational gaps exist for the stated page-to-Markdown purpose.
Available Tools
3 toolsconvertBInspect
Fetch a webpage and return it as clean Markdown. Use for any URL an LLM/agent needs to read.
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | page2md key (optional; free tier applies without one) | |
| url | Yes | http(s) URL of the page to convert |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It discloses that output is clean Markdown but says nothing about failure modes on non-HTML URLs, JS-rendered pages, rate limits, truncation of long pages, or what changes when a paid key is supplied versus free tier — all material for a fetch tool with no structured safety hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with zero waste; the core action and output format are front-loaded before the usage hint. Nothing is repeated or padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read tool with full schema coverage, the description covers purpose and return type adequately. It still omits behavioral edges an agent would want — key usage consequences and failure behavior — and offers no differentiation from its siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both the url and optional key parameters are already documented in the schema. The description adds no syntax, format, or behavioral detail about either parameter (e.g., what the key unlocks beyond 'free tier applies'), so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource+output format: 'Fetch a webpage and return it as clean Markdown.' An agent immediately knows the action and the return type. It does not differentiate from the sibling convert_raw, which presumably returns unprocessed content, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Use for any URL an LLM/agent needs to read' implies a usage context but gives no explicit when-not conditions and never names the sibling alternative convert_raw (likely the choice for raw HTML). The agent must infer the selection rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_rawAInspect
Convert raw HTML you already have into clean Markdown (no fetching).
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | ||
| html | Yes | raw HTML to convert |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose one meaningful trait: no network fetching occurs. Beyond that it is silent on what 'clean Markdown' means (which tags are stripped, how tables/scripts are handled), whether failures on malformed HTML are raised, and why a `key` parameter exists — likely auth or quota, which is never mentioned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the core action first and the disambiguating constraint immediately after. Zero wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool it covers the essentials: input source and output type (clean Markdown), so no output schema is needed. It remains incomplete on the unexplained `key` parameter and on error/conversion edge-case behavior, which an agent would need before calling with unfamiliar input.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 50%: `html` is documented in the schema, but `key` has no description anywhere. The description adds nothing about either parameter — no format notes for the HTML input, no indication of what `key` is or whether it is required for auth/quota. A gap this size warranted compensation and received none.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (convert HTML into Markdown) and adds the scoping qualifier 'raw HTML you already have (no fetching)', which distinguishes it from the sibling `convert` that presumably retrieves content. An agent can pick between them without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical 'no fetching' tells the agent the precondition for using this tool: content must already be in hand. It stops short of naming the `convert` sibling as the alternative for the fetch case, so routing is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trial_keyAInspect
Get a free 1000-request page2md key (1 per IP per day).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose the two most important traits: the grant size (1000 requests) and the rate limit (one per IP per day). It omits failure behavior (e.g., error when the daily limit is hit) and whether the key is returned inline or must be retrieved elsewhere.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with no waste; the quota and rate limit are packed into the parenthetical immediately after the verb+resource, so the key information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, zero-annotation tool with no output schema, this is nearly sufficient: the agent knows what it gets and the quota. The one real gap is what the call returns (a key string) and what happens on the daily-limit failure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters and the description makes no parameter claims, so the baseline of 4 applies. Nothing is misrepresented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get a free 1000-request page2md key') plus the quota, so the outcome is unambiguous. It never names the sibling tools (convert, convert_raw), but the purpose is so distinct that confusion is unlikely.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical '1 per IP per day' gives an implicit eligibility constraint, which is real usage guidance. However, it never says when an agent should call this versus the conversion siblings, nor what to do if a key was already claimed today.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
convert - First observed
convert_raw - First observed
trial_key
Related MCP Connectors
Web pages to Markdown, metadata and small crawls for agents. Free daily calls, then USDC x402/MPP.
Pay-per-request webpage-to-Markdown extraction for AI agents. $0.005 USDC via x402 on Solana.
Read any public web page as clean Markdown for LLMs. Respects robots.txt. Free tier; x402 paid API.
Any web page as clean Markdown for agents. Hosted, no install. Free tier; Pro adds JS rendering.
Related MCP Servers
- AlicenseAqualityBmaintenanceFetch any web page as clean Markdown or plain text, split it into heading-aware, token-bounded RAG chunks, convert raw HTML, and read page metadata. Uses the Web2MD API on RapidAPI with your own key (free BASIC plan).44153 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables AI agents and LLM pipelines to fetch and crawl webpages, strip extraneous content, and convert them into clean, link-preserving Markdown for fast, token-efficient scraping.MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI agents and LLM pipelines to fetch and crawl web pages, extract readable content, and convert it into clean Markdown with preserved links while minimizing token usage.MIT
- AlicenseNot gradedqualityCmaintenanceEnables converting any URL or website into clean, LLM-ready Markdown, supporting single-page scraping and full-site crawling for AI agents.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.