CyberNative public PDF accessibility check
Server Details
Check a PDF on a public website for the structure screen readers use.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 2 tools
The two tools serve clearly different intents: check_public_pdf inspects a single PDF's screen-reader structure, while quote_fix produces a price estimate for one to five PDFs. The descriptions explicitly separate diagnosis from pricing, so an agent should never confuse them.
Both names are snake_case verb-led forms (check_public_pdf, quote_fix), which is consistent enough. The slight mismatch is that check_public_pdf encodes its object while quote_fix does not mention PDFs at all, making it marginally less self-descriptive.
Two tools is thin even for this narrow purpose; the core 'check many PDFs' workflow has no batch counterpart to quote_fix's five-link capacity. The pair is coherent and well-scoped, but the surface feels minimal rather than complete.
The domain of 'check a public PDF's accessibility and quote remediation' is covered end to end: inspect, then price. Minor gaps remain, such as no batch inspection mode matching quote_fix's multi-link input and no way to retrieve or compare prior check results, but agents can work around these by calling check_public_pdf repeatedly.
Available Tools
2 toolscheck_public_pdfCheck a public PDFARead-onlyIdempotentInspect
Downloads one PDF from a public http or https link and reports the structure that screen readers use: whether the file is tagged, whether it has a document title and a language, how many images have no text description and on which pages, and reading-order signals (pages with columns are flagged for a person to check). Also reports the page count and which pages look scanned or contain tables. Use when the user gives a link to a PDF on a public website and asks about its accessibility or screen-reader structure. Does not open files behind a login, does not change the file, and does not say whether the file meets PDF/UA, WCAG or any law.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Link to one PDF on a public website: http or https, at most 2,048 characters. | |
| detail | No | When true, adds the page-by-page list. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly, idempotent, non-destructive and openWorld, and the description adds genuinely new behavioral context: it fetches remote content, enumerates the exact report contents, and explicitly refuses to render a compliance judgment. It does not cover failure behavior (unreachable link, oversized file, non-PDF response) or latency, which is the remaining gap for a network-fetching tool.
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?
Front-loaded with the verb and the full report inventory, then closes with the trigger condition and the exclusions. Every sentence carries information, though the long enumeration in the first sentence makes it denser than ideal for quick scanning.
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?
There is no output schema, so the description must carry the return-value burden and it does: it names each reported signal, including which pages contain undescribed images and which are flagged for human review. For a two-parameter read-only tool, an agent has everything needed to call it and interpret the result.
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 `url` (http/https, ≤2048 chars) and `detail` (adds page-by-page list) are fully documented in the schema. The description reinforces 'one PDF' and 'public http or https link' but adds nothing about the `detail` toggle or URL format beyond the schema, so 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 action (downloads one PDF from a public http/https link) and enumerates exactly what it reports: tagged status, title, language, images lacking alt text with page numbers, reading-order/column flags, page count, scanned pages, tables. The resource ('one public PDF') and scope are unambiguous, and it is clearly distinct from the unrelated sibling quote_fix.
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 trigger ('Use when the user gives a link to a PDF on a public website and asks about its accessibility or screen-reader structure') plus three explicit exclusions: no login-protected files, no modification, no PDF/UA, WCAG or legal compliance verdict. This is the full when/when-not pattern.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
quote_fixEstimate the price to make public PDFs accessibleARead-onlyIdempotentInspect
For one to five links to PDFs on public websites, counts pages by type and returns a price estimate from CyberNative AI LLC's published Terms for two options: an accessible web page made from the PDF (USD 6 per page with tables or scanned pages, USD 4 per other page), and, where the file qualifies, the same PDF with tags added (USD 4 per page, minimum USD 100 per order). Lists files and pages that are not converted, such as fillable forms, maps and drawings, with the reason. The estimate is not binding and nothing is ordered by calling this tool; the price is confirmed by email before any work. Use when the user asks what it would cost to have these PDFs made accessible.
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | One to five links to PDFs on public websites: http or https, at most 2,048 characters each. | |
| detail | No | When true, adds the page-by-page count for each file. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Well beyond the annotations, which only establish read-only/idempotent/non-destructive. The description discloses that the estimate is non-binding, that nothing is ordered, that pricing comes from published Terms with per-page rates and a USD 100 minimum, and that price is confirmed by email — exactly the side-effect-free guarantees an agent needs before invoking.
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?
Dense but front-loaded: the scope and pricing land in the first sentence, and the non-binding caveat precedes the usage trigger. It is longer than strictly necessary — the full per-page rate table could arguably be deferred — but each sentence carries information an agent cannot get elsewhere.
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?
There is no output schema, so the description carries the return-value burden and does so: page counts by type, two alternative price estimates, an exclusion list with reasons, and the non-binding status. Nothing material is missing for a 2-parameter estimation tool.
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%, so the schema already documents both `urls` and `detail` fully; baseline applies. The description reinforces the constraints ('one to five links to PDFs on public websites', per-page counting) and hints at output granularity ('lists files and pages'), but adds no syntax or semantics for `detail` beyond what the schema states.
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 action (counts pages by type, returns a price estimate) against a specific resource (public PDFs, one to five links) and enumerates the exact outputs: two pricing options plus a list of non-converted files. An agent can distinguish it from the sibling check_public_pdf (a validation/check tool) purely from this text.
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 the user asks what it would cost to have these PDFs made accessible,' which is a clear routing condition. It does not, however, mention the sibling check_public_pdf or state when this tool is the wrong choice (e.g. before a PDF has been validated), so no alternative is named.
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.
2 tool updates
- First observed
check_public_pdf - First observed
quote_fix
Related MCP Connectors
Scan a web page's markup for the WCAG failures ADA demand letters cite most often.
Check PDFs against PDF/UA-1 with veraPDF; see which failures an automatic fix removes; explain rules
HEAD a public URL and say whether it looks like a PDF. Body discarded.
PDF accessibility checks (veraPDF PDF/UA-1), auto-fix and Markdown conversion. EU-hosted.
Related MCP Servers
- AlicenseAqualityDmaintenanceRuns the free, independent before/after accessibility-overlay witness on any public URL to test if accessibility overlay widgets actually work.141 npmMIT
- FlicenseNot gradedqualityDmaintenanceFetches any public web page and provides SEO foundation snapshots and prose readability analysis.-
- AlicenseNot gradedqualityDmaintenanceRead-only observation of a single live URL: parses static HTML to report security posture, forms, links, accessibility signals, and leaks, with described fixes. SSRF-gated and safe, never executes JavaScript.59 npmMIT

SEO Score APIofficial
AlicenseNot gradedqualityCmaintenanceAutomated SEO, AEO, ADA auditing for your website or project.76 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.