# AgentReader

> Pages your agent's fetch can't read (JS-only, consent walls, PDFs) as clean, compact Markdown/JSON.

- name: xyz.agentreader/agentreader
- version: 0.4.1
- connection class: R0 (autonomous)
- trust: 83/100 flags: no-repository
- quality: 77/100 (new)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/xyz.agentreader%2Fagentreader
- tools: https://api.protogrid.dev/v1/servers/xyz.agentreader%2Fagentreader/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "agentreader": {
      "type": "http",
      "url": "https://agentreader.xyz/mcp",
      "headers": {
        "Authorization": "Bearer ${AGENTREADER_TOKEN}"
      }
    }
  }
}
```

Placeholders to fill: `${AGENTREADER_TOKEN}`.

## Trust

- hygiene: 80
- liveness: 100
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-100% +updated-2d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 77/100 (new)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 79 (weight 30)

- pass `tools.descriptions`: every tool has a description
- warn `tools.description_length`: 1 tools have descriptions over 1,024 characters, which crowds the context
- pass `tools.schemas`: every tool has an object input schema
- warn `tools.annotations`: only 2 of 3 tools declare readOnlyHint or destructiveHint
- warn `tools.directory_hints`: 2 of 3 tools declare all four hints; missing: get_balance (readOnlyHint, destructiveHint, idempotentHint, openWorldHint)
- pass `tools.token_cost`: about 986 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: n/a (weight 15)

- n/a `stability.changes`, `stability.rug_pull`: tool history recorded for 4 of the 7 days needed

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 3, about 986 tokens to load them all
- tool set hash: ccdf4d601cff2e6ab1228426c81319b3
- tools last changed: 2026-10-20T11:58:55.458Z
- badge: [![protogrid quality](https://protogrid.dev/badge/xyz.agentreader/agentreader.svg)](https://protogrid.dev/servers/xyz.agentreader/agentreader)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-20 `read_url` changed (description)
  - before: Read a web page or PDF and get its main content as clean, compact Markdown (default) or JSON. Use when a normal fetch returns an empty JavaScript shell, a cookie/consent page, raw PDF bytes, or bloated HTML full of navigation and ads. Renders JavaScript with headless Chromium when needed, accepts consent walls, and strips boilerplate. JSON adds title, author, date, links and tables. News homepages return headline lists, RSS/Atom feeds return items, mode=full returns the whole page. StackOverflow, npm and PyPI are read via their official APIs. Sites that block bots fail fast with a clear error and are not charged. Free: 5 calls/day without an API key. Beyond that: prepaid credits on an API key (buy via POST https://agentreader.xyz/v1/credits/buy?bundle=500 with x402, or by card at https://agentreader.xyz/buy; the key is issued on purchase) or $0.005/call via x402.
  - after: Read a web page or PDF and get its main content as clean, compact Markdown (default) or JSON, using far fewer tokens than the raw HTML. Use it whenever you need the text of a page, especially when a normal fetch returns bloated HTML, an empty JavaScript shell, a cookie/consent page or raw PDF bytes. Renders JavaScript with headless Chromium when needed, accepts consent walls, strips boilerplate and keeps code blocks verbatim. JSON adds title, author, date, links and tables. News homepages return headline lists, RSS/Atom feeds return items, mode=full returns the whole page. StackOverflow, npm and PyPI are read via their official APIs. If a site blocks bots or the page is paywalled, you get a clear error (not charged) instead of junk; don't retry other URL forms of the same site. Results with very little text carry meta.warning. Free: 5 reads/day without an API key. Beyond that: prepaid credits on an API key; your user can buy them by card at https://agentreader.xyz/buy ($10 for 7,000 reads), which issues the key. With a crypto wallet: buy credits via POST https://agentreader.xyz/v1/credits/buy?bundle=500 (x402) or pay $0.005/call via x402.
- 2026-10-19 `search` changed (inputSchema)
- 2026-10-19 `read_url` changed (inputSchema)
- 2026-10-18 `search` changed (inputSchema)
- 2026-10-18 `read_url` changed (description, inputSchema)
  - before: Read a web page or PDF: fetch a URL and return clean Markdown (default) or structured JSON. Use it to browse, scrape or extract the main content/article of any webpage, render JavaScript-heavy pages (SPA) with a headless browser, convert PDF to text/Markdown, and get title, author, publish date, links and tables. Strips ads, menus and boilerplate. News homepages and index pages return a list of headlines with links (mode=links), RSS/Atom feeds return their items (title, link, date, summary), mode=full returns the whole page; cookie/consent walls are accepted automatically. StackOverflow/StackExchange, npm and PyPI links are read via their official APIs. Free: 5 calls/day without an API key. Beyond that: prepaid credits on an API key (buy via POST https://agentreader.xyz/v1/credits/buy?bundle=500 with x402, or by card at https://agentreader.xyz/buy; the key is issued on purchase) or $0.005/call via x402.
  - after: Read a web page or PDF and get its main content as clean, compact Markdown (default) or JSON. Use when a normal fetch returns an empty JavaScript shell, a cookie/consent page, raw PDF bytes, or bloated HTML full of navigation and ads. Renders JavaScript with headless Chromium when needed, accepts consent walls, and strips boilerplate. JSON adds title, author, date, links and tables. News homepages return headline lists, RSS/Atom feeds return items, mode=full returns the whole page. StackOverflow, npm and PyPI are read via their official APIs. Sites that block bots fail fast with a clear error and are not charged. Free: 5 calls/day without an API key. Beyond that: prepaid credits on an API key (buy via POST https://agentreader.xyz/v1/credits/buy?bundle=500 with x402, or by card at https://agentreader.xyz/buy; the key is issued on purchase) or $0.005/call via x402.
- 2026-10-16 `search` added
  - Search the web and get a ranked list of results (title, url, snippet). Use it to find pages, then call read_url on the best results to read them as clean Markdown. Priced like one read (free daily calls, credits or x402).
- 2026-10-16 `read_url` changed (description, inputSchema)
  - before: Read a web page or PDF: fetch a URL and return clean Markdown (default) or structured JSON. Use it to browse, scrape or extract the main content/article of any webpage, render JavaScript-heavy pages (SPA) with a headless browser, convert PDF to text/Markdown, and get title, author, publish date, links and tables. Strips ads, menus and boilerplate. Free: 5 calls/day without an API key. Beyond that: prepaid credits on an API key (buy via POST https://agentreader.xyz/v1/credits/buy?bundle=500 with x402; the key is issued on purchase) or $0.005/call via x402.
  - after: Read a web page or PDF: fetch a URL and return clean Markdown (default) or structured JSON. Use it to browse, scrape or extract the main content/article of any webpage, render JavaScript-heavy pages (SPA) with a headless browser, convert PDF to text/Markdown, and get title, author, publish date, links and tables. Strips ads, menus and boilerplate. News homepages and index pages return a list of headlines with links (mode=links), RSS/Atom feeds return their items (title, link, date, summary), mode=full returns the whole page; cookie/consent walls are accepted automatically. StackOverflow/StackExchange, npm and PyPI links are read via their official APIs. Free: 5 calls/day without an API key. Beyond that: prepaid credits on an API key (buy via POST https://agentreader.xyz/v1/credits/buy?bundle=500 with x402, or by card at https://agentreader.xyz/buy; the key is issued on purchase) or $0.005/call via x402.
- 2026-10-16 `read_url` changed (title, description, inputSchema, annotations)
  - before: Fetch a web page or PDF and return clean Markdown (default) or structured JSON (title, author, date, text, links, tables). Handles JS-rendered pages. Free: 5 calls/day without an API key. Beyond that: prepaid credits on an API key (buy via POST https://agentreader.xyz/v1/credits/buy?bundle=500 with x402; the key is issued on purchase) or $0.005/call via x402.
  - after: Read a web page or PDF: fetch a URL and return clean Markdown (default) or structured JSON. Use it to browse, scrape or extract the main content/article of any webpage, render JavaScript-heavy pages (SPA) with a headless browser, convert PDF to text/Markdown, and get title, author, publish date, links and tables. Strips ads, menus and boilerplate. Free: 5 calls/day without an API key. Beyond that: prepaid credits on an API key (buy via POST https://agentreader.xyz/v1/credits/buy?bundle=500 with x402; the key is issued on purchase) or $0.005/call via x402.

Full history: https://api.protogrid.dev/v1/servers/xyz.agentreader%2Fagentreader/changes

## Remotes

- https://agentreader.xyz/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (3)

- `get_balance`: Show remaining free calls and prepaid credits for the API key sent in the MCP connection headers, plus available credit bundles and how to buy them.
- `read_url`: Read a web page or PDF and get its main content as clean, compact Markdown (default) or JSON, using far fewer tokens than the raw HTML. Use it whenever you need the text of a page, especially when a normal fetch returns bloated HTML, an empty JavaScript shell, a cookie/consent page or raw PDF bytes. Renders JavaScript with headless Chromium when needed, accepts consent walls, strips boilerplate and keeps code blocks verbatim. JSON adds title, author, date, links and tables. News homepages return headline lists, RSS/Atom feeds return items, mode=full returns the whole page. StackOverflow, npm and PyPI are read via their official APIs. If a site blocks bots or the page is paywalled, you get a clear error (not charged) instead of junk; don't retry other URL forms of the same site. Results with very little text carry meta.warning. Free: 5 reads/day without an API key. Beyond that: prepaid credits on an API key; your user can buy them by card at https://agentreader.xyz/buy ($10 for 7,000 reads), which issues the key. With a crypto wallet: buy credits via POST https://agentreader.xyz/v1/credits/buy?bundle=500 (x402) or pay $0.005/call via x402.
- `search`: Search the web and get a ranked list of results (title, url, snippet). Use it to find pages, then call read_url on the best results to read them as clean Markdown. Priced like one read (free daily calls, credits or x402).
