agentdiet
Server Details
Strips 85-97% of HTML bloat into clean Markdown, <200-token skeletons, or BM25 excerpts via MCP.
- Status
- Healthy
- Uptime
- 99.9% over 20 days
- Last Tested
- Transport
- Streamable HTTP ยท MCP 2025-11-25
- URL
TDQS
Scored across 4 tools
Each tool targets a clearly distinct output type: narrative Markdown (distill_webpage), structured JSON-LD/tables/code (extract_structured_data), a compact heading/token outline (recon_webpage_skeleton), and account/billing status (get_agent_wallet_status). Descriptions explicitly state WHEN TO USE and WHEN NOT TO USE, cross-referencing the sibling tools to prevent misselection. No two tools appear interchangeable.
All four tools use a consistent snake_case verb_object pattern: distill_webpage, extract_structured_data, recon_webpage_skeleton, get_agent_wallet_status. The only minor stylistic note is the abbreviation 'recon', but it remains readable and follows the same convention. Naming is predictable throughout.
Four tools is well-scoped for a focused web-content extraction and paid-API service: one preview tool, two extraction modes, and one account-status tool. Each tool earns its place with no redundant or filler operations. The count sits comfortably in the ideal 3-15 range.
The surface covers the core lifecycle: preview structure, distill prose, extract structured data, and check wallet balance. The main gap is the absence of a dedicated top-up/payment-submission tool, though the payment-required quote returns a Stripe link and USDC addresses that agents can use externally. Minor gap, workable around.
Available Tools
4 toolsdistill_webpageARead-onlyIdempotentInspect
Fetch a public HTTP(S) web page (or accept raw HTML) and distill its main prose into clean Markdown, stripping 85-97% of HTML/JS/CSS boilerplate. WHEN TO USE: Call this tool to read full or query-filtered article and documentation text; call recon_webpage_skeleton first to preview headings and token counts on unfamiliar pages, or extract_structured_data when you need JSON-LD, HTML tables, or code blocks. WHEN NOT TO USE: Do not use for binary PDFs, images, or login-walled pages. PARAMETER INTERACTIONS: Provide either url or html (when html is supplied, url is not fetched and only labels the cache key). When mode='markdown' (default), query and max_tokens are ignored; set mode='budget' to rank sections by query (BM25) and cap output at max_tokens. Omit agent_id and tx_hash during your 5 free calls. Read-only and idempotent; results are cached for 1 hour (<5ms cache hit). $0.001 per call ($0.0005 cached). Pricing: the first 5 calls per agent_id are free and failed calls are never charged. After 5 calls, the tool returns a payment-required quote (not a fatal error) with a $2 Stripe top-up link and Base/Solana USDC addresses; complete payment, then retry with your agd_pass_ key in agent_id or pass tx_hash. Example: distill_webpage(url='https://docs.stripe.com/api')
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Target public HTTP(S) webpage URL to fetch (or builtin://stripe-docs for a built-in benchmark page). Private/loopback IPs are blocked. | |
| html | No | Optional raw HTML string (up to ~1.9MB) to process directly without network fetching. When provided, url is not fetched and only labels the cache entry. | |
| mode | No | Extraction mode: 'markdown' (default) returns the full cleaned page; 'budget' returns only sections matching query within max_tokens. | markdown |
| query | No | BM25 relevance keywords used to rank and filter page sections. Required for focused filtering when mode='budget'; ignored when mode='markdown'. | |
| tx_hash | No | Optional on-chain Base Mainnet (0x...) or Solana SPL USDC transaction hash. Omit unless settling an individual call directly on-chain instead of using an agd_pass_ key in agent_id. | |
| agent_id | No | Optional agent identifier or prepaid agd_pass_ session key. Omit during your 5 free trial calls to use an ID automatically derived from your client IP, or pass your agd_pass_ key after topping up. | |
| max_tokens | No | Maximum output token ceiling (50-16000, default 400). Enforced only when mode='budget'; ignored when mode='markdown'. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No | Structured tool output payload. |
| status | Yes | Execution status ('ok' or 'payment_required'). |
| roi_proof | No | Token compression and cost-savings verification metrics. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations, which only declare read-only/idempotent/open-world/destructive=false. The description discloses 1-hour caching with <5ms hits, the 5-free-call trial, per-call and cached pricing, that failed calls are never charged, and that the payment-required response is a quote rather than a fatal error. These are exactly the operational traits an agent needs and cannot get from structured fields.
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-loads the core purpose in one sentence and uses labeled sections for routing and parameter interactions, which is easy to scan. The payment/pricing block is verbose and repeats the free-call and agd_pass_/tx_hash guidance already implied elsewhere, so a little trimming is possible, but the density is justified for a paid tool.
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 an output schema present, return values need no explanation, and the description still covers everything an agent must know before calling: authentication/payment flow, caching, mode-dependent behavior, input limits, and failure semantics. Nothing required for correct invocation 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%, so the baseline is 3, but the PARAMETER INTERACTIONS section adds cross-parameter meaning the per-field schema text does not consolidate: url is not fetched when html is supplied, and mode='markdown' silently ignores query and max_tokens while mode='budget' applies BM25 ranking. This prevents misconfiguration rather than merely restating field docs.
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 ('Fetch a public HTTP(S) web page ... distill its main prose into clean Markdown') plus a quantified outcome (stripping 85-97% boilerplate). It explicitly differentiates itself from both siblings by naming recon_webpage_skeleton and extract_structured_data, so an agent can route without opening a 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?
Contains explicit WHEN TO USE and WHEN NOT TO USE sections that name the alternatives and the conditions selecting them: recon_webpage_skeleton for heading previews on unfamiliar pages, extract_structured_data for JSON-LD/tables/code, and an exclusion for PDFs, images, and login-walled pages. Nothing is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extract_structured_dataARead-onlyIdempotentInspect
Extract machine-readable structured data from a web page: Schema.org JSON-LD objects, OpenGraph metadata, HTML tables parsed as JSON row arrays, fenced code blocks, section headings, and links. WHEN TO USE: Call this tool for pricing tables, API specifications, product metadata, or code snippets; use distill_webpage for narrative Markdown or recon_webpage_skeleton for a lightweight heading outline. WHEN NOT TO USE: Do not use for narrative prose extraction or binary files. PARAMETER INTERACTIONS: Provide either url or html (when html is supplied, url is not fetched and only labels the cache key). Omit agent_id and tx_hash during your 5 free calls. Read-only and idempotent; results are cached for 1 hour (<5ms cache hit). $0.001 per call ($0.0005 cached). Pricing: the first 5 calls per agent_id are free and failed calls are never charged. After 5 calls, the tool returns a payment-required quote (not a fatal error) with a $2 Stripe top-up link and Base/Solana USDC addresses; complete payment, then retry with your agd_pass_ key in agent_id or pass tx_hash. Example: extract_structured_data(url='https://docs.stripe.com/api')
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Target public HTTP(S) webpage URL to fetch (or builtin://stripe-docs for a built-in benchmark page). Private/loopback IPs are blocked. | |
| html | No | Optional raw HTML string (up to ~1.9MB) to process directly without network fetching. When provided, url is not fetched and only labels the cache entry. | |
| tx_hash | No | Optional on-chain Base Mainnet (0x...) or Solana SPL USDC transaction hash. Omit unless settling an individual call directly on-chain instead of using an agd_pass_ key in agent_id. | |
| agent_id | No | Optional agent identifier or prepaid agd_pass_ session key. Omit during your 5 free trial calls to use an ID automatically derived from your client IP, or pass your agd_pass_ key after topping up. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No | Structured tool output payload. |
| status | Yes | Execution status ('ok' or 'payment_required'). |
| roi_proof | No | Token compression and cost-savings verification metrics. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety profile (readOnly, idempotent, openWorld, non-destructive), yet the description goes well beyond them: 1-hour caching with <5ms hits, a 5-free-call trial, a non-fatal payment-required quote with Stripe/Base/Solana settlement paths, and the fact that failed calls are never charged. This is the pricing and failure-mode context an agent needs before calling.
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 core purpose followed by labeled WHEN TO USE / WHEN NOT TO USE / PARAMETER INTERACTIONS blocks, with the pricing detail last. The pricing paragraph is dense but each sentence carries operative information (free-call count, quote-not-error behavior, retry credentials); slightly overlong, keeping it just below a 5.
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?
An output schema exists, so return-value explanation is unnecessary, and the description instead covers routing, parameter interaction, caching, and the payment lifecycle. For a paid, cached, network-fetching extractor, nothing an agent needs to invoke it successfully 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 already 100%, so the baseline is 3, but the description adds genuine cross-parameter semantics: url or html is either/or, and when html is supplied the url only labels the cache key rather than being fetched. It also clarifies that agent_id and tx_hash should be omitted during the free calls, which the individual schema descriptions only imply.
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 (extract) and resource (structured data from a web page) and enumerates the concrete artifact types returned: JSON-LD, OpenGraph, HTML tables as JSON rows, code blocks, headings, links. It also names the sibling tools it is distinct from, so an agent can route correctly without opening a 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?
Explicit WHEN TO USE with concrete scenarios (pricing tables, API specs, product metadata, code snippets) and explicit alternative routing to distill_webpage for narrative Markdown and recon_webpage_skeleton for a lightweight outline. WHEN NOT TO USE closes the remaining ambiguity (narrative prose, binary files).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_agent_wallet_statusARead-onlyIdempotentInspect
Inspect an agent's account ledger: remaining free trial calls (out of 5), prepaid USD balance, cumulative spend, total API calls, and total LLM tokens saved. WHEN TO USE: Call before a batch of paid tool executions or after completing a Stripe or USDC top-up to confirm your balance. WHEN NOT TO USE: Do not use to process web content, execute marketplace tools, or submit payments; use the other tools on this server for execution. PARAMETER INTERACTIONS: Omit agent_id to inspect the default trial account derived from your client IP, or pass your explicit agent_id or agd_pass_ session key to check a specific funded wallet. Free and read-only: never charges a fee or consumes a free trial call. Example: get_agent_wallet_status(agent_id='example')
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | No | Optional Agent ID or agd_pass_ session key to inspect. Omit to check the default wallet derived from your client IP. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No | Structured tool output payload. |
| status | Yes | Execution status ('ok' or 'payment_required'). |
| roi_proof | No | Token compression and cost-savings verification metrics. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds real context beyond that: it never charges a fee or consumes a free trial call, and the default wallet is derived from the caller's client IP. It does not discuss rate limits or caching, but the cost/free-trial guarantee is meaningful behavioral disclosure.
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 ledger contents, then structured WHEN TO USE / WHEN NOT TO USE / PARAMETER INTERACTIONS / Example. The labeled sections make it scannable, though the repetition of the read-only guarantee and the worked example add a little bulk.
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?
An output schema exists, so return-value detail is optional, yet the description still names the key fields. With a single optional parameter, no nested objects, and annotations covering safety, an agent has everything needed to invoke 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 description coverage is 100%, so the baseline is 3. The description goes slightly further by naming the agd_pass_ session-key form and framing the two modes as an interaction (omit for IP-derived trial account vs. pass explicit agent_id/session key for a funded wallet), which aids selection even though the schema states the omit behavior.
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 (inspect) and resource (agent's account ledger) and enumerates exactly what is returned: trial calls out of 5, prepaid USD balance, cumulative spend, total API calls, tokens saved. This clearly separates it from the sibling web-content tools (distill_webpage, extract_structured_data, recon_webpage_skeleton), which operate on webpages rather than wallet state.
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?
Explicit WHEN TO USE (before paid tool batches, after a Stripe or USDC top-up) and WHEN NOT TO USE (not for processing web content, executing marketplace tools, or submitting payments). The exclusion clause routes the agent back to the other server tools for execution, so the alternative is named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recon_webpage_skeletonARead-onlyIdempotentInspect
Extract an ultra-compact structural outline (under ~200 tokens) of a web page listing its H1-H4 headings and exact token count per section without returning body prose. WHEN TO USE: Call this tool first on long or unfamiliar pages to inspect structure and token cost before calling distill_webpage (with mode='budget' and a focused query). WHEN NOT TO USE: Do not use when you already need full Markdown prose (use distill_webpage) or structured tables and JSON-LD (use extract_structured_data). PARAMETER INTERACTIONS: Provide either url or html (when html is supplied, url is not fetched and only labels the cache key). Omit agent_id and tx_hash during your 5 free calls. Read-only and idempotent; results are cached for 1 hour (<5ms cache hit). $0.0002 per call. Pricing: the first 5 calls per agent_id are free and failed calls are never charged. After 5 calls, the tool returns a payment-required quote (not a fatal error) with a $2 Stripe top-up link and Base/Solana USDC addresses; complete payment, then retry with your agd_pass_ key in agent_id or pass tx_hash. Example: recon_webpage_skeleton(url='https://docs.stripe.com/api')
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Target public HTTP(S) webpage URL to fetch (or builtin://stripe-docs for a built-in benchmark page). Private/loopback IPs are blocked. | |
| html | No | Optional raw HTML string (up to ~1.9MB) to process directly without network fetching. When provided, url is not fetched and only labels the cache entry. | |
| tx_hash | No | Optional on-chain Base Mainnet (0x...) or Solana SPL USDC transaction hash. Omit unless settling an individual call directly on-chain instead of using an agd_pass_ key in agent_id. | |
| agent_id | No | Optional agent identifier or prepaid agd_pass_ session key. Omit during your 5 free trial calls to use an ID automatically derived from your client IP, or pass your agd_pass_ key after topping up. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No | Structured tool output payload. |
| status | Yes | Execution status ('ok' or 'payment_required'). |
| roi_proof | No | Token compression and cost-savings verification metrics. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive), and the description goes well beyond them: 1-hour caching with <5ms cache hits, $0.0002 per call, 5 free calls per agent_id, failed calls never charged, and the payment-required quote being a non-fatal error with retry paths (agd_pass_ key or tx_hash). This is unusually rich operational context.
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 core purpose, then usage, then payment mechanics, with no wasted throat-clearing. It is dense and long, and the pricing detail ('first 5 calls per agent_id are free') partially repeats the earlier free-call instruction, costing it the top score.
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?
An output schema exists, so return values need not be explained; the description instead covers the auth/payment lifecycle, caching, and input alternatives. Nothing an agent needs to invoke this 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%, so the baseline is 3, but the description adds cross-parameter interaction guidance the schema only states per-field: 'Provide either url or html (when html is supplied, url is not fetched and only labels the cache key)' and 'Omit agent_id and tx_hash during your 5 free calls'. That is genuine added value over the individual field descriptions.
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 ('Extract an ultra-compact structural outline... listing its H1-H4 headings and exact token count per section') with a clear negative scope ('without returning body prose'). It distinguishes itself cleanly from distill_webpage and extract_structured_data by naming them.
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?
Contains explicit WHEN TO USE ('first on long or unfamiliar pages to inspect structure and token cost before calling distill_webpage') and WHEN NOT TO USE sections, each naming the correct alternative and the condition that selects it. No inference is required from the agent.
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.
4 tool updates
- Changed
distill_webpage1 field changed- added
Input schema / examplesAdded value: +[ + { + "url": "https://docs.stripe.com/api" + } +]
- Changed
extract_structured_data1 field changed- added
Input schema / examplesAdded value: +[ + { + "url": "https://docs.stripe.com/api" + } +]
- Changed
get_agent_wallet_status1 field changed- added
Input schema / examplesAdded value: +[ + { + "agent_id": "example" + } +]
- Changed
recon_webpage_skeleton1 field changed- added
Input schema / examplesAdded value: +[ + { + "url": "https://docs.stripe.com/api" + } +]
4 tool updates
- Changed
distill_webpage15 fields changed- changed
Input schema / additionalPropertiesPrevious value: -trueNew value: +false - changed
Input schema / properties / agent_id / descriptionPrevious value: -"Your agent ID, or the agd_pass_ key you got from a payment. It tracks your free calls and credit, so treat it like a password. Omit it to use an ID derived from your IP and client."New value: +"Optional agent identifier or prepaid agd_pass_ session key. Omit during your 5 free trial calls to use an ID automatically derived from your client IP, or pass your agd_pass_ key after topping up." - added
Input schema / properties / agent_id / maxLengthAdded value: +256 - added
Input schema / properties / agent_id / minLengthAdded value: +1 - changed
Input schema / properties / html / descriptionPrevious value: -"Raw HTML (up to ~1.9MB) to process instead of fetching url. When set, url only labels the cache entry."New value: +"Optional raw HTML string (up to ~1.9MB) to process directly without network fetching. When provided, url is not fetched and only labels the cache entry." - changed
Input schema / properties / max_tokens / descriptionPrevious value: -"Output token cap for mode=budget (50-16000, default 400)."New value: +"Maximum output token ceiling (50-16000, default 400). Enforced only when mode='budget'; ignored when mode='markdown'." - changed
Input schema / properties / mode / descriptionPrevious value: -"markdown (default) = whole page; budget = only sections relevant to query."New value: +"Extraction mode: 'markdown' (default) returns the full cleaned page; 'budget' returns only sections matching query within max_tokens." - changed
Input schema / properties / query / descriptionPrevious value: -"Keywords used to rank sections (BM25). Used only when mode=budget."New value: +"BM25 relevance keywords used to rank and filter page sections. Required for focused filtering when mode='budget'; ignored when mode='markdown'." - changed
Input schema / properties / tx_hash / descriptionPrevious value: -"Use only after paying on-chain: the Base (0x...) or Solana USDC transfer hash. It is verified on-chain before the call runs, and any overpayment is returned as an agd_pass_ credit key."New value: +"Optional on-chain Base Mainnet (0x...) or Solana SPL USDC transaction hash. Omit unless settling an individual call directly on-chain instead of using an agd_pass_ key in agent_id." - added
Input schema / properties / tx_hash / maxLengthAdded value: +256 - added
Input schema / properties / tx_hash / minLengthAdded value: +10 - changed
Input schema / properties / url / descriptionPrevious value: -"Public http(s) URL to fetch, or builtin://stripe-docs for a demo page. Private and metadata IPs are blocked."New value: +"Target public HTTP(S) webpage URL to fetch (or builtin://stripe-docs for a built-in benchmark page). Private/loopback IPs are blocked." - added
Output schema / properties / data / descriptionAdded value: +"Structured tool output payload." - added
Output schema / properties / roi_proof / descriptionAdded value: +"Token compression and cost-savings verification metrics." - added
Output schema / properties / status / descriptionAdded value: +"Execution status ('ok' or 'payment_required')."
- Changed
extract_structured_data12 fields changed- changed
Input schema / additionalPropertiesPrevious value: -trueNew value: +false - changed
Input schema / properties / agent_id / descriptionPrevious value: -"Your agent ID, or the agd_pass_ key you got from a payment. It tracks your free calls and credit, so treat it like a password. Omit it to use an ID derived from your IP and client."New value: +"Optional agent identifier or prepaid agd_pass_ session key. Omit during your 5 free trial calls to use an ID automatically derived from your client IP, or pass your agd_pass_ key after topping up." - added
Input schema / properties / agent_id / maxLengthAdded value: +256 - added
Input schema / properties / agent_id / minLengthAdded value: +1 - changed
Input schema / properties / html / descriptionPrevious value: -"Raw HTML (up to ~1.9MB) to process instead of fetching url. When set, url only labels the cache entry."New value: +"Optional raw HTML string (up to ~1.9MB) to process directly without network fetching. When provided, url is not fetched and only labels the cache entry." - changed
Input schema / properties / tx_hash / descriptionPrevious value: -"Use only after paying on-chain: the Base (0x...) or Solana USDC transfer hash. It is verified on-chain before the call runs, and any overpayment is returned as an agd_pass_ credit key."New value: +"Optional on-chain Base Mainnet (0x...) or Solana SPL USDC transaction hash. Omit unless settling an individual call directly on-chain instead of using an agd_pass_ key in agent_id." - added
Input schema / properties / tx_hash / maxLengthAdded value: +256 - added
Input schema / properties / tx_hash / minLengthAdded value: +10 - changed
Input schema / properties / url / descriptionPrevious value: -"Public http(s) URL to fetch, or builtin://stripe-docs for a demo page. Private and metadata IPs are blocked."New value: +"Target public HTTP(S) webpage URL to fetch (or builtin://stripe-docs for a built-in benchmark page). Private/loopback IPs are blocked." - added
Output schema / properties / data / descriptionAdded value: +"Structured tool output payload." - added
Output schema / properties / roi_proof / descriptionAdded value: +"Token compression and cost-savings verification metrics." - added
Output schema / properties / status / descriptionAdded value: +"Execution status ('ok' or 'payment_required')."
- Changed
get_agent_wallet_status7 fields changed- changed
Input schema / additionalPropertiesPrevious value: -trueNew value: +false - changed
Input schema / properties / agent_id / descriptionPrevious value: -"Agent ID or agd_pass_ key to look up. Omit it to see the ID derived from your IP and client."New value: +"Optional Agent ID or agd_pass_ session key to inspect. Omit to check the default wallet derived from your client IP." - added
Input schema / properties / agent_id / maxLengthAdded value: +256 - added
Input schema / properties / agent_id / minLengthAdded value: +1 - added
Output schema / properties / data / descriptionAdded value: +"Structured tool output payload." - added
Output schema / properties / roi_proof / descriptionAdded value: +"Token compression and cost-savings verification metrics." - added
Output schema / properties / status / descriptionAdded value: +"Execution status ('ok' or 'payment_required')."
- Changed
recon_webpage_skeleton12 fields changed- changed
Input schema / additionalPropertiesPrevious value: -trueNew value: +false - changed
Input schema / properties / agent_id / descriptionPrevious value: -"Your agent ID, or the agd_pass_ key you got from a payment. It tracks your free calls and credit, so treat it like a password. Omit it to use an ID derived from your IP and client."New value: +"Optional agent identifier or prepaid agd_pass_ session key. Omit during your 5 free trial calls to use an ID automatically derived from your client IP, or pass your agd_pass_ key after topping up." - added
Input schema / properties / agent_id / maxLengthAdded value: +256 - added
Input schema / properties / agent_id / minLengthAdded value: +1 - changed
Input schema / properties / html / descriptionPrevious value: -"Raw HTML (up to ~1.9MB) to process instead of fetching url. When set, url only labels the cache entry."New value: +"Optional raw HTML string (up to ~1.9MB) to process directly without network fetching. When provided, url is not fetched and only labels the cache entry." - changed
Input schema / properties / tx_hash / descriptionPrevious value: -"Use only after paying on-chain: the Base (0x...) or Solana USDC transfer hash. It is verified on-chain before the call runs, and any overpayment is returned as an agd_pass_ credit key."New value: +"Optional on-chain Base Mainnet (0x...) or Solana SPL USDC transaction hash. Omit unless settling an individual call directly on-chain instead of using an agd_pass_ key in agent_id." - added
Input schema / properties / tx_hash / maxLengthAdded value: +256 - added
Input schema / properties / tx_hash / minLengthAdded value: +10 - changed
Input schema / properties / url / descriptionPrevious value: -"Public http(s) URL to fetch, or builtin://stripe-docs for a demo page. Private and metadata IPs are blocked."New value: +"Target public HTTP(S) webpage URL to fetch (or builtin://stripe-docs for a built-in benchmark page). Private/loopback IPs are blocked." - added
Output schema / properties / data / descriptionAdded value: +"Structured tool output payload." - added
Output schema / properties / roi_proof / descriptionAdded value: +"Token compression and cost-savings verification metrics." - added
Output schema / properties / status / descriptionAdded value: +"Execution status ('ok' or 'payment_required')."
4 tool updates
- Changed
distill_webpage1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "data": { + "type": "object" + }, + "roi_proof": { + "type": "object" + }, + "status": { + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" +}
- Changed
extract_structured_data1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "data": { + "type": "object" + }, + "roi_proof": { + "type": "object" + }, + "status": { + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" +}
- Changed
get_agent_wallet_status2 fields changed- removed
Input schema / properties / tx_hashRemoved value: -{ - "description": "Not needed; this tool is free.", - "type": "string" -} - changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "data": { + "type": "object" + }, + "roi_proof": { + "type": "object" + }, + "status": { + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" +}
- Changed
recon_webpage_skeleton1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "data": { + "type": "object" + }, + "roi_proof": { + "type": "object" + }, + "status": { + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" +}
4 tool updates
- Changed
distill_webpage12 fields changed- changed
Input schema / properties / agent_id / descriptionPrevious value: -"Optional Agent ID or Session Pass (agd_pass_...)"New value: +"Your agent ID, or the agd_pass_ key you got from a payment. It tracks your free calls and credit, so treat it like a password. Omit it to use an ID derived from your IP and client." - changed
Input schema / properties / html / descriptionPrevious value: -"Optional raw HTML string"New value: +"Raw HTML (up to ~1.9MB) to process instead of fetching url. When set, url only labels the cache entry." - changed
Input schema / properties / html / maxLengthPrevious value: -99999New value: +1900000 - changed
Input schema / properties / max_tokens / descriptionPrevious value: -"Token cap for budget mode"New value: +"Output token cap for mode=budget (50-16000, default 400)." - added
Input schema / properties / mode / descriptionAdded value: +"markdown (default) = whole page; budget = only sections relevant to query." - changed
Input schema / properties / mode / enumPrevious value: -[ - "markdown", - "structured", - "skeleton", - "budget" -]New value: +[ + "markdown", + "budget" +] - removed
Input schema / properties / mode / maxLengthRemoved value: -99999 - removed
Input schema / properties / mode / minLengthRemoved value: -1 - changed
Input schema / properties / query / descriptionPrevious value: -"BM25 focus query for budget mode"New value: +"Keywords used to rank sections (BM25). Used only when mode=budget." - changed
Input schema / properties / tx_hash / descriptionPrevious value: -"Optional Base (0x...) or Solana USDC tx hash"New value: +"Use only after paying on-chain: the Base (0x...) or Solana USDC transfer hash. It is verified on-chain before the call runs, and any overpayment is returned as an agd_pass_ credit key." - changed
Input schema / properties / url / descriptionPrevious value: -"Target URL (or builtin://stripe-docs)"New value: +"Public http(s) URL to fetch, or builtin://stripe-docs for a demo page. Private and metadata IPs are blocked." - changed
Input schema / properties / url / maxLengthPrevious value: -99999New value: +2048
- Changed
extract_structured_data6 fields changed- changed
Input schema / properties / agent_id / descriptionPrevious value: -"Optional Agent ID or Session Pass (agd_pass_...)"New value: +"Your agent ID, or the agd_pass_ key you got from a payment. It tracks your free calls and credit, so treat it like a password. Omit it to use an ID derived from your IP and client." - changed
Input schema / properties / html / descriptionPrevious value: -"Optional raw HTML string"New value: +"Raw HTML (up to ~1.9MB) to process instead of fetching url. When set, url only labels the cache entry." - changed
Input schema / properties / html / maxLengthPrevious value: -99999New value: +1900000 - changed
Input schema / properties / tx_hash / descriptionPrevious value: -"Optional Base (0x...) or Solana USDC tx hash"New value: +"Use only after paying on-chain: the Base (0x...) or Solana USDC transfer hash. It is verified on-chain before the call runs, and any overpayment is returned as an agd_pass_ credit key." - changed
Input schema / properties / url / descriptionPrevious value: -"Target webpage URL"New value: +"Public http(s) URL to fetch, or builtin://stripe-docs for a demo page. Private and metadata IPs are blocked." - changed
Input schema / properties / url / maxLengthPrevious value: -99999New value: +2048
- Changed
get_agent_wallet_status2 fields changed- changed
Input schema / properties / agent_id / descriptionPrevious value: -"Optional Agent ID or Session Pass (agd_pass_...)"New value: +"Agent ID or agd_pass_ key to look up. Omit it to see the ID derived from your IP and client." - changed
Input schema / properties / tx_hash / descriptionPrevious value: -"Optional Base (0x...) or Solana USDC tx hash"New value: +"Not needed; this tool is free."
- Changed
recon_webpage_skeleton6 fields changed- changed
Input schema / properties / agent_id / descriptionPrevious value: -"Optional Agent ID or Session Pass (agd_pass_...)"New value: +"Your agent ID, or the agd_pass_ key you got from a payment. It tracks your free calls and credit, so treat it like a password. Omit it to use an ID derived from your IP and client." - changed
Input schema / properties / html / descriptionPrevious value: -"Optional raw HTML string"New value: +"Raw HTML (up to ~1.9MB) to process instead of fetching url. When set, url only labels the cache entry." - changed
Input schema / properties / html / maxLengthPrevious value: -99999New value: +1900000 - changed
Input schema / properties / tx_hash / descriptionPrevious value: -"Optional Base (0x...) or Solana USDC tx hash"New value: +"Use only after paying on-chain: the Base (0x...) or Solana USDC transfer hash. It is verified on-chain before the call runs, and any overpayment is returned as an agd_pass_ credit key." - changed
Input schema / properties / url / descriptionPrevious value: -"Target webpage URL"New value: +"Public http(s) URL to fetch, or builtin://stripe-docs for a demo page. Private and metadata IPs are blocked." - changed
Input schema / properties / url / maxLengthPrevious value: -99999New value: +2048
Related MCP Connectors
Strips 85-97% of HTML/DOM boilerplate into clean Markdown, skeletons, or BM25-ranked RAG chunks.
Strips 85-97% of HTML/DOM bloat into clean Markdown or JSON with cryptographic ROI proof.
Extract clean article text or Markdown from any public web page; ads and boilerplate stripped.
Turn any web page URL or HTML into clean Markdown or plain text for an LLM to read.
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables converting web pages to clean Markdown via MCP, compressing token usage by roughly 95% in under 150ms to support LLM context windows and RAG pipelines.250 npm1MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI agents and MCP clients to fetch web pages and distill them into clean, token-efficient markdown by stripping cookie banners, navigation bars, and ads. Runs with zero external dependencies over JSON-RPC stdio, delivering deterministic sub-millisecond results without LLM round-trips.7-
- AlicenseAqualityDmaintenanceConverts web pages and HTML strings into clean, LLM-optimized Markdown with metadata extraction and token estimation. It uses a lightweight, browserless approach to provide token-efficient output for more effective LLM processing.2MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI agents and MCP clients to fetch webpages, strip noise, and convert them into clean, token-efficient Markdown. Supports optional crawling, caching, robots.txt compliance, and link preservation.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.