TidyTools Free Web Data
Server Details
Read URLs as Markdown, check AI crawler access, and find TidyTools tools. Free and keyless.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 3 tools
Each tool targets a clearly distinct operation: inspecting robots.txt policy, searching the TidyTools catalog, and extracting readable text from a URL. The descriptions even include explicit 'Not for...' clauses that head off the most likely confusions between the crawler-access check and actual content fetching.
All three names follow a consistent snake_case verb_phrase pattern (check_*, find_*, read_*) with clear noun objects. No mixed conventions or vague verbs.
Three tools is thin for a 'Web Data' server; the surface covers reading, catalog lookup, and policy checks but leaves obvious adjacent capabilities to paid upsells. It's defensible as a deliberately minimal free tier, but borderline as a standalone toolset.
Core free operations exist but notable gaps remain: no web/search discovery, no structured data extraction, and no crawling or monitoring (explicitly deferred to paid tools). An agent can accomplish single-URL reads and policy checks, but many web-data tasks dead-end at an upgrade link.
Available Tools
3 toolscheck_ai_crawler_accessARead-onlyInspect
Returns a site's robots.txt verdict for AI crawlers, including allowed and blocked bots, with a paid upgrade link. Use to inspect one public website's declared crawler policy. Not for proving that a CDN or firewall actually permits a bot, or for ongoing monitoring.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public website URL or domain. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so safety is covered; the description adds non-obvious behavior: the response includes an upsell link and reflects only declared policy rather than actual enforcement. That distinction is genuinely useful context a schema would not convey.
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?
Three tight clauses: what it returns, when to use it, and when not to. The scope/exclusion constraint is front-loaded after the purpose, with zero filler.
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?
With no output schema, the description carries the return-value burden and does describe the verdict contents (allowed/blocked bots, upgrade link). It stops short of describing the verdict format or whether a verdict is always returned for non-existent robots.txt, but covers what an agent needs to call it correctly.
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 100% for the single url parameter, so the schema does the heavy lifting. The description adds only that the target must be a 'public website' or domain, which is consistent with but not richer than the schema's 'Public website URL or domain.'
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 (returns a site's robots.txt verdict for AI crawlers) and enumerates what the result contains (allowed and blocked bots, upgrade link). Clearly distinguishable from siblings read_url and find_tidytools_tool, which do unrelated things.
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?
Explicitly scopes usage to inspecting one public website's declared crawler policy, then states two concrete exclusions: not for proving CDN/firewall enforcement, and not for ongoing monitoring. No alternative sibling is named, but the when/when-not boundaries are unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_tidytools_toolARead-onlyInspect
Returns matching tools from the current TidyTools catalog, with advertised prices and counted paid-product links. Use when you know a web-data task but not which TidyTools tool fits. Not for fetching web content or checking live product availability beyond the catalog's publication dates.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Keywords describing the task. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds genuinely useful behavior beyond that: what the results contain (advertised prices, counted paid-product links) and the freshness limitation (catalog publication dates, not live availability). That staleness caveat is exactly the kind of context annotations cannot express.
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?
Three sentences, each doing distinct work: what it returns, when to use it, when not to. The return/output characterization is front-loaded and there is no filler.
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?
With no output schema, the description correctly takes on the burden of describing the return payload (prices, counted paid-product links) and its staleness limits. For a single-parameter read tool with annotations covering the safety profile, nothing needed to call it correctly is missing.
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 100% for the single 'query' parameter, so the schema carries the semantics and baseline 3 applies. The description implies keyword-style task search but adds no syntax, formatting, or matching-behavior detail beyond the schema.
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: 'Returns matching tools from the current TidyTools catalog', and immediately qualifies the scope with what it returns (advertised prices, counted paid-product links). It also distinguishes itself from siblings by excluding web-content fetching and live availability checks.
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?
Gives an explicit when-to-use condition ('when you know a web-data task but not which TidyTools tool fits') and explicit when-not conditions ('not for fetching web content or checking live product availability'), which map onto the sibling tools read_url and check_ai_crawler_access.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_urlARead-onlyInspect
Returns a public page or PDF as Markdown, in chunks, with a paid upgrade link. Use when an agent needs one URL's readable text. Not for JavaScript-only pages or crawling whole sites; use the linked paid tool for those. Default chunk is 20,000 characters; start_index reads later chunks within the free 100,000-character window.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public HTTP(S) URL to read. | |
| max_chars | No | ||
| start_index | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint and openWorldHint, and the description adds substantial context beyond them: chunked return format, a 20,000-character default chunk, a 100,000-character free window, and the presence of a paid upgrade link. Practical constraints (no JS-only pages, no whole-site crawling) are disclosed as behavioral boundaries.
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?
Four dense sentences, zero filler: purpose and format first, then usage routing, then the chunking mechanics. Every sentence carries information the agent needs to call the tool correctly.
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?
With no output schema, the description carries return-format burden and does so (Markdown, chunked, defaults, free window), and annotations cover the safety profile. It remains silent on failure modes (non-public URLs, blocked pages) and any authentication expectations, which for an open-world fetch tool would be useful.
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 33% (only 'url' is documented), so the description must compensate. It meaningfully explains start_index ('reads later chunks within the free 100,000-character window') and restates the default chunk size, but max_chars is never mentioned and the free-window bound is only implied against start_index's 99999 maximum.
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+resource combination ('Returns a public page or PDF as Markdown') and specifies the output shape (chunked Markdown). It also distinguishes itself from a paid sibling ('the linked paid tool') for crawling, so an agent can tell it apart from alternatives without opening the 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?
It gives an explicit trigger ('Use when an agent needs one URL's readable text') and explicit exclusions ('Not for JavaScript-only pages or crawling whole sites'), plus the redirect to the paid alternative. This is the full when/when-not/alternative pattern.
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
check_ai_crawler_access - First observed
find_tidytools_tool - First observed
read_url
Related MCP Connectors
URL to clean markdown for LLMs: a polite, robots.txt-respecting web reader. Free, no API key
Read a URL as clean markdown, screenshot a website, url to PDF. Web access for agents, no signup.
URL to Markdown or structured JSON (schema.org/OG); renders SPA; batch reads. No signup/key.
Link-preview metadata and clean page-to-Markdown for any public URL. No install.
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables AI agents to read clean Markdown from any URL and assess source quality with AI-readability scores.623 npm1MIT
- AlicenseAqualityDmaintenanceConverts URLs and raw HTML to clean Markdown, enabling AI assistants to read web pages for summarization, analysis, or ingestion.27 npm1MIT
- AlicenseAqualityBmaintenanceGive your AI the ability to read the web. Fetches URLs as clean markdown with 9 fallback strategies.257 npm9MIT
- AlicenseNot gradedqualityAmaintenanceRead any web page and search the web for free. Routes each page across 28 web tools cheapest first (plain HTTP, Jina Reader, Chromium, stealth browsers) and checks it's the page you asked for before returning it. Paid tools stay off unless you add keys.3,554 PyPI75Apache 2.0
Glama MCP Gateway
Add one secure layer between your agents and this server.