vend-api-merchant
Server Details
Pay-per-call web intel: extract, search, link check, domain, geo, Nano. Settled via Nano x402.
- Status
- Healthy
- Uptime
- 99.9% over 27 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- dhyabi2/vend
- GitHub Stars
- 0
TDQS
Scored across 13 tools
check_link and check_url_status overlap almost entirely—both return HTTP status, redirect chain, and response time—and check_url_status is effectively a superset adding TLS and body-hash checks, making check_link largely redundant. extract_url and scrape_page also retrieve page content, though their output formats differ (clean markdown vs. structured stealth-browser cards). The remaining tools are clearly distinct.
All names use snake_case and are readable, with mostly verb_noun or noun_noun patterns. Minor inconsistencies exist: batch variants use different conventions (browser_agent_batch suffix vs. scrape_pages plural), and the set mixes verb-first (check_link, extract_url, scrape_page) with noun-first (domain_info, web_search, geoip_lookup) styles.
13 tools sits comfortably in the ideal 3–15 range for a web-data and payment API, covering each major capability without bloat. However, check_link appears redundant against check_url_status, so not every tool fully earns its place.
The surface covers AI browsing, stealth scraping (single and batch), text extraction, URL/domain checks, geolocation, web search, and YouTube transcripts, which is solid lifecycle coverage for a web-data API. Minor gaps remain: no batch extract_url or batch check_url_status, and no generic HTTP/API-call tool, though agents can work around these.
Available Tools
13 toolsbrowser_agentBRead-onlyIdempotentInspect
Run a task on a real website with a real browser: it searches, clicks, filters, reads the page and answers. Charges 0.05 XNO per run via x402. Returns a job id at once; poll jobs via the returned links.status (free) until done.
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | What the agent should do, in plain language (8-500 characters). | |
| website | Yes | The website to do it on, e.g. arxiv.org or https://www.allrecipes.com |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does add valuable behavior beyond the annotations: a per-run charge of 0.05 XNO via x402, an immediate job-id return, and free polling through links.status. However, it explicitly drives 'a real website with a real browser' on arbitrary domains, which directly conflicts with the openWorldHint=false annotation; per the rubric, a description that contradicts its annotations is penalized here.
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 front-loaded sentences: what it does, what it costs, how to consume the result. Every sentence carries distinct information (capability, price, async lifecycle) with no filler. The action list in sentence one is slightly listy but still earns its place.
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?
For an async, paid, open-web tool, the description covers the essentials an agent needs: cost, non-blocking job id, and the polling endpoint, and an output schema exists so return values need no explanation. The main gap is the missing guidance on when not to use it and the annotation mismatch on world scope.
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 parameters (task, website) are already documented with length bounds and formatting examples. The description adds no syntax, format, or constraint information beyond what the schema already provides, so the 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 verb and resource: 'Run a task on a real website with a real browser', expanded with the concrete actions it performs (searches, clicks, filters, reads, answers). An agent immediately knows this is autonomous browsing, not scraping or search. It does not, however, distinguish itself explicitly from siblings such as scrape_page, scrape_pages, or web_search.
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 implied rather than stated: the description explains the async contract ('returns a job id at once; poll jobs via the returned links.status (free) until done'), which tells the agent how to consume the tool but not when to prefer it over a cheaper scrape or search. There are no exclusions or named alternatives among the sibling set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
browser_agent_batchBRead-onlyIdempotentInspect
Start up to 100 browser-agent runs at once, in parallel on isolated browser contexts. Charges 0.05 XNO per run via x402 (price scales with the number of runs). Returns every job id immediately; poll each via its links.status (free).
| Name | Required | Description | Default |
|---|---|---|---|
| runs | Yes | JSON list of 1-100 runs: [{"task": "...", "website": "..."}, ...] |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description describes a mutating, billable operation – it starts up to 100 runs and 'Charges 0.05 XNO per run via x402' – while annotations declare readOnlyHint=true and idempotentHint=true. Starting jobs and deducting XNO per call is neither read-only nor idempotent (a second call charges again), so the description directly contradicts the structured safety profile.
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 dense sentences, front-loaded with the capability, then cost model, then the return-and-poll workflow. No filler; every clause carries information an agent needs.
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 described, and the description still covers cost, parallelism, immediate job-id return, and the free polling step. The one gap is that it never reconciles its billing/write behavior with the read-only annotations it is paired with, leaving the agent's safety assumptions unresolved.
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?
Only one parameter and schema coverage is 100% – the schema already defines 'runs' as a JSON list of 1-100 {task, website} objects. The description reinforces the upper bound and notes price scales with run count, but adds no syntax or format detail beyond the schema; the 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 verb+resource+scale: 'Start up to 100 browser-agent runs at once, in parallel on isolated browser contexts.' An agent can immediately distinguish this batching tool from the singular browser_agent sibling and understands the isolated-context execution model.
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 useful workflow context ('Returns every job id immediately; poll each via its links.status (free)') but never explicitly states when to choose this over the singular browser_agent or what conditions favor batching. Usage is implied by 'up to 100... at once' rather than spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_linkARead-onlyIdempotentInspect
Check HTTP status, response time and redirect chain for any URL. Charges 0.0001 XNO in Nano via x402.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Full http(s) URL whose HTTP status, response time and redirect chain to check. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds the unique behavioral trait that the tool charges 0.0001 XNO via x402, which is essential for an agent to decide whether to invoke. This cost disclosure goes beyond the annotations and schema.
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?
The description is a single, dense sentence that front-loads the action and immediately discloses the cost. Every word earns its place, and there is no redundant filler. This is ideal for an agent scanning tool definitions.
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 well-documented parameter, an output schema, and annotations covering safety and idempotency. The description adds the essential cost detail. Its only notable gap is the lack of differentiation from check_url_status, which is a minor completeness issue for an agent deciding between tools.
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?
The input schema provides 100% coverage for the single 'url' parameter, including a clear description of what counts as a valid http(s) URL. The description adds no additional parameter semantics beyond restating the purpose and implying no restrictions. A baseline of 3 is appropriate given the schema's thoroughness.
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 states a specific verb ('Check') with three concrete resources (HTTP status, response time, redirect chain) for any URL, which clearly identifies the tool's action and scope. It does not explicitly differentiate from the closely named sibling check_url_status, so it misses the top score for sibling distinction.
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?
The description offers no guidance on when to choose this over check_url_status or other sibling tools. It simply says 'any URL' without stating prerequisites, exclusions, or preferred use cases. An agent would have to infer which tool to use for a given scenario.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_url_statusARead-onlyIdempotentInspect
One-call URL status check: final HTTP status, redirect chain, TLS validity and days-to-expiry, response time, and whether the body changed since a previous call (pass previous_hash). Charges 0.0001 XNO in Nano via x402.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Full http(s) URL whose status, redirect chain, TLS validity and content to check. | |
| previous_hash | No | Optional hash of the body from a previous call, used to detect content drift. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds valuable behavior beyond annotations: the 0.0001 XNO charge via x402, the redirect-chain and TLS-detail scope, and the previous_hash body-comparison mechanism. No contradiction with the annotations is present.
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?
The description is a single, information-dense sentence with no filler. It front-loads the tool's identity, lists the key result dimensions, and ends with the cost detail; every phrase earns its place.
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?
Given the output schema exists and annotations cover safety, the description is largely complete: it explains scope, cost, and the previous_hash parameter. The main gap is the absence of guidance for choosing this tool over sibling URL-related tools, but that is not essential for understanding the tool's own behavior.
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 adds a small amount of semantic context by explaining that previous_hash is passed to detect body changes, but it does not add new format, algorithm, or usage details beyond what the schema already provides.
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 clearly states the resource ('URL') and the action ('status check'), then specifies the exact outputs: final HTTP status, redirect chain, TLS validity, response time, and body change. It does not explicitly differentiate from the sibling tool check_link, but the detail and 'one-call' framing give enough distinctiveness.
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?
The description provides no guidance about when to choose this tool over siblings like check_link, domain_info, or extract_url, and no when-not-to-use conditions. It implies comprehensive URL checking via its feature list, but that is not enough to route an agent to the correct tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domain_infoARead-onlyIdempotentInspect
Full domain intelligence: DNS records, WHOIS registration, SSL/TLS certificate, HTTP headers. Charges 0.0005 XNO in Nano via x402.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Domain name (e.g. example.com) to look up DNS, WHOIS, SSL/TLS and headers for. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds meaningful behavioral context beyond that by explicitly stating the monetary cost of 0.0005 XNO and the x402 payment mechanism, which is important for invocation.
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?
The description is a single, compact sentence that front-loads the core purpose and then lists the exact data categories. The cost/payment sentence is also concise and provides necessary operational information without waste.
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?
For a single-parameter tool with a detailed input schema, an output schema, and annotations covering read-only/idempotent behavior, the description is complete. It adds the only missing operational detail: the fee and payment method.
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%, and the parameter description already explains that 'domain' is a domain name and which lookups will be performed. The tool description adds no additional parameter-level insight, so the baseline 3 is appropriate.
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 clear resource (domain) and enumerates specific data categories: DNS records, WHOIS registration, SSL/TLS certificate, HTTP headers. This immediately distinguishes it from sibling tools like geoip_lookup or check_url_status.
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?
The description implies the tool should be used when comprehensive domain intelligence is needed, and the component list gives context. However, it does not explicitly state when to prefer this over siblings or mention any exclusions, such as when check_url_status or geoip_lookup would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extract_urlARead-onlyIdempotentInspect
Extract clean text and markdown from a web page URL. Charges 0.0001 XNO in Nano via x402 protocol.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Full http(s) URL of the web page to extract clean text/markdown from. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, idempotent, and non-destructive behavior. The description adds meaningful behavioral context by disclosing the exact cost (0.0001 XNO via x402 protocol), which is not captured in annotations or schema. No contradiction with annotations.
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 sentences with no filler. The primary function is front-loaded, and the cost disclosure is concise and relevant. Every word earns its place.
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?
For a single-parameter tool with full schema coverage, an output schema, and safety annotations, the description covers the essential behavioral context including cost. Nothing critical is missing for an agent to invoke this tool 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 schema fully documents the url parameter. The description adds no new parameter-level detail beyond the schema, which is acceptable but not above baseline.
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 states a specific verb ('Extract') and resource ('clean text and markdown from a web page URL'), clearly differentiating this tool from siblings like check_url_status or web_search. The purpose is unambiguous and immediately actionable.
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 context is implied through the purpose: use this when you need clean text or markdown from a specific web page. However, there is no explicit guidance about when not to use it or which sibling alternatives might be preferable for related but different tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
geoip_lookupARead-onlyIdempotentInspect
IP geolocation lookup: country, city, coordinates, ISP, ASN, timezone. Use 'myip' for the caller's own IP. Charges 0.0001 XNO in Nano via x402.
| Name | Required | Description | Default |
|---|---|---|---|
| ip | Yes | IPv4/IPv6 address to geolocate, or the literal 'myip' to use the caller's own IP. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive behavior, so the safety profile is covered. The description adds value beyond annotations by disclosing the external cost (0.0001 XNO via x402) and the special 'myip' handling, both of which are non-obvious behavioral traits an agent should know 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?
The description is three short sentences that front-load the core purpose, then provide the special parameter value, then the cost warning. Every sentence adds necessary information and there is no filler or repetition of what the schema already states.
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?
For a single-parameter tool with full schema coverage, a rich output schema, and safety annotations, the description is sufficiently complete. It covers the tool's output categories, the special input value, and the cost implication, leaving no critical gap for correct invocation.
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 input schema already documents the 'ip' parameter fully, including IPv4/IPv6 and the 'myip' literal. The description reiterates the 'myip' option but does not add substantive semantics beyond the schema, so the baseline score of 3 is appropriate.
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 clearly states the tool's purpose as 'IP geolocation lookup' and enumerates the returned data types: country, city, coordinates, ISP, ASN, timezone. This is specific and distinct from sibling tools like domain_info or check_url_status, so an agent can determine immediately what this tool does.
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?
The description gives a useful conditional instruction ('Use 'myip' for the caller's own IP') and notes the XNO charge, which helps with invocation decisions. However, it does not explicitly state when to choose this tool over alternatives or mention exclusion criteria, so some inference is required.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcp_findARead-onlyIdempotentInspect
Search paid MCP and x402 service directories for a task. Returns matching services with their settlement rails, prices, and x402 health. Optional filter_rail='nano' shows only XNO-settling services. Charges 0.0001 XNO in Nano via x402.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Natural-language query — what the MCP or x402 service should do. | |
| limit | No | Max results to return (1-50), default 10. | |
| filter_rail | No | Optional rail filter — pass 'nano' to show only services that settle in Nano (XNO), 'base' for USDC on Base, etc. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds valuable behavioral context beyond annotations: it discloses that the tool charges 0.0001 XNO via x402, which is a critical side effect not captured by the annotations. It also describes the return content (settlement rails, prices, x402 health). This is strong additional transparency, though it could have elaborated on what 'x402 health' means or whether the charge applies even on failed searches.
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 earning its place: the first states the core function and return value, the second gives a concrete filter example, and the third discloses the cost. The most important information is front-loaded. No filler or repetition of schema details.
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 has an output schema, so return values are already structured. The description covers the key contextual facts: what it searches, what it returns, the optional filter, and the cost. The only minor gap is that it doesn't explain what 'x402 health' means or whether the 0.0001 XNO charge is always incurred, but given the output schema and annotations, this is reasonably complete.
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 schema already documents all three parameters well. The description adds a bit of semantic context by explaining the filter_rail='nano' behavior and the natural-language nature of q, but it doesn't go beyond what the schema already says. Baseline 3 is appropriate because the schema carries the heavy lifting.
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 states a specific verb ('Search'), a specific resource ('paid MCP and x402 service directories'), and the purpose ('for a task'). It also names the return value ('matching services with their settlement rails, prices, and x402 health'), which distinguishes it from sibling tools like web_search or check_url_status. The optional filter_rail='nano' detail further clarifies scope.
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?
The description clearly implies when to use this tool: when the agent needs to find a paid MCP or x402 service for a task. It also gives a concrete usage example ('filter_rail='nano' shows only XNO-settling services'). However, it does not explicitly state when NOT to use it or name alternatives like web_search for general web queries, so it falls just short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nano_account_infoARead-onlyIdempotentInspect
Nano account intelligence: balance, representative, block count, frontier, weight, pending transactions. Charges 0.0005 XNO in Nano via x402.
| Name | Required | Description | Default |
|---|---|---|---|
| account | Yes | Nano account address (nano_... or xrb_...) to look up balance, representative, block count, frontier, weight, pending. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool read-only, idempotent, and non-destructive. The description adds valuable behavioral context beyond annotations by disclosing the 0.0005 XNO charge via x402, which is critical for an agent deciding whether to invoke it. No contradiction exists between the description and annotations.
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?
The description is compact and front-loaded: the first sentence states the data payload, and the second adds the cost. Every sentence earns its place, with no filler or redundant elaboration.
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?
Given the low complexity of a single-parameter tool, the fully documented schema, the presence of an output schema, and annotations covering side effects, the description is complete. The unusual and important cost detail is disclosed, and nothing essential for invoking the tool 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 description coverage is 100% for the single account parameter, including the address format and the fields it returns. The description largely repeats these same fields rather than adding new parameter semantics beyond the schema, so the high-coverage baseline of 3 is appropriate.
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 clearly identifies the resource (Nano accounts) and enumerates the exact data returned: balance, representative, block count, frontier, weight, and pending transactions. It uses the noun phrase 'account intelligence' rather than an explicit verb, but the scope is unambiguous and clearly distinct from the web/URL-focused sibling tools.
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?
The usage context is implied by the resource description: use this when you need Nano account information. However, there is no explicit guidance about when to choose this tool over alternatives or when not to use it, though none of the listed siblings appear to overlap functionally.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scrape_pageARead-onlyIdempotentInspect
Scrape one page with a real stealth browser — no AI. Returns the final URL, title, visible text, structured item cards (products, prices, listings) and interactive elements. Charges 0.002 XNO via x402. Fast (~1s).
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The page to scrape, e.g. https://arxiv.org or example.com. | |
| elements | No | Include the interactive-element list (ids, roles, names). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the read-only/idempotent/non-destructive profile, and the description adds genuinely new operational context: a paid x402 charge of 0.002 XNO, a stealth-browser execution model, and ~1s latency. It stops short of describing failure modes, pagination, or what happens when payment is declined, so it is strong but not exhaustive.
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 compact sentences, front-loaded with the action and mechanism, followed by output contents, cost, and speed. No sentence is padding; even the payment and latency clauses carry decision-relevant information.
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 not be enumerated, yet the description still summarizes them. Combined with cost, speed, and browser model, an agent has enough to invoke correctly; only edge-case behavior (payment failure, per-page limits) is unaddressed.
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' and 'elements' are already documented in the schema and the description adds no syntactic or format detail beyond it. The mention of 'interactive elements' loosely mirrors the 'elements' flag, but this is the baseline case where the schema does the heavy lifting.
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 ('Scrape one page'), plus the mechanism ('real stealth browser — no AI'), which implicitly separates it from the AI-driven browser_agent and from the plural scrape_pages sibling. An agent can tell what this does and how it differs without opening any 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?
Usage is implied rather than stated: single-page scope, no AI, ~1s latency, and a fixed cost hint at when to prefer it over an AI agent or bulk scraper. However, no sibling is named and there is no explicit when-not guidance (e.g. use scrape_pages for multiple URLs, browser_agent for interaction).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scrape_pagesARead-onlyIdempotentInspect
Scrape up to 100 pages in parallel with real stealth browsers — no AI. Returns one result per URL: final URL, title, visible text, structured item cards and interactive elements. Charges 0.002 XNO per page via x402 (price scales with the number of pages).
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | JSON list of 1-100 pages to scrape: ["https://a.com", "https://b.com"] | |
| elements | No | Include the interactive-element list per page. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive behavior, so the bar is lower; the description still adds substantive context the annotations cannot convey — the stealth-browser execution model, the absence of AI, and a concrete cost model (0.002 XNO per page via x402, scaling with page count). It does not describe partial-failure behavior, which is the main remaining gap.
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 sentences with the core capability front-loaded, then return shape, then cost. The clause 'price scales with the number of pages' mildly restates the per-page price, but overall there is little waste.
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 not be spelled out, and annotations cover the safety profile; the description nevertheless adds execution model and pricing. Only edge-case behavior (per-URL failures, concurrency limits) is unaddressed, which is a minor gap for a batch scraper.
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% and both parameters (urls, elements) are documented in the schema itself, so the schema carries the semantics. The description adds only the 1-100 range in prose, which the schema already states, so it lands at the baseline.
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 and resource (scrape pages) and states scale and mode ('up to 100 pages in parallel with real stealth browsers'). It implicitly separates itself from the singular sibling scrape_page and the AI-driven browser_agent, but never names an alternative outright.
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: the batch scale points away from scrape_page and 'no AI' points away from browser_agent, but there is no explicit statement of when to pick this tool over those siblings, nor any prerequisite or exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_searchARead-onlyIdempotentInspect
Web search via DuckDuckGo. Returns structured results with titles, URLs, and snippets. Charges 0.0001 XNO in Nano via x402.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query string to run through the web search backend. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only and idempotent behavior, so the description adds valuable context by disclosing the exact cost ('0.0001 XNO in Nano via x402') and the structured return shape. It does not mention rate limits or failure modes, but the cost disclosure is a meaningful addition beyond annotations.
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?
The description is three short, front-loaded sentences with no filler. Each sentence earns its place: the operation, the output shape, and the cost. It is concise while still conveying essential information.
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 one fully documented parameter, an output schema, and annotations covering safety and idempotency, the description only needs to add engine, result shape, and cost—which it does. Nothing critical for invoking the tool 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%, and the schema already describes q as a 'Search query string to run through the web search backend.' The description adds the DuckDuckGo engine context, but it does not materially enrich parameter semantics beyond what the schema provides. This aligns with the baseline of 3 for high schema coverage.
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 states a specific verb and resource: 'Web search via DuckDuckGo.' It also clarifies the result type ('structured results with titles, URLs, and snippets'), which clearly distinguishes it from sibling tools like check_url_status or domain_info. The purpose is unmistakable.
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?
The description clearly implies when to use the tool: whenever a DuckDuckGo-powered web search is needed. It does not explicitly name excluded cases or alternatives, but 'Web search via DuckDuckGo' is a clear usage context that separates it from URL/domain checking tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
youtube_transcriptARead-onlyIdempotentInspect
Extract captions and transcript from a YouTube video URL. Returns timestamped segments and model-sized chunks with deep-linked citations. Charges 0.0005 XNO in Nano via x402.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | YouTube video URL (watch, youtu.be, embed or shorts format). | |
| language | No | Language code for the transcript (default 'en'). | en |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive behavior. The description adds valuable behavioral context beyond that by disclosing the cost (0.0005 XNO via x402) and the output shape (timestamped segments, model-sized chunks, deep-linked citations), which are not present in annotations.
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 sentences, zero redundancy. The core action is front-loaded, followed by return format and cost. Every sentence contributes useful information.
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?
Given the tool's low complexity, full schema coverage, existing output schema, and annotations, the description covers the essential operational details: function, return style, and cost. Nothing an agent needs to invoke 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 description coverage is 100%, so both parameters (url and language) are already fully documented in the schema. The description adds no additional parameter-level meaning; baseline 3 is appropriate.
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?
Description uses a specific verb ('Extract') and resource ('captions and transcript from a YouTube video URL'), making the tool's function immediately clear. It also differentiates from all sibling tools, none of which are transcript-focused.
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?
The description implies usage for retrieving YouTube transcripts, but provides no explicit when-to-use guidance or mentions of alternatives. It doesn't state when not to use this tool versus other URL/network tools, leaving selection mostly to inference.
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
- Added
browser_agent - Added
browser_agent_batch - Added
scrape_page - Added
scrape_pages
1 tool update
- Added
mcp_find
8 tool updates
- Changed
check_link1 field changed- added
Input schema / properties / url / descriptionAdded value: +"Full http(s) URL whose HTTP status, response time and redirect chain to check."
- Changed
check_url_status2 fields changed- added
Input schema / properties / previous_hash / descriptionAdded value: +"Optional hash of the body from a previous call, used to detect content drift." - added
Input schema / properties / url / descriptionAdded value: +"Full http(s) URL whose status, redirect chain, TLS validity and content to check."
- Changed
domain_info1 field changed- added
Input schema / properties / domain / descriptionAdded value: +"Domain name (e.g. example.com) to look up DNS, WHOIS, SSL/TLS and headers for."
- Changed
extract_url1 field changed- added
Input schema / properties / url / descriptionAdded value: +"Full http(s) URL of the web page to extract clean text/markdown from."
- Changed
geoip_lookup1 field changed- added
Input schema / properties / ip / descriptionAdded value: +"IPv4/IPv6 address to geolocate, or the literal 'myip' to use the caller's own IP."
- Changed
nano_account_info1 field changed- added
Input schema / properties / account / descriptionAdded value: +"Nano account address (nano_... or xrb_...) to look up balance, representative, block count, frontier, weight, pending."
- Changed
web_search1 field changed- added
Input schema / properties / q / descriptionAdded value: +"Search query string to run through the web search backend."
- Changed
youtube_transcript2 fields changed- added
Input schema / properties / language / descriptionAdded value: +"Language code for the transcript (default 'en')." - added
Input schema / properties / url / descriptionAdded value: +"YouTube video URL (watch, youtu.be, embed or shorts format)."
1 tool update
- Added
youtube_transcript
7 tool updates
- First observed
check_link - First observed
check_url_status - First observed
domain_info - First observed
extract_url - First observed
geoip_lookup - First observed
nano_account_info - First observed
web_search
Related MCP Connectors
Pay-per-call web extraction, SEO audits and text analysis. USDC on Base via x402, no API keys.
Pay-per-call web extract, DNS/WHOIS/IP lookup, PDF/RSS/sitemap tools. x402 USDC on Base/Algorand.
Search, URL-to-markdown, change detection, live data, x402 trust tools. USDC pay-per-call.
Pay-per-call web intelligence MCP: fetch pages, check links, detect changes, verify claims.
Related MCP Servers
- AlicenseAqualityCmaintenancePay-per-call web page extraction, on-page SEO audits and text analysis for AI agents. Paid in USDC on Base via x402; no API keys, failed calls are not charged.4MIT
- AlicenseAqualityCmaintenancePay-per-use clean web reader for AI agents. URL in, markdown plus metadata out, in milliseconds. Settled per-call in USDC over x402 — no signup, no API keys.171 npm3MIT
- AlicenseNot gradedqualityBmaintenanceWebsite intelligence tools for AI agents. Ten pay-per-call tools via x402 micropayments (USDC on Base) — no accounts, no API keys.1MIT
- AlicenseNot gradedqualityDmaintenancePay-per-call web search for AI agents, settled in USDC on Base via the x402 protocol. No API key or subscription required; users fund a wallet and get a web_search tool.8 npm1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.