Skip to main content
Glama
MarekCziba

Website to Markdown MCP

by MarekCziba

fetch_urls

Fetch multiple web pages concurrently and convert each to clean, LLM-ready Markdown, stripping navigation, ads, and boilerplate while extracting metadata.

Instructions

Fetch several web pages concurrently and convert each to Markdown.

Args: urls: List of absolute http(s) URLs. max_length: Maximum number of characters of Markdown per page.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlsYes
max_lengthNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior3/5

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 useful traits: concurrency, per-page Markdown conversion, and per-page length capping. However, it says nothing about failure behavior (does one bad URL abort the batch?), timeouts, rate limits, or authentication, which are material for a network-fetch 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?

One front-loaded sentence carries the purpose and behavior, followed by a compact Args block. No filler, no repetition of the tool name, and the concurrency fact appears before the parameter details.

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

Completeness3/5

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

An output schema exists, so return values need no explanation, and both parameters are covered. The remaining gap is batch edge-case behavior: no statement about result ordering, partial failures, or per-URL error reporting, which an agent needs before committing to a multi-URL call.

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 description coverage is 0%, so the description must compensate, and it does: 'urls' is constrained to absolute http(s) URLs (a real validation rule absent from the schema), and 'max_length' is defined semantically as character count of Markdown per page, clarifying it is not bytes or tokens.

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

Purpose4/5

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

States a specific verb and resource ('Fetch several web pages'), plus the transformation ('convert each to Markdown') and the concurrency behavior. The plural 'several' implicitly separates it from the singular sibling fetch_url, though the distinction is left to inference rather than stated.

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

Usage Guidelines3/5

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

Usage is only implied: 'several web pages' suggests this is the batch counterpart to fetch_url, and extract_metadata is never mentioned. There is no explicit when-to-use, when-not-to-use, or named alternative, so the agent must infer routing from the tool name.

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

Deploy Server

Other Tools