MCP server that extracts text content from web pages and converts HTML to markdown
Single tool with basic structure but significant gaps. Tool name 'extractWebPageText' follows verb_noun convention (+). Input schema present with URL type and format (+). However, description is adequate but generic (89 chars, below ideal 50-200 range for LLM optimization). Output schema not documented, LLMs cannot plan downstream calls. No error handling guidance beyond generic try-catch. No pagination, rate limiting, or result size constraints documented. Tool is read-only (good) but lacks annotations. Composition is single-purpose (good) but lacks context for when to use vs alternatives.
Extracts text content from a web page by fetching the URL, validating it returns HTML, and converting the HTML to markdown format
Missing parameter description for 'url' input. LLMs cannot infer that URL must be valid HTTP(S) or what happens if it returns non-HTML content.
Output schema not documented. Tool returns markdown text but LLMs have no formal schema to understand structure, fields, or downstream chaining requirements.
Error handling returns generic error text in response body rather than structured error with recovery guidance. LLM cannot distinguish retryable vs fatal failures.
No result size limits or pagination documented. Large HTML pages converted to markdown could exceed context windows without guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
Tool description (89 chars) lacks WHEN to use guidance and prerequisites. Does not explain when to call this vs other text extraction methods.