extract_web_page
Read one public web page into title, headings, text, links and JSON-LD. robots.txt is honoured.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes |
Read one public web page into title, headings, text, links and JSON-LD. robots.txt is honoured.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the entire behavioral burden. It does add two useful facts beyond the schema: only public pages are readable and robots.txt is honoured, meaning a request can be legitimately refused. However, it says nothing about rate limits, whether JavaScript-rendered content is captured, content truncation, or how failures surface — significant gaps for a fetch tool with zero annotation coverage.
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 lean sentences with the returned payload front-loaded and the robots.txt caveat second. Nothing is redundant. It is arguably terse to a fault — the second sentence is a fragment that could have carried more behavioral detail at no length cost.
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?
The tool is simple (one parameter, no nested objects, no output schema), and the description covers scope, payload and one hard constraint. Given no annotations and no output schema, an agent still lacks information about failure modes, JavaScript rendering and size limits, which are the practical questions when scraping a page.
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 0% for the single required 'url' parameter, so the description must compensate. It constrains the target to a public web page, which usefully rules out intranet/authenticated URLs, but gives no format guidance and no hint of the 2000-character cap or how redirects are treated. Partial compensation only.
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?
The description names a specific verb (read) and resource (one public web page) and enumerates exactly what is returned: title, headings, text, links and JSON-LD. The scope word 'one' and 'public' bound the operation. Sibling tools are unrelated domains (financial facts, sanctions, propositions), so no sibling differentiation is required, though none is offered.
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?
Usage is only implied by the verb 'read' and the word 'public' — an agent can infer this is for fetching a single page's content rather than bulk crawling or authenticated pages. There is no explicit when-to-use statement, no statement of alternatives (e.g., any search or browsing sibling), and no note on what to do when a page cannot be fetched.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.