Skip to main content
Glama

Server Details

Pay-per-call tools for AI agents, paid in USDC on Base or Solana. Web search, page and PDF reading, crypto news, Hyperliquid perps, market pulse, Chainlink price history, token checks, SEC filings, weather and more. Free calls every day, and a failed call costs nothing. Works with Tollkit Wallet.

Ownership verified
Status
Healthy
Uptime
100.0% over 42 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
UltraStarz/x402-extract-mcp
GitHub Stars
0
Server Listing
x402-extract-mcp

TDQS

A4/5.0

Scored across 40 tools

Disambiguation3/5

Most tools have clearly distinct purposes, and descriptions add helpful “Use instead” guidance. However, there are several overlapping families: read_page/read_pages/page_brief/search_and_read, token_info/token_check/token_price/pretrade_check, wallet_balance/wallet_portfolio/check_my_balance, and multiple x402 discovery tools. The overlaps are manageable but numerous enough that an agent can hesitate.

Naming Consistency4/5

All tool names are lowercase snake_case, which is consistent and readable. Most names combine a domain or object with an action, but the pattern is not strictly verb_noun throughout; some are noun phrases, some verb-first, and some prefixes like x402_ and x_. The consistency is good but not perfect.

Tool Count2/5

40 tools is well above the typical coherent set size and spans many unrelated domains. While each tool may earn its place individually, the overall surface is sprawling and imposes a high selection burden on the agent. For a single MCP server, this is too many tools for comfortable scoping.

Completeness3/5

The toolkit covers a broad range of paid API tasks: web reading/search, product extraction, crypto data, SEC filings, x402 discovery, weather, geocoding, and wallet utilities. However, coverage is uneven and not clearly tied to one domain; many areas have only one or two tools, and there are obvious gaps for a general API toolkit. It is broadly useful but not demonstrably complete.

Available Tools

40 tools
airport_delaysUS airport delays and ground stopsA
Read-only
Inspect

Check US airport delays from the FAA's live National Airspace System status: ground stops, ground delay programs, arrival and departure delays (with minutes, trend and reason) and closures. Give an airport code, or none to list every airport with delays right now.

$0.003 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: You need to know if a US airport has delays or a ground stop right now. Parameters: airport: a US code like JFK or KJFK; leave out to list every airport with delays. Returns: ground stops, ground delay programs, arrival and departure delays (minutes, trend, reason) and closures, live from the FAA.

NameRequiredDescriptionDefault
airportNoUS airport code, e.g. "JFK" or "KJFK". Leave out to list every airport with delays.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations cover only readOnlyHint/openWorldHint, so the description must carry the rest — and it does: exact price ($0.003 USDC over x402), the fact that failed calls cost nothing, the quote-then-sign payment handshake, and a free tier of the first 3 calls/day. This is exactly the billing/auth behavior an agent needs before invoking.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well front-loaded: purpose, then pricing, then when-to-use, params, and returns. The labeled sections make skimming easy. It loses a point because the final 'Parameters' and 'Returns' lines duplicate content already stated in the opening paragraph and in the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description correctly enumerates the return payload (ground stops, GDPs, delays with minutes/trend/reason, closures). Combined with pricing and optional-parameter behavior, an agent has everything needed to call this correctly on the first attempt.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both the airport format ('JFK' or 'KJFK') and the payment payload semantics are already documented in the schema. The description largely restates these, adding no syntax, validation, or edge-case detail beyond what the structured fields provide. Baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource (check US airport delays) and pins the source: the FAA's live National Airspace System status, enumerating the exact data classes returned (ground stops, ground delay programs, arrival/departure delays, closures). No sibling tool overlaps this domain, and the first sentence alone differentiates it from weather_forecast, geocode_address, and the crypto/finance siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Contains an explicit 'When to use: You need to know if a US airport has delays or a ground stop right now' statement plus the optional-code convention ('leave out to list every airport with delays'). However it names no alternative or exclusion — e.g. it never says when a generic weather or web search would be better, or that it does not cover non-US airports.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

attest_pageGet signed proof of what a page saidA
Read-only
Inspect

Prove what a web page said, at a time, in a way someone who distrusts you can check.

Renders the page and returns a signed, timestamped record of it: the text and its SHA-256, the HTTP status, the response headers, the serving IP, and the TLS certificate the site presented. Optionally a screenshot and its hash. All of it hashed into one claim and signed, so any single altered byte breaks the signature.

Use it when a page might change or be denied later: terms of service before you agree, a price before you act on it, a policy you are relying on, a claim a competitor published, a listing that can be edited.

Verification is free, needs no account, and does not depend on this service continuing to exist — the math is public and verify_attestation explains how to redo it yourself. We keep no copy, so the response you receive IS the evidence. Store it.

$0.05 USDC per call over x402. A render that fails costs nothing.

When to use: You may later need to prove what a page said at a moment: terms, a price, a claim. Use instead: screenshot_page or read_page when you only need to see or read it. Parameters: url: absolute https URL. screenshot: true adds an image to the evidence (larger response), default false. Returns: a signed, timestamped attestation (text, hashes, status, headers, IP, TLS certificate). Keep it: no copy is stored.

NameRequiredDescriptionDefault
urlYesAbsolute https:// URL of the page to attest to. Anything a dispute could turn on: terms of service, a price, a published policy, a competitor's claim, a listing that may be edited later.
paymentNoBase64 x402 payment payload. Omit it to receive a quote instead of an attestation; sign that and call again.
screenshotNoDefault false in MCP. A screenshot makes the evidence much stronger, but the image comes back inline as roughly 55,000 characters of base64. With it false the attestation is text-only and internally complete: it claims no screenshot and commits to no hash you cannot check. Set true when the visual appearance is the thing in dispute and you can afford the bytes.

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the `readOnlyHint`, the description provides deep operational transparency. It details the exact components contained in the attestation (SHA-256, IP, TLS certificate, etc.), mandates that the user must store the response (we keep no copy), and specifies the cost structure, all of which are critical for agent decision-making.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description, while long due to the tool's complexity, is perfectly structured. It starts with a clear value proposition, details the mechanism, provides usage guidance, discusses behavioral constraints, and finishes with practical details (cost, alternatives). Every paragraph serves a distinct, valuable purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of generating legal/technical proof, the definition is exceptionally complete. It covers not only *how* to call it, but also *why* it is necessary, *what* the output entails, and *what* the cost is, making it fully self-contained for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although the schema is 100% covered, the description significantly enhances semantic understanding. For `screenshot`, it provides a critical warning about the output size consequence (55,000 characters of base64), allowing the agent to make an informed cost/utility tradeoff based on the parameter value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly defines the tool's purpose as generating a signed, verifiable proof of a page's content at a specific moment. It achieves maximum clarity by explicitly directing the agent to use alternatives like `read_page` or `screenshot_page` when proof is not required, distinguishing it sharply from sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The tool provides multiple explicit use cases (ToS, price, claim) and clear behavioral triggers for its use. Furthermore, it explicitly tells the agent when *not* to use it (i.e., when simple reading or viewing suffices), which is extremely valuable guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

best_x402_toolsBest x402 tools for a taskA
Read-only
Inspect

Find the best paid x402 API for a task. Ranked by paying wallets and repeat buyers (not raw call counts, which are easy to inflate), one endpoint per seller, with price and a caution where a seller's numbers look unusual. Tollkit runs this ranking and sells tools too; its own are ranked the same way and marked sold_by_tollkit.

$0.01 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You want the best-proven paid API for a task, ranked by repeat buyers rather than raw calls. Use instead: find_service (free) for a quick live search; x402_seller_lookup for one seller in depth. Parameters: task: what the tool should do. limit: 1-20 results, default 10. Returns: ranked endpoints, one per seller, with price, paying wallets, repeat buyers and cautions.

NameRequiredDescriptionDefault
taskYesWhat the tool should do, e.g. "web search" or "token price on solana".
limitNoHow many results, 1-20 (default 10).
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With annotations only covering read-only and open-world behavior, the description adds substantial context: $0.01 USDC per call, failed calls cost nothing, quote-first payment flow, ranking by paying wallets and repeat buyers, cautions, and Tollkit's own-seller disclosure. It also explains why raw call counts are avoided.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The definition is front-loaded with purpose and then uses labeled sections for pricing, when-to-use, alternatives, parameters, and returns. Every sentence carries useful information, and none are filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although there is no output schema, the description explains the return shape: ranked endpoints, one per seller, with price, paying wallets, repeat buyers, and cautions. Combined with annotations covering safety and open-world scope, the definition is complete enough for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so task, limit, and payment are already fully documented, including the 1-20 range/default and the quote-mechanism for payment. The description repeats the schema's parameter guidance but does not add parameter-specific syntax or constraints beyond what the input schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence states a specific verb and resource: 'Find the best paid x402 API for a task.' It then distinguishes the ranking methodology from siblings and names two alternatives, so an agent can tell it apart without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives an explicit 'When to use' condition and a 'Use instead' section naming find_service and x402_seller_lookup with their respective scopes. It also explains the quote flow for payment, leaving no ambiguity about when to call with or without payment.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_my_balanceCheck my wallet balanceA
Read-only
Inspect

Free. Check how much USDC is left in your own wallet on Base, so you can tell your human before you run out. Returns the balance and whether it's below your threshold. Read-only: it moves nothing. Tollkit never holds anyone's funds or keys.

When to use: You pay for tools from a wallet and want to know if it's running low. Use instead: wallet_balance for any wallet, chain or token. Parameters: address: the wallet you pay from. network: base (default) or sepolia. low_below: your low-balance threshold in USDC, default 1. Returns: the USDC balance and whether it's below low_below. Free.

NameRequiredDescriptionDefault
addressYesYour wallet address (0x...). The address you pay from.
networkNoDefault base. Use sepolia for test money.
low_belowNoUSDC amount you consider low. Default 1.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, but the description adds material context beyond them: cost ('Free'), custody guarantees ('Tollkit never holds anyone's funds or keys'), and the fact that it moves nothing. It also previews the return payload. Missing only deeper operational detail like failure modes when the address is malformed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well front-loaded and organized into labeled sections (When to use / Use instead / Parameters / Returns). Slightly wasteful: 'Free.' appears twice and the return payload is described in the opening sentence and again under 'Returns'.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, and the description compensates by stating what is returned (the USDC balance and whether it falls below low_below). Combined with full parameter coverage and the safety profile, an agent has everything needed to invoke and interpret this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all three parameters are already documented in the schema, including defaults and the enum. The description restates them (address 'the wallet you pay from', network default base, low_below default 1) with only slight added framing, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource with scope: 'Check how much USDC is left in your own wallet on Base.' It explicitly contrasts itself with the sibling 'wallet_balance for any wallet, chain or token,' so an agent can route correctly without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides an explicit 'When to use' trigger (you pay for tools from a wallet and want to know if it's running low) and an explicit 'Use instead' alternative (wallet_balance) with the condition that selects it. 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.

check_serviceWeigh Station: check an x402 service before payingA
Read-only
Inspect

Free. Probes any x402 endpoint WITHOUT paying and reports what it actually charges, to which wallet, on which network, and how that compares with its public Coinbase Bazaar listing (price, recipient, distinct payers in the last 30 days). Returns facts and named signals such as pay_to_differs_from_listing; it does not score or recommend. Works for services that have nothing to do with Tollkit. Read-only: it sends one unpaid request, the way any buyer asks for a price, and never pays or changes anything.

When to use: Before paying any x402 endpoint, to see what it really charges and who gets paid. Free. Parameters: url: the endpoint. One unpaid request is sent; nothing is paid. Returns: price, network, pay-to wallet, how they compare with its Bazaar listing, and named signals such as pay_to_differs_from_listing.

NameRequiredDescriptionDefault
urlYesThe x402 endpoint, e.g. https://api.example.com/v1/thing

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint; the description adds real value on top by specifying that exactly one unpaid request is sent, that nothing is paid or changed, and that the tool returns facts and named signals without scoring or recommending. It omits rate-limit or failure behavior, keeping it out of the top band.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The content is front-loaded and organized under When to use/Parameters/Returns, but 'Free' and 'nothing is paid' are restated three times and the Returns section largely duplicates the opening paragraph. It is readable but carries visible redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description compensates by enumerating the return contents (price, network, pay-to wallet, listing comparison, named signals). Only minor gaps remain, such as response format or failure handling for unreachable or non-x402 endpoints.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single url parameter, so the schema already carries the semantics and baseline is 3. The description repeats that url is the endpoint and adds that one unpaid request is sent, but no format or syntax detail beyond the schema's example.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb (probes) and resource (any x402 endpoint) and states the exact scope: what it charges, to which wallet, on which network, versus the Bazaar listing. This is clearly distinguishable from siblings such as x402_seller_lookup or find_service.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

An explicit 'When to use: Before paying any x402 endpoint' plus a note that it works for services unrelated to Tollkit gives an agent a clear trigger condition. It does not name alternative tools or state when-not to use it, so it stops 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.

company_due_diligenceCompany due diligenceA
Read-only
Inspect

Run due diligence on a US public company in one call: profile, revenue/profit growth, margins, leverage and cash ratios computed from SEC filings, key filings with links, and plain-English summaries of its latest 8-K material events.

$0.03 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You are evaluating a US public company and want the analysis done: trends, ratios and what its recent 8-Ks said. Use instead: company_snapshot for a quicker, cheaper overview. Parameters: ticker or cik (one is required). Returns: profile, revenue and profit growth, margins, leverage and cash ratios, key filings, and plain-English summaries of the latest 8-K events.

NameRequiredDescriptionDefault
cikNoSEC Central Index Key. Give this or ticker.
tickerNoUS stock ticker, e.g. "NVDA". Give this or cik.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations cover only readOnlyHint and openWorldHint, so the description's disclosure of cost ($0.03 USDC per call over x402), the failed-calls-are-free guarantee, and the quote-then-sign payment flow adds genuinely useful context an agent cannot get from structured fields. It stops short of stating data freshness/latency or rate limits, 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded purpose with clearly labeled sections ('When to use', 'Use instead', 'Parameters', 'Returns') that make it scannable. The only flaw is redundancy: the 'Returns' section restates the same list of outputs already itemized in the opening sentence, adding length without new information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a no-output-schema tool, the description covers purpose, scoping, the competing sibling, cost and payment mechanics, parameter requirements, and return shape. An agent has everything needed to decide to call it and to invoke it correctly, including how to handle the first unpaid call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description adds real meaning the schema lacks: the schema declares zero required parameters, whereas the text clarifies 'ticker or cik (one is required)', resolving an either/or ambiguity. It also explains the purpose of the payment parameter (omit for a quote, sign and re-call).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening states a specific verb and resource ('Run due diligence on a US public company in one call') and enumerates exactly what is computed (profile, revenue/profit growth, margins, leverage and cash ratios from SEC filings, key filings, 8-K summaries). It also names the sibling it is not: company_snapshot. An agent can distinguish it 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.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives an explicit when-to-use condition ('You are evaluating a US public company and want the analysis done') and a named alternative ('Use instead: company_snapshot for a quicker, cheaper overview'). The pricing/payment flow is also spelled out as a procedural step, leaving nothing to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

company_snapshotCompany snapshotA
Read-only
Inspect

Get a one-call snapshot of a US public company from SEC EDGAR: profile, most recent filings with links, and key financials (revenue, net income, EPS, assets, cash, operating cash flow) for the last two fiscal years and the latest quarter.

$0.006 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You want one overview of a US public company: who it is, recent filings and headline numbers. Use instead: company_due_diligence for growth, margins, leverage and 8-K summaries; sec_company or sec_financials for just one part (cheaper). Parameters: ticker or cik (one is required). filings: how many recent filings, 1-40, default 8. form: only this form type. Returns: profile, filings[] with links, and key financials for the last two fiscal years and the latest quarter.

NameRequiredDescriptionDefault
cikNoSEC Central Index Key. Give this or ticker.
formNoOnly this form type, e.g. "10-K".
tickerNoUS stock ticker, e.g. "AAPL". Give this or cik.
filingsNoHow many recent filings to list (default 8).
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations give readOnlyHint and openWorldHint, but the description adds operational behavior they cannot express: the $0.006 USDC x402 cost, that failed calls are free, and the two-step quote-then-sign flow via the payment parameter. That is exactly the kind of billing/auth context an agent needs before invoking a paid tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the core purpose, then cleanly segments payment, when-to-use, alternatives, parameters and returns. Every sentence carries information; no filler or restatement of the name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description compensates by summarizing the return shape (profile, filings[] with links, key financials for two fiscal years plus the latest quarter). Combined with the payment flow and alternatives, an agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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 meaning the schema omits: it clarifies that ticker or cik is required (the schema declares zero required properties), documents the filings range 1-40 with default 8, and gives an example form type. Useful disambiguation beyond the field-level descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Get a one-call snapshot of a US public company from SEC EDGAR') and enumerates exactly what the snapshot contains: profile, recent filings with links, and named financial metrics. It explicitly differentiates itself from siblings company_due_diligence, sec_company and sec_financials, so an agent can select it without opening other schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Contains explicit 'When to use' and 'Use instead' sections naming three alternatives with the exact conditions that select each (due diligence for growth/margins/leverage/8-Ks; sec_company or sec_financials for a single part, noted as cheaper). 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.

compare_productsGet details for several products at onceA
Read-only
Inspect

Price the same product at several stores — up to 5 URLs in ONE call and ONE payment.

USE THIS WHENEVER YOU HAVE MORE THAN ONE URL. Comparing an item across stores, checking a short list, or refreshing a handful of tracked prices. It returns full details for each URL so YOU can compare them; it does not rank them or pick a winner. Through get_product_details that is one EIP-3009 signature, one settlement and one round trip PER URL; this is one of each for the whole set.

RETURNS one entry per URL in the order given, each with the same product and page objects get_product_details returns, plus ok/error so a single dead URL does not cost you the rest.

COST $0.04 flat for up to 5 URLs — cheaper per page than calling get_product_details 5 times.

BILLING, stated plainly: the price is flat, so a batch where only SOME URLs succeed is charged in full. A batch where NO url succeeds returns an error and is not charged. If you have one URL and are unsure it is live, get_product_details is the cheaper bet.

Duplicate URLs are removed and not billed twice.

When to use: You have 2-5 product page URLs, the same item at different stores or a short list. Use instead: get_product_details for a single URL. Returns: one entry per URL in order, each ok or with its error.

NameRequiredDescriptionDefault
urlsYesUp to 5 absolute https:// product page URLs. Duplicates are removed and not billed twice.
paymentNoBase64-encoded x402 payment payload. Omit on the first call to receive payment requirements.
allow_redirectNoApplies to every URL. See get_product_details for what it does.

Output Schema

NameRequiredDescription
failedYes
statusYes
billingYesThe billing rule, restated on every response rather than only in the docs.
resultsYes
requestedYes
succeededYes
settlementYes

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only cover readOnlyHint and openWorldHint, and the description goes well beyond that: flat $0.04 cost, full charge on partial success, no charge when all URLs fail, duplicate de-duplication and non-billing, and the distinct payment mechanics (one EIP-3009 signature/settlement/round trip for the whole set vs one per URL). It also states it returns full per-URL data and does not rank or pick a winner.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and scannable, but there is real duplication: the return format ('one entry per URL in order, each ok/error') is stated twice and the when-to-use guidance is repeated in a trailing block. The content is useful but would benefit from trimming.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, yet the description still covers cost, billing edge cases, ordering, and error tolerance for dead URLs. For a paid batch tool with these stakes, 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.

Parameters4/5

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 meaning the schema does not: a single payment payload covers the whole batch, and duplicates are removed before billing. allow_redirect is deferred to the sibling tool by both schema and description, which is a minor gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource — pricing one product across several stores — with a hard scope of up to 5 URLs in one call and one payment. It explicitly distinguishes itself from get_product_details, so an agent can choose between them without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit trigger ('USE THIS WHENEVER YOU HAVE MORE THAN ONE URL'), enumerates the qualifying scenarios, and names the alternative plus its condition ('Use instead: get_product_details for a single URL'). 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.

crypto_market_pulseCrypto market pulseA
Read-only
Inspect

Get the crypto market at a glance in one call: the Crypto Fear & Greed Index (today, yesterday, a week ago), BTC, ETH and SOL with perp price, 24h change, funding and Chainlink reference price, the highest and lowest funding rates, the biggest 24h gainers and losers, and Hyperliquid's total open interest and volume.

$0.003 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You want the state of the crypto market in one call, for example before deciding anything else. Use instead: perps_market for specific coins or more markets; crypto_news for the headlines behind a move. Returns: Fear & Greed (today, yesterday, a week ago), BTC, ETH and SOL with perp price, 24h change, funding and Chainlink price, funding extremes, top gainers and losers, and Hyperliquid totals. Takes no parameters.

NameRequiredDescriptionDefault
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint and openWorldHint, so the description carries real added weight: it states the cost ($0.003 USDC per call over x402), that failed calls are free, and the two-step payment flow (call without `payment` to get a quote, then sign and call again). That is substantive auth/cost context an agent needs before invoking. It stops short of describing latency, caching, or partial-failure behavior, so it is strong rather than exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Usage and alternative routing are well front-loaded, but the payload contents are enumerated twice — once in the opening sentence and again in the 'Returns:' sentence — which is pure duplication. The cost and payment details are the only novel content in the middle block; trimming the repetition would make this much tighter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description is right to enumerate the returned fields in detail, and it does so thoroughly enough for an agent to know what it will get. The payment prerequisite and its quote-first workflow are also covered. The only gap is that quantities/shape of the aggregates (e.g. how many gainers/losers, formatting of the index) are unspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is a single optional parameter with 100% schema description coverage, so the baseline is 3. The description reinforces the quote/payment workflow already documented in the schema, but adds no syntax or format detail beyond it. The line 'Takes no parameters' is a slight overstatement given the optional `payment` field, though it is defensible as 'no required parameters'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb ('Get') and an enumerated resource (Fear & Greed, BTC/ETH/SOL perp data, funding extremes, gainers/losers, Hyperliquid totals) rather than a vague 'market data'. It also explicitly distinguishes itself from siblings by naming perps_market and crypto_news as the alternatives for narrower or adjacent needs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Contains an explicit 'When to use' clause ('you want the state of the crypto market in one call, for example before deciding anything else') and an explicit 'Use instead' clause routing to perps_market for specific coins/more markets and crypto_news for headlines. Both the selection condition and the alternatives are stated, leaving nothing to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

crypto_newsCrypto newsA
Read-only
Inspect

Get recent crypto news for a coin or topic: up to 10 articles from the past hour, day or week with publisher, date, snippet and link, plus a short AI read of the coverage (mood: positive, negative, mixed or neutral; a summary; main themes) written only from those headlines. A read of the news, not advice.

$0.004 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You want what's being said about a coin or the market right now. Use instead: web_search with type "news" for non-crypto topics; crypto_market_pulse for numbers instead of headlines. Parameters: query: a coin or topic; leave it out for the whole market. freshness: hour, day (default) or week. num: 1-10 articles, default 8. Returns: articles[] with title, publisher, date, snippet and link, plus mood (positive, negative, mixed or neutral), a summary and themes, written only from those headlines.

NameRequiredDescriptionDefault
numNoHow many articles (1-10, default 8).
queryNoCoin or topic, e.g. "solana" or "bitcoin ETF". Leave out for the whole crypto market.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.
freshnessNoHow recent: "hour", "day" (default) or "week".

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint/openWorldHint; the description adds the x402 pricing model ($0.004 USDC per call, failed calls free) and the quote-then-sign payment flow, which is essential behavioral context. It also discloses the two-step payment dance and the 'not advice' boundary on the AI read.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action and cleanly sectioned (When to use / Use instead / Parameters / Returns). The Returns line largely repeats the field list already given in the opening sentence, which is minor redundancy rather than bloat.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description carries the return shape (articles[] fields plus mood/summary/themes) and does so explicitly. Combined with the payment and routing guidance, an agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters (including the enum and min/max on num) are already documented. The description's parameter lines restate the same defaults and ranges without adding syntax, format, or edge-case detail, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource (get recent crypto news) and immediately scopes it (up to 10 articles from the past hour/day/week), then names the sibling it is not — web_search for non-crypto and crypto_market_pulse for numbers. An agent can distinguish it from all 38 siblings without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit 'When to use' clause plus a 'Use instead' clause routing to web_search and crypto_market_pulse by condition. Nothing about tool selection 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.

exchange_rateCurrency exchange rateA
Read-only
Inspect

Convert between currencies at European Central Bank reference rates (30 currencies), for the latest business day or any day in the last 90. These rates are published free by the ECB at ecb.europa.eu and are for information only, not for transactions.

$0.002 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: You need to convert between currencies at an official reference rate. Parameters: from and to: 3-letter codes (30 supported). amount: default 1. date: YYYY-MM-DD within the last 90 days; leave out for the latest business day. Returns: the rate, the converted amount and the ECB date used. For information, not for transactions.

NameRequiredDescriptionDefault
toYes3-letter currency code, e.g. "EUR".
dateNoYYYY-MM-DD within the last 90 days.
fromYes3-letter currency code, e.g. "USD".
amountNoAmount to convert (default 1).
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only say readOnly/openWorld; the description adds the pricing model ($0.002 USDC per call via x402), that failed calls are free, the three-free-calls-per-day limit, the two-step quote/sign flow, the data provenance (ECB, published free), and the important caveat that rates are informational and not valid for transactions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core capability, then cleanly sectioned as 'When to use', 'Parameters', and 'Returns'. The payment block is longer than strictly necessary and the 'for information only, not for transactions' caveat is repeated verbatim at the start and end.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although there is no output schema, the description names the return values (rate, converted amount, ECB date used) and fully covers the auth/payment path. An agent has everything needed to invoke this correctly, including what happens on failure and without payment.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so from/to/date/amount/payment are all already documented. The description restates the same facts, adding only the '30 supported' currency count and the default amount of 1; it does not enumerate the supported codes or add format detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource plus scope: 'Convert between currencies at European Central Bank reference rates (30 currencies)'. The ECB-rate and fiat-currency framing clearly separates it from crypto siblings like token_price and crypto_market_pulse.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides an explicit 'When to use' line and an unusually clear payment workflow (call without `payment` for a quote, sign and call again; first 3 calls/day free). It does not name an alternative tool for adjacent needs (e.g., crypto conversion), so it stops short of full when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_serviceWeigh Station: find a paid x402 toolA
Read-only
Inspect

Free. Searches Coinbase's public x402 discovery index for services that do a task (e.g. 'product price lookup', 'send sms', 'web page screenshot'), then checks each result live without paying. Results are ordered by whether they returned a live price quote, then by distinct paying wallets; nobody pays for placement. Descriptions are the sellers' own words.

When to use: You need a paid API for a job and don't know which seller has it. Free. Use instead: best_x402_tools for a ranking by real repeat buyers; check_service when you already have the URL. Parameters: query: the job in plain words. limit: how many to check live, default 5. Returns: matching services, each checked live: whether it answered with a price, the price, network, recipient and paying wallets.

NameRequiredDescriptionDefault
limitNoHow many results to check, default 5.
queryYesWhat you need done, in plain words.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is covered. The description adds genuinely new behavior: no payment occurs, results are live-checked, and ordering is by live price quote then distinct paying wallets with no paid placement. It does not enumerate rate limits or failure modes, keeping it short of a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core purpose, then cleanly sectioned into when-to-use, alternatives, parameters and returns. Slightly long, but each section carries distinct routing or behavioral information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, and the description compensates by describing the return shape (live-check status, price, network, recipient, paying wallets). Combined with the ranking rule and sibling routing, an agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters are already documented in the schema. The description restates them with only a marginal addition ('how many to check live'), so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('searches Coinbase's public x402 discovery index for services that do a task') plus the live-check scope. An agent can distinguish it from best_x402_tools and check_service without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit 'When to use' condition ('you need a paid API for a job and don't know which seller has it') and 'Use instead' routing to two named siblings, each with the condition that selects it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

geocode_addressUS address to coordinatesA
Read-only
Inspect

Turn a US street address into latitude and longitude, with the standardized address, ZIP, county and FIPS code, state and census tract, from the US Census Bureau geocoder. US street addresses only (with a house number).

$0.002 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: You have a US street address and need its coordinates or census details. Use instead: weather_forecast takes the address directly if the weather is all you need. Parameters: address: a US street address with a house number. Returns: latitude and longitude, standardized address, ZIP, county, FIPS code, state and census tract. No match is refused free.

NameRequiredDescriptionDefault
addressYesUS street address, e.g. "1600 Pennsylvania Ave NW, Washington, DC 20500".
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint and openWorldHint; the description adds substantial context the annotations cannot carry: the x402 pricing ($0.002 USDC/call), that failed calls are free, the quote-then-sign payment flow, the 3 free calls/day allowance, and that a non-match is refused free. This is exactly the extra behavioral detail an agent needs before paying.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well front-loaded: purpose first, then cost, then when-to-use, alternative, parameters, and returns. However, the opening sentence already enumerates the full return field list (address, ZIP, county, FIPS, state, census tract) and the trailing 'Returns:' line repeats it verbatim, which is wasted text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter, no-output-schema geocoder with light annotations, the description covers the purpose, the exact return fields, payment/quote mechanics, cost, input constraint, and failure handling. 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.

Parameters4/5

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, but the description adds a meaningful constraint beyond the schema ('US street addresses only (with a house number)') and ties `payment` to the quote workflow. It stops short of full added value but meaningfully supplements the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Turn a US street address into latitude and longitude') and enumerates the exact outputs plus the data source (US Census Bureau geocoder). It explicitly scopes to US street addresses with a house number, and names a sibling alternative, so an agent can distinguish it from weather_forecast without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Contains an explicit 'When to use' line and a 'Use instead' line routing to weather_forecast when only weather is needed. The payment precondition (call without `payment` to get a quote) is also spelled out, leaving nothing to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_product_detailsGet product details from a URLA
Read-only
Inspect

Find out what a product is and what it costs, from its page URL.

USE THIS WHEN you have the URL of ONE specific product — a store listing, a marketplace item, a manufacturer's page — and you need its fields rather than its prose. Typical jobs: comparing the same item across several stores, tracking a price over time, checking whether something is in stock, ingesting a catalogue, or getting a product photo URL.

DO NOT USE THIS FOR search-results or category pages (it returns one product, not a list), pages behind a login or paywall, or pages that are not about a product. It also cannot reach private or internal addresses.

RETURNS name, description, brand, sku, price (a number), currency (ISO 4217), availability (in_stock | out_of_stock | preorder | unknown), images (up to 5 absolute URLs copied from the page, never invented) and variants. See the output schema for the exact shape. Any field the page does not state comes back null rather than guessed.

HOW: the page is rendered in a real headless browser before extraction, so JavaScript-built pages work where a plain fetch returns an empty shell.

COST $0.01 USDC per call over x402 (the quote lists every network you can pay on: Base, and Solana where offered). No account, no API key, nothing to install, and no gas — the facilitator sponsors it. Call once WITHOUT the payment argument to get back the payment requirements, sign a payment for the quoted amount with your own wallet, base64-encode the x402 payload, and call again with that string as payment.

EVERY RESPONSE SAYS WHERE EACH FIELD CAME FROM. provenance.declared lists the fields whose values match what the merchant published in schema.org JSON-LD — their own number, the one they publish for Google. provenance.inferred lists the ones a model read off the page, which might be a strikethrough price or a neighbouring product. Act on declared values; verify inferred ones if the decision matters.

A URL that redirects to what looks like a DIFFERENT page — a discontinued item bouncing to its category listing — is refused free of charge rather than answered with the wrong product. Retry with allow_redirect: true if you want whatever the URL resolves to.

A failed extraction is not charged. Repeat calls for the same URL within 300 seconds are re-served from a recent render and marked cached: true with the render's original fetchedAt.

Call try_it_free first if you want to see real output before spending anything.

When to use: You have the URL of one product page. Use instead: compare_products for 2-5 URLs (one payment); try_it_free to see the output first. Returns: product (name, price, currency, availability, brand, sku, images, variants), provenance of each field, and the page fetched.

NameRequiredDescriptionDefault
urlYesAbsolute https:// URL of a single product page. Not a search or category page.
paymentNoBase64-encoded x402 payment payload. Omit on the first call to receive payment requirements.
allow_redirectNoDefault false. By default a URL that redirects to what looks like a different page (a discontinued item bouncing to its category listing) is refused free of charge, because extracting it would return a real product that is not the one you asked for. Set true if you want whatever the URL resolves to.

Output Schema

NameRequiredDescription
pageYes
cachedYesTrue when this answer was re-served from a recent render rather than produced now. Re-serving is still a paid call; it is faster, and the data is as old as cache_age_seconds says.
statusYes
productYes
redirectYesPresent only when the browser landed somewhere other than the URL you gave. The data describes `final`, not `requested`.
provenanceYesWhere each field came from. `declared` matches what the merchant published in schema.org data — their own number. `inferred` was read off the page by a model. Null fields appear in neither. Treat a declared price as a fact and an inferred one as a reading.
settlementYesBase64 x402 settlement receipt, when the facilitator returned one.
cache_age_secondsYes

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=true and openWorldHint=true, so the description carries the real burden and does: it discloses the $0.01 x402 payment workflow, the no-account/no-gas model, headless-browser rendering, free-of-charge refusal on cross-page redirects, uncharged failed extractions, 300-second caching with `cached: true`, and the declared-vs-inferred provenance distinction. This is exactly the context beyond annotations that changes how an agent calls the tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and well-sectioned with headers, but the trailing 'When to use / Use instead / Returns' block repeats content already stated in the body (the single-URL condition, compare_products, try_it_free, and the field list). That duplication costs it, though the middle sections are dense and earn their space.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given a paid, mutation-free, open-world extraction tool with an output schema, this covers every decision point an agent needs: when to use it, when not to, cost and payment mechanics, failure/refund behavior, caching, and provenance semantics. The output schema exists, so the return-value restatement is a bonus rather than a gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description adds real meaning beyond it: it spells out the two-call payment dance (call without `payment` to get requirements, sign, base64-encode the x402 payload, call again with it) and the rationale for `allow_redirect` matching the schema note. It reinforces rather than merely restates, though it does not add syntax the schema lacks.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource+scope: 'Find out what a product is and what it costs, from its page URL.' It explicitly differentiates from siblings by naming compare_products (2-5 URLs), read_page/page_brief territory (prose rather than fields), and try_it_free, so an agent can route 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.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit USE THIS WHEN conditions ('URL of ONE specific product — store listing, marketplace item, manufacturer's page'), an explicit DO NOT USE list (search/category pages, login/paywalled pages, non-product pages, private/internal addresses), and names alternatives with the condition that selects them (compare_products for 2-5 URLs, try_it_free to preview).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_service_infoService infoA
Read-only
Inspect

Free. Price, network, and what this service returns. For a sample of the actual output rather than a description of it, call try_it_free instead.

When to use: You want this service's prices, network and endpoints in machine-readable form. Free. Use instead: try_it_free to see real output. Returns: prices per tool, the payment network and recipient, and what each tool returns.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds real value beyond that by stating the operation is free (cost transparency, twice) and enumerating what comes back: prices per tool, the payment network and recipient, and tool return descriptions. It stops short of noting rate limits or caching, but is solid for a read-only info call.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and scannable with labeled sections, but it repeats itself: 'Free.' appears twice, the first sentence's summary is restated in 'When to use' and again in 'Returns', and the try_it_free routing appears in both the opening and the 'Use instead' line. Roughly a third of the text is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no parameters, the description carries the burden of describing the payload, and it does: prices per tool, payment network and recipient, and what each tool returns. An agent knows the shape of the result and when to prefer the sibling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Zero parameters, so per the rubric the baseline is 4. The description correctly implies the tool is self-scoped to 'this service' with no arguments, which aligns with the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific resource and its contents: 'Price, network, and what this service returns', plus 'prices, network and endpoints in machine-readable form'. It explicitly contrasts with the sibling try_it_free, so an agent can distinguish the two 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.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit 'When to use' and 'Use instead' lines, naming try_it_free and the condition that selects it (wanting real sample output rather than a description). 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.

ip_lookupIP address lookupA
Read-only
Inspect

Find where an IP address is: country, region, city, continent and approximate coordinates, for IPv4 or IPv6. City-level accuracy, not a street address. Data: IP Geolocation by DB-IP (db-ip.com), CC BY 4.0.

$0.002 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: You need roughly where an IP address is. Parameters: ip: one IPv4 or IPv6 address. Private and reserved addresses are refused free. Returns: country, region, city, continent and approximate latitude/longitude (city level, not a street address).

NameRequiredDescriptionDefault
ipYesIPv4 or IPv6 address.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint and openWorldHint; the description adds substantial behavior the agent could not otherwise know: $0.002 USDC per call via x402, failed calls free, quote-then-pay flow, a 3-call/day free tier requiring no wallet, and that private/reserved addresses are refused at no cost. It also discloses accuracy limits (city-level, not street address) and the data source/license.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose, data source, pricing, when-to-use, parameters and returns are all present and reasonably front-loaded. It loses a point for redundancy: 'City-level accuracy, not a street address' is repeated verbatim in the Returns line, and the attribution/license sentence is of marginal value to tool selection.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the return contract and does so (country, region, city, continent, approximate lat/long at city level). Combined with the payment/free-tier mechanics and the private-address refusal case, an agent has everything needed to invoke this correctly on the first try.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so both parameters are already documented, making 3 the baseline. The description adds meaning beyond the schema by noting that the `ip` value may be IPv4 or IPv6 and that private/reserved addresses are rejected free, and by explaining the omit-payment quote round-trip for the `payment` field.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Find where an IP address is', enumerating the returned fields (country, region, city, continent, coordinates) and covering IPv4/IPv6. The resource 'IP address' implicitly separates it from geocode_address, but no sibling is named or contrasted explicitly, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit 'When to use: You need roughly where an IP address is' statement plus concrete payment-flow guidance (call without `payment` to get a quote; first 3 calls/day are free; failed calls cost nothing). It does not, however, address when to prefer this over the adjacent geocode_address tool, so it stops at clear-context-without-exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

page_briefPage briefA
Read-only
Inspect

Read any web page in a real browser and get a summary of it in one call, with its title and final URL. Says when the page was longer than the part summarized.

$0.007 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You need the gist of one page, not its full text. Use instead: read_page for the full text; read_pages for several pages. Parameters: url: absolute https URL. max_words: summary length, 10-250, default 60. Returns: summary, title, final_url, and a note when the page was longer than the part summarized.

NameRequiredDescriptionDefault
urlYesAbsolute https URL of the page.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.
max_wordsNoSummary length in words (default 60).

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only cover readOnly/openWorld, but the description adds the critical unseen behavior: per-call cost ($0.007 USDC over x402), that failed calls are free, and the two-step payment flow (call without `payment` to get a quote, then sign). It also discloses truncation behavior ('says when the page was longer than the part summarized'). This is substantial context beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded purpose sentence, then labeled blocks (pricing, When to use, Use instead, Parameters, Returns). Dense but every line carries distinct information; no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, yet the description enumerates the return fields (summary, title, final_url, truncation note). Combined with the payment flow, parameter range, and sibling routing, 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.

Parameters3/5

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 url, payment, and max_words including the range and default. The description largely restates those facts, adding only mild emphasis on the quote flow. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Read any web page in a real browser and get a summary'), plus the concrete outputs (title, final URL). Explicitly names sibling tools it is not (read_page, read_pages), so an agent can distinguish it without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit condition ('You need the gist of one page, not its full text') and names the alternatives with their selecting conditions ('read_page for the full text; read_pages for several pages'). No inference required.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pdf_to_textPDF to textA
Read-only
Inspect

Read a PDF from a URL as text, page by page, with its title, author and page count. Works on text-layer PDFs up to 25 MB and 300 pages; scanned PDFs without a text layer are refused at no charge.

$0.005 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: The link is a PDF (a filing, paper, contract or manual) and you need its text. Use instead: read_page for an ordinary web page. Parameters: url: absolute http(s) URL of the PDF. max_pages: read at most this many pages, 1-300, default 50. Returns: title, author, page_count, pages_read and pages[] of text in order. Scanned PDFs with no text layer are refused at no charge.

NameRequiredDescriptionDefault
urlYesAbsolute http(s) URL of a PDF.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.
max_pagesNoRead at most this many pages (default 50).

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only cover readOnlyHint and openWorldHint; the description adds the costly details an agent cannot get elsewhere: the 25 MB / 300-page ceiling, refusal of text-layer-less PDFs at no charge, $0.005 USDC pricing under x402, failed calls being free, and the three-free-calls-per-day quota. The quote-then-sign payment handshake is also spelled out, so no annotation contradiction exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action, then cleanly sectioned into pricing, 'When to use', 'Use instead', 'Parameters', and 'Returns'. It runs long for a three-parameter tool and repeats the 'scanned PDFs without a text layer are refused at no charge' clause in both the intro and the Returns section, which is the only wasted text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description correctly enumerates the return shape (title, author, page_count, pages_read, ordered pages[] of text). Combined with the stated size/page limits, refusal behavior, and the x402 payment/quota mechanics, an agent has everything needed to call this correctly on the first attempt.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so a baseline of 3 is warranted, but the description adds useful framing: url must be an absolute http(s) PDF link, max_pages is bounded 1–300 with a default of 50, and the payment parameter's workflow (omit it for a quote, sign and call again) is explained in prose rather than left to the field blurb.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a concrete verb+resource ('Read a PDF from a URL as text, page by page') and enumerates what comes back (title, author, page count). It explicitly distinguishes itself from the closest sibling by naming read_page for ordinary web pages, so an agent can pick 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.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Contains an explicit 'When to use' condition (the link is a PDF — filing, paper, contract, manual) and an explicit 'Use instead' alternative (read_page for ordinary web pages). The limits section also tells the agent when the tool will refuse (scanned PDFs, >25 MB, >300 pages), which is actionable routing information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

perps_marketPerps market (Hyperliquid)A
Read-only
Inspect

Hyperliquid perpetuals: mark and oracle price, 24h change, current hourly funding rate (positive means longs pay shorts) and annualized, open interest in coins and USD, 24h volume and max leverage. Name up to 20 coins, or leave coins out to get the top markets sorted by volume, open interest, funding or 24h move. funding_hours adds hourly funding history for one coin.

$0.001 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You need perpetual futures data from Hyperliquid: funding, open interest, leverage, or the top markets. Use instead: crypto_market_pulse for a one-call market overview; token_price for an on-chain spot price. Parameters: coins: up to 20 Hyperliquid names (e.g. BTC, ETH, kPEPE); leave out for the top markets. sort and limit (default volume, 10) apply only when coins is left out. funding_hours (1-168) adds hourly funding history and needs exactly one coin. Returns: markets[] with mark, oracle and mid price, 24h change, hourly and annualized funding (positive: longs pay shorts), open interest in coins and USD, 24h volume and max leverage; not_found for unknown names.

NameRequiredDescriptionDefault
sortNoHow to rank the top markets when coins is left out (default volume).
coinsNoHyperliquid coin names, e.g. ["BTC", "ETH", "kPEPE"]. Leave out for the top markets.
limitNoHow many top markets (default 10).
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.
funding_hoursNoAdd hourly funding history for this many hours; needs exactly one coin.

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond readOnlyHint/openWorldHint, the description discloses metered pricing ($0.001 USDC per call via x402), that failed calls are free, the two-step quote/payment handshake, the sign convention for funding, and the not_found error shape. This is rich behavioral context the annotations do not provide and there is no contradiction with them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded one-line summary followed by clearly labeled sections (When to use, Use instead, Parameters, Returns), which is easy to scan. It runs long and restates several schema-level parameter details, so it isn't maximally tight, but no sentence is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description supplies a Returns breakdown covering every returned field, plus error handling and the payment lifecycle. For a 5-parameter, 0-required, open-world read tool, 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.

Parameters4/5

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 meaning beyond the schema: the funding sign convention, that sort/limit only apply when coins is omitted, and that funding_hours requires exactly one coin (and pulls history). Some parameter text is redundant with the schema, which keeps it from a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Hyperliquid perpetuals') and enumerates exactly what data is returned: mark/oracle price, funding, open interest, volume, leverage. It explicitly distinguishes itself from siblings crypto_market_pulse and token_price, so an agent can route without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Contains dedicated 'When to use' and 'Use instead' sections naming two concrete alternatives and the condition that selects each. It also clarifies the payment flow (call without payment to get a quote) and the coins-vs-top-markets branch, leaving nothing to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pretrade_checkPre-trade token checkA
Read-only
Inspect

Before trading a token on Base, Ethereum or Solana: its USD price and liquidity, plain warnings read from the chain, how big your planned trade is next to the pool (rough price impact), how much your wallet already holds, and recent web results about the token. Facts, not advice.

$0.01 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: Right before a trade, to see if the size is sane for the pool and what's being said about the token. Use instead: token_check when you aren't trading yet. Parameters: token is required. chain: base (default), ethereum or solana. amount_usd: your planned size, for price impact against pool depth. wallet: your address, to show what you already hold. Returns: price, liquidity, chain warnings, rough price impact for amount_usd, your current holding, and recent web results. Facts, not advice.

NameRequiredDescriptionDefault
chainNo"base" (default), "ethereum" or "solana".
tokenYesToken to check: ERC-20 contract or SPL mint ("SOL" works on Solana).
walletNoYour wallet address, to see how much of the token it holds.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.
amount_usdNoPlanned trade size in USD, to compare with pool depth.

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint and openWorldHint, but the description adds material context the annotations cannot: $0.01 USDC per call over x402, failed calls are free, and the two-step quote-then-pay flow via the `payment` parameter. It stops short of saying whether results are cached or how stale the on-chain reads can be, so not a full 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded and the labeled When/Use-instead/Parameters/Returns blocks scan well. However 'Facts, not advice' appears twice and the Returns summary largely repeats the opening sentence's output list, which is avoidable duplication.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only, five-parameter tool with no output schema, the description covers everything an agent needs: what comes back, the payment handshake, chain defaults, and the one required field. Nothing material is left to inference.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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 beyond by grouping the parameters into a usage narrative (amount_usd drives price impact against pool depth, wallet drives holdings display) and reminding that token is required. Much of that overlaps the schema text, which caps it at 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('pre-trade check of a token on Base, Ethereum or Solana') and enumerates the concrete outputs: price, liquidity, chain warnings, price impact, holdings, web results. It also names the sibling token_check as the non-trading alternative, so the agent can separate the two without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit 'When to use' line ties it to the moment right before a trade with a sizing question, and an explicit 'Use instead: token_check when you aren't trading yet' exclusion. Both the positive and negative conditions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

price_historyCrypto price historyA
Read-only
Inspect

Get past USD prices for a crypto asset (ETH, BTC, SOL, LINK and others with a Chainlink feed) over up to 365 days: up to 100 points read from Chainlink's on-chain price feed on Ethereum, each with its time and round, plus first, last, high, low and percent change.

$0.002 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You need past prices for a major asset: a trend, a high or low, or the change over a period. Use instead: token_price for the current price of any token, including ones without a Chainlink feed. Parameters: asset: a symbol with a Chainlink USD feed (ETH, BTC, SOL, LINK and others). days: 1-365, default 7. points: 2-100 evenly spaced prices, default 24. Returns: points[] each with time, price_usd and Chainlink round, plus first, last, high, low and percent change.

NameRequiredDescriptionDefault
daysNoHow far back, in days (default 7).
assetYesSymbol, e.g. "ETH", "BTC", "SOL" or "LINK".
pointsNoHow many prices to return (default 24).
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only cover readOnlyHint and openWorldHint, but the description adds the critical non-structured behavior: $0.002 USDC per call over x402, failed calls are free, and omitting `payment` returns a quote that must be signed and resubmitted. That payment/auth handshake is exactly the kind of trait annotations cannot express.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and clearly partitioned into purpose, pricing, when-to-use, alternatives, parameters and returns. Slight redundancy: return contents (first/last/high/low/percent change) appear in both the opening paragraph and the 'Returns' line, costing a little space without new information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description compensates by describing the return payload precisely (points[] with time, price_usd, Chainlink round, plus first, last, high, low and percent change) and covering the paid-call flow end to end. An agent has everything needed to call and interpret this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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 real meaning beyond the schema: the asset must have a Chainlink USD feed (narrowing valid symbols), points are 'evenly spaced' prices, and the payment quote-then-sign flow is restated in prose. It stops short of explaining edge cases such as what happens when fewer than `points` rounds exist in the window.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource (past USD prices for a crypto asset) with concrete scope: up to 365 days, up to 100 points, sourced from Chainlink's on-chain Ethereum feed. It explicitly distinguishes itself from the sibling token_price, so an agent can route correctly without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Includes explicit 'When to use' (trend, high/low, change over a period for a major asset) and 'Use instead' naming token_price for the current price of any token, including those without a Chainlink feed. The condition that selects the alternative is spelled out, not inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

read_pageRead a web page as clean textA
Read-only
Inspect

Read any public web page and get its visible text back: the words a person would see, with navigation and boilerplate stripped, plus the title and final URL after redirects. JavaScript pages are rendered in a real browser first. Up to 50,000 characters.

Use it to read an article, a doc, a policy or any page you were given a link to. Chain it with a summarizer when the page is long.

$0.002 USDC per page over x402. A page that fails to load, returns an error or has no text costs nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: You have one page URL and need its words: an article, doc, policy or listing. Use instead: read_pages for 2-5 URLs (one payment); page_brief for a summary instead of the full text; pdf_to_text for a PDF; screenshot_page for how it looks; attest_page if you may need to prove what it said. Parameters: url must be absolute http(s) and public (no logins, no private addresses). Returns: title, final_url after redirects, text (visible text, up to 50,000 characters), text_length and truncated.

NameRequiredDescriptionDefault
urlYesAbsolute http(s) URL of a public page.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint and openWorldHint; the description goes well beyond by disclosing JavaScript rendering in a real browser, a 50,000 character cap, per-page pricing over x402, that failed/empty pages cost nothing, and that omitting payment yields a quote. These are exactly the operational facts an agent needs and none are in the 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core capability and organized under clear labels (When to use, Use instead, Parameters, Returns), so it scans well. It is dense with pricing and constraint detail, but nearly every sentence carries decision-relevant information rather than filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description compensates by spelling out the return fields (title, final_url, text, text_length, truncated) and the truncation limit. Pricing, free-tier, failure-cost and JS-rendering behavior are all covered, leaving no material gap for calling the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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 real constraint meaning: url must be absolute http(s), public, with no logins and no private addresses, and it explains the payment/quote round-trip beyond the schema's one-line note. It stops short of 5 only because the parameter notes largely restate and lightly extend the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Read any public web page') and immediately defines the output ('visible text... navigation and boilerplate stripped, plus the title and final URL after redirects'). It differentiates itself from the many siblings by naming the exact output form and the JS-rendering behavior, so an agent can distinguish it from read_pages, page_brief, pdf_to_text and screenshot_page 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.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Has explicit 'When to use' and 'Use instead' sections naming the alternative tool and the condition that selects it (read_pages for 2-5 URLs, page_brief for summaries, pdf_to_text for PDFs, screenshot_page for appearance, attest_page for proof). 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.

read_pagesRead several pagesA
Read-only
Inspect

Read several web pages at once: give up to 5 URLs and get the full visible text of each (up to 20,000 characters a page), rendered in a real browser so JavaScript pages work, with title and final URL. Pages that can't be read are listed with the reason; the rest still come back. Use it after a search to read the results you picked.

$0.008 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You picked 2-5 pages to read, for example from web_search results. Use instead: read_page for a single URL; search_and_read when you have a question but no URLs yet. Parameters: urls: 1-5 absolute http(s) URLs. Each is read in parallel; a page that fails doesn't stop the others. Returns: pages[] in the order given, each with ok, title, final_url, text (up to 20,000 characters) or the reason it failed; pages_read and pages_failed. Charged only if at least one page is read.

NameRequiredDescriptionDefault
urlsYes1 to 5 absolute http(s) page URLs.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With readOnlyHint/openWorldHint already declaring the safety profile, the description still adds real behavioral context: real-browser JS rendering, 20,000-character per-page truncation, parallel reads where one failure doesn't stop others, per-call $0.008 x402 pricing, failed-calls-are-free, and the quote-then-pay flow via the payment param. This is far beyond what annotations convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action and scoped well, with labeled When/Instead/Params/Returns sections. Slight redundancy: the 20,000-character truncation and per-page failure behavior are stated twice (opening paragraph and Returns), which costs a little tightness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description carries the returns burden and does so fully: pages[] in input order with ok, title, final_url, text (or failure reason), plus pages_read/pages_failed and the billing condition. Pricing and the quote flow are also covered, leaving no gap for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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 meaning: urls must be 1-5 absolute http(s) URLs read in parallel, and it explains the payment parameter's quoting workflow beyond the schema's terse 'omit to receive a quote'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb and resource ('Read several web pages at once'), quantifies the batch (up to 5 URLs), and explicitly contrasts itself with read_page and search_and_read so an agent can distinguish it from siblings without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Has an explicit 'When to use' line ('You picked 2-5 pages to read, for example from web_search results') plus a 'Use instead' line naming read_page for a single URL and search_and_read for question-only flows. When, when-not, and alternatives are all present.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

screenshot_pageScreenshot a web pageA
Read-only
Inspect

Capture how any public web page looks: a 1280x800 JPEG from a real browser, returned as base64 with its SHA-256, the title and the final URL.

Use it to see a page's layout, check that something renders, or hand the image to a vision model. The image is roughly 50-150 KB of base64 in the response.

$0.003 USDC per capture over x402. A page that fails to load or returns an error costs nothing. For signed, timestamped evidence of a page use attest_page instead. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: You need to see a page: its layout, whether something renders, or an image for a vision model. Use instead: read_page when you only need the words (smaller and cheaper); attest_page for signed evidence of a page. Parameters: url must be absolute http(s) and public. Returns: a 1280x800 JPEG as base64, its sha256, title and final_url.

NameRequiredDescriptionDefault
urlYesAbsolute http(s) URL of a public page.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only cover readOnlyHint and openWorldHint, but the description adds rich behavioral detail beyond them: cost ($0.003 USDC per capture), no charge for failed loads, first 3 calls/day free, image size (50-150 KB base64), and the quote-then-sign payment sequence.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core capability and organized into labeled sections, making it easy to scan. It is somewhat repetitive ('see a page's layout' appears in the opening and again under 'When to use'), costing a bit of tightness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description fully covers return values (JPEG base64, sha256, title, final_url), pricing behavior, and the payment workflow. 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.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so both parameters are already documented in the schema. The description restates url constraints (absolute http(s), public) and the payment quote flow, which the schema already conveys, adding little beyond the structured fields. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource ('Capture how any public web page looks') and specifies the concrete output: a 1280x800 JPEG from a real browser with SHA-256, title, and final URL. It clearly distinguishes itself from siblings by routing to read_page and attest_page.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit 'When to use' and 'Use instead' sections name the exact alternatives (read_page for text, attest_page for signed evidence) and the conditions that select each. The x402 payment flow ('Call without payment to get a quote') and the free-call tier add actionable context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_and_readSearch and readA
Read-only
Inspect

Search the web and read the top pages in one step: returns the top web results plus the full visible text of the top 1-3 pages, each rendered in a real browser. Results that can't be read are skipped for the next one down. Optional filters: freshness (past hour to past year), include_domains / exclude_domains (up to 5 sites each), type "news". The fastest way to answer a question from fresh sources.

$0.005 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You have a question and want it answered from current sources in one call: it searches, then reads the top pages for you. Use instead: web_search when the snippets are enough or you want to choose which pages to read (then read_pages). Parameters: query is required. num: how many pages to read, 1-3, default 3. Same freshness, include_domains, exclude_domains, type and country filters as web_search. Returns: the ranked results, plus the full text (up to 12,000 characters each) of the top 1-3 pages that could be read.

NameRequiredDescriptionDefault
numNoHow many pages to read (1-3, default 3).
typeNo"news" searches news articles instead of the whole web.
queryYesWhat to search for.
countryNoTwo-letter country code for local results, e.g. "us".
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.
freshnessNoOnly results from the past hour, day, week, month or year.
exclude_domainsNoNever results from these sites.
include_domainsNoOnly results from these sites, e.g. ["reuters.com"].

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only cover readOnlyHint and openWorldHint, but the description adds substantial behavioral context: x402 pricing ($0.005 USDC/call), that failed calls are free, the payment-quote handshake, the 12,000-character read cap, and the skip-to-next-page fallback. This is exactly the kind of cost/auth/failure behavior annotations cannot express.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core capability and organized into When-to-use / Use-instead / Parameters / Returns sections. Slightly redundant – the return payload (results plus full page text) is described both in the opening sentence and again in the 'Returns' line.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description still explains the return shape (ranked results plus full text of top pages, char cap) and the payment flow. For an 8-parameter open-world tool, 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.

Parameters3/5

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 every parameter. The description restates the filter families and defaults (num 1-3 default 3) without adding syntax or semantics beyond the schema; baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific compound verb and resource: search the web AND read the top 1-3 pages, rendered in a real browser. It explicitly differentiates from siblings web_search and read_pages, so an agent can route correctly without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Contains an explicit 'When to use' clause and a 'Use instead' clause naming web_search and read_pages with the selecting condition ('snippets are enough', 'want to choose which 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.

sec_companySEC company profile and filingsA
Read-only
Inspect

Look up a US public company in SEC EDGAR by ticker or CIK: legal name, exchange, industry, state, fiscal year end, and its latest filings (10-K, 10-Q, 8-K, insider Form 4 and more) with direct links. Filter by form type, e.g. only 10-Ks.

$0.002 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: You need who a US public company is, or links to its recent filings. Use instead: sec_financials for the numbers; company_snapshot for profile plus numbers; company_due_diligence for ratios and 8-K summaries. Parameters: ticker or cik (one is required). form: only this form type, e.g. 10-K, 10-Q, 8-K or 4. limit: 1-40 filings, default 10. Returns: name, CIK, exchange, industry, state, fiscal year end, and filings[] with form, date and link.

NameRequiredDescriptionDefault
cikNoSEC Central Index Key, e.g. 320193. Give this or ticker.
formNoOnly this form type, e.g. "10-K".
limitNoHow many filings, 1-40 (default 10).
tickerNoUS stock ticker, e.g. "AAPL". Give this or cik.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint/openWorldHint annotations, the description discloses the x402 pricing model ($0.002 USDC per call), that failed calls are free, the quote-then-pay flow via the payment parameter, and a free daily-tier limit. These are operational facts an agent cannot get from annotations or schema alone.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core purpose, then clearly sectioned into pricing, when-to-use, alternatives, parameters, and returns. Slightly repetitive restating parameters already in the schema, but no filler sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description fully covers the return shape (fields and filings[] with form/date/link), the payment prerequisite, and the ticker-or-CIK input requirement. An agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 five parameters including the payment quote flow. The description adds only example form values (10-K, 10-Q, 8-K, 4) and restates the limit range, which is marginal added value; baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource: 'Look up a US public company in SEC EDGAR by ticker or CIK' with an enumeration of exactly what is returned (name, exchange, industry, state, FY end, filings with links). It explicitly differentiates itself from the three sibling SEC/company tools, so an agent can pick it without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Contains explicit 'When to use' and 'Use instead' lines naming the exact alternatives (sec_financials for numbers, company_snapshot for profile+numbers, company_due_diligence for ratios and 8-K summaries). Routing is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sec_financialsCompany financials from SEC filingsA
Read-only
Inspect

Get a US public company's financials as filed with the SEC: revenue, operating income, net income, diluted EPS, total assets, liabilities, equity, cash, operating cash flow and shares outstanding — last 4 fiscal years plus the latest quarter, each tied to its filing.

$0.004 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You need a US public company's reported numbers. Use instead: company_snapshot to get the profile and filings in the same call; company_due_diligence for computed ratios. Parameters: ticker or cik (one is required). Returns: revenue, operating and net income, diluted EPS, assets, liabilities, equity, cash, operating cash flow and shares, for the last 4 fiscal years and the latest quarter, each tied to its filing.

NameRequiredDescriptionDefault
cikNoSEC Central Index Key. Give this or ticker.
tickerNoUS stock ticker, e.g. "NVDA". Give this or cik.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, but the description adds genuinely new behavioral context: a $0.004 USDC x402 price, that failed calls are free, and a two-step quote-then-sign payment flow via the optional `payment` parameter. It does not cover latency or data freshness, so not a full 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and well-sectioned with When/Use/Parameters/Returns headers, but the Returns section repeats the opening field list almost verbatim (revenue, operating and net income, diluted EPS, assets, liabilities, equity, cash, operating cash flow, shares), which is wasted space.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the return-shape burden and does so, listing the fields and their coverage window (4 fiscal years plus latest quarter, each tied to its filing). The payment mechanic is also explained end to end.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema documents cik, ticker and payment, making 3 the baseline. The description earns above baseline by stating 'ticker or cik (one is required)' — a constraint the schema does not enforce, since the required array is empty — and by hinting at the quote flow for `payment`.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence names a specific verb (Get) and resource (US public company financials as filed with the SEC) and enumerates the exact line items returned, so an agent knows precisely what it gets. It also distinguishes itself from siblings by naming company_snapshot and company_due_diligence as different scopes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit 'When to use' plus a 'Use instead' clause that names two alternative tools and the condition under which each is preferable. Nothing about routing 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.

token_checkToken checkA
Read-only
Inspect

Check a token before buying, sending or accepting it, on Base, Ethereum or Solana: what it is, its USD price and liquidity, and plain warnings read from the chain (no pool, thin liquidity; on Base and Ethereum the contract's owner and whether it is upgradeable or can mint, pause, blacklist or set fees; on Solana an active mint or freeze authority).

$0.004 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: Before buying, accepting or sending an unfamiliar token. Use instead: pretrade_check when you're about to trade a specific amount (adds price impact, your holding and news); token_info for the basics only. Parameters: token: ERC-20 contract or SPL mint. chain: base (default), ethereum or solana. Returns: what the token is, price and liquidity, and plain-language warnings (owner, upgradeable, can mint, pause, blacklist or set fees; Solana mint or freeze authority).

NameRequiredDescriptionDefault
chainNo"base" (default), "ethereum" or "solana".
tokenYesERC-20 contract or SPL mint to check.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint and openWorldHint; the description adds substantial behavior beyond that — the $0.004 USDC x402 cost model, that failed calls are free, the quote-then-sign payment flow via the `payment` param, and a free tier of 3 calls/day. This is exactly the kind of cost/auth context annotations cannot carry.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core purpose and payment terms, and organized into clear labeled sections. Mild redundancy: the warning list (owner, upgradeable, mint/pause/blacklist/fees, Solana mint/freeze authority) is stated twice, once inline and again under 'Returns'.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description fully covers the return contents in plain language, plus payment flow and free-tier limits. An agent has everything needed to quote, pay, call and interpret the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 params including the chain enum and default. The description restates token/chain meaning and defaults, adding little beyond the structured fields, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Check a token') plus scope (which chains, what is returned: identity, USD price, liquidity, chain-read warnings). It distinguishes itself from siblings by explicitly contrasting with token_info and pretrade_check.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit 'When to use' trigger (before buying, accepting or sending an unfamiliar token) and a 'Use instead' section naming pretrade_check for sized trades and token_info for basics only, with the differentiator for each. No inference required.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

token_infoToken infoA
Read-only
Inspect

Look up a token on Base, Ethereum (ERC-20 contract) or Solana (SPL mint): name, symbol, decimals and total supply, plus mint and freeze authority on Solana, read live from the chain. Use it to confirm what an address actually is before acting on it.

$0.002 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: You have a token address and need to know what it is before acting on it. Use instead: token_check for safety warnings and liquidity; token_price for its price. Parameters: token: ERC-20 contract or SPL mint. chain: base (default), ethereum or solana. Returns: name, symbol, decimals, total supply; on Solana, mint and freeze authority.

NameRequiredDescriptionDefault
chainNo"base" (default), "ethereum" or "solana".
tokenYesERC-20 contract, or SPL mint on Solana.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint and openWorldHint. The description adds information they cannot carry: the x402 payment model ($0.002 USDC per call, failed calls cost nothing, first 3 calls/day free, call without `payment` to get a quote), data freshness ('read live from the chain'), and the limits of what is returned versus crypto_market_pulse.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core verb/resource, then pricing, routing, params and returns in a scannable order. It loses a point for mild duplication: 'Use it to confirm what an address actually is before acting on it' and 'When to use: ... before acting on it' say the same thing twice.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, but the description enumerates the return fields itself, and it covers the payment/quote flow, chain options and sibling routing. Nothing needed to invoke this tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 restates the token and chain parameters (including the 'base' default) but says nothing about the `payment` parameter beyond the separate pricing paragraph, adding marginal meaning over the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Look up a token on Base, Ethereum (ERC-20 contract) or Solana (SPL mint)') and enumerates the exact fields returned (name, symbol, decimals, total supply, Solana authorities). It also names the sibling tools it is not (token_check, token_price), so an agent can route without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Contains an explicit 'When to use' line ('You have a token address and need to know what it is before acting on it') and an explicit 'Use instead' line directing safety/liquidity queries to token_check and price queries to token_price. Both the trigger and the alternatives are spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

token_priceToken priceA
Read-only
Inspect

Get a token's current USD price on Base, Ethereum or Solana, read from its deepest on-chain pool (Uniswap v3 against USDC or WETH; on Solana, Orca Whirlpools against USDC or SOL) rather than a price API. Returns the pool used, how much liquidity backs the price, and a flag when the pool is too thin to trust.

$0.001 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: You need a token's current USD price straight from the chain. Use instead: price_history for past prices; token_check for price plus safety warnings; crypto_market_pulse for BTC, ETH and SOL at once. Parameters: token: ERC-20 contract or SPL mint ("SOL" works on Solana). chain: base (default), ethereum or solana. Returns: price_usd, the pool used, its liquidity, and a thin_liquidity flag when the price shouldn't be trusted.

NameRequiredDescriptionDefault
chainNo"base" (default), "ethereum" or "solana".
tokenYesERC-20 contract or SPL mint to price ("SOL" works on Solana).
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations cover only readOnlyHint and openWorldHint, so the description carries real weight and does: it discloses the data source and pool type, the thin-liquidity trust caveat, the x402 pricing ($0.001 USDC per call, free failures, 3 free calls/day), and the quote-then-pay flow. This is exactly the behavioral context an agent needs before spending money.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core answer and cleanly sectioned under 'When to use', 'Use instead', 'Parameters', and 'Returns'. It is on the long side for a three-parameter tool, and the Returns paragraph partly repeats the liquidity/thin-pool detail already stated in the opening sentence, costing a point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description compensates by enumerating the return fields (price_usd, pool, liquidity, thin_liquidity flag), the chains, the pricing model, and the quote/pay workflow. An agent has everything needed to call it correctly and interpret the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so 3 is the baseline and the description's parameter section largely restates the schema ('SOL' on Solana, chain default). It earns one step above baseline by explaining the payment round-trip — omit `payment` to receive a quote, then sign and call again — which the schema only implies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Get a token's current USD price'), names the supported chains, and discloses the non-obvious methodology (deepest on-chain pool via Uniswap v3 / Orca Whirlpools rather than a price API). It is clearly distinguishable from price_history, token_check, and crypto_market_pulse.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Has explicit 'When to use' and 'Use instead' sections that route the agent to three named alternatives with the conditions that select each (past prices, price plus safety warnings, BTC/ETH/SOL batch). 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.

transaction_lookupTransaction lookupA
Read-only
Inspect

Look up a transaction on Base, Ethereum or Solana: did it succeed, when, who sent it, the fee, and every token movement with symbols and amounts (ERC-20 transfers; on Solana, SOL and token balance changes per owner). Use it to confirm a payment actually landed.

$0.002 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: You have a transaction hash and need to know if it went through and what moved. Parameters: hash: 0x hash on Base or Ethereum, base58 signature on Solana. chain: base (default), ethereum or solana; it must match the hash. Returns: status, time, sender, fee, and every token transfer with symbol and amount (on Solana, balance changes per owner).

NameRequiredDescriptionDefault
hashYes0x transaction hash, or base58 signature on Solana.
chainNo"base" (default), "ethereum" or "solana".
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already mark it read-only and open-world, and the description adds important behavioral details: per-call pricing, free failed calls, quote behavior, and a free daily allowance. It also discloses what is returned even without an output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with purpose and return contents, followed by concise payment and usage notes. There is some repetition between the opening sentence and the final Returns line, but the structure remains efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a lookup tool with no output schema, the description is complete enough: it covers chains, hash formats, return fields, pricing, and payment flow. An agent has what it needs to decide whether and how to call it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents the parameters well. The description still adds useful semantics by clarifying hash formats, chain defaults, and the critical constraint that the chain must match the hash.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: look up a transaction on Base, Ethereum, or Solana. It also spells out the core outcome and return contents: success status, time, sender, fee, and token movements. This is clearly distinguishable from sibling tools such as wallet_balance or token_check.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says when to use the tool: when you have a transaction hash and need to know if it went through and what moved. It also explains the payment/quote flow, but does not name alternatives or explicit when-not conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

try_it_freeFree sample — see real output before payingA
Read-only
Inspect

Free. Run a real extraction against one fixed sample product page and return the result.

USE THIS to decide whether the paid tools are worth paying for. It returns the identical shape get_product_details returns, produced by the identical code — not a hand-written example — so what you see is what you get. It takes no arguments and costs nothing.

You cannot choose the page: pointing a free endpoint at arbitrary URLs would just be the paid tool with no toll. Use get_product_details for the URL you actually care about.

When to use: Before paying, to see exactly what get_product_details returns. Use instead: get_product_details for a URL you choose. Returns: a real extraction of one fixed sample page.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
freeYes
noteYes
pageYes
staleYesTrue if the sample could not be refreshed and is an older render.
statusYes
previewYes
productYes
sample_urlYes
cache_age_secondsYes

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, but the description adds substantive context beyond them: zero cost, zero arguments, the fixed sample limitation, and the guarantee that the output shape and code path are identical to get_product_details. That is meaningful behavioral disclosure the structured fields do not carry.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and largely disciplined, with the core value proposition in the first two sentences. There is mild redundancy — the 'When to use'/'Use instead'/'Returns' block restates points already made in the opening paragraphs — but it stays scannable and short.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-argument preview tool, the description covers what it does, why it exists, what it costs, what it returns (mirroring get_product_details, with an output schema backing that up), and why the page cannot be chosen. Nothing an agent needs in order to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Zero parameters, so the baseline is 4; the description affirmatively confirms 'It takes no arguments,' which removes any ambiguity. There is nothing more to document, but it doesn't need to go beyond that confirmation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('run a real extraction against one fixed sample product page') plus the key constraint (no arguments, fixed page). It explicitly contrasts itself with get_product_details, so an agent can distinguish the free preview from the paid sibling without reading either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit when-to-use ('Before paying, to see exactly what get_product_details returns'), an explicit when-not-use with reasoning ('pointing a free endpoint at arbitrary URLs would just be the paid tool with no toll'), and names the alternative to use instead. All guidance an agent needs to route correctly is present.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_attestationCheck an attestation is genuineA
Read-only
Inspect

Free, forever, no account. Hand back an attestation -- yours or one someone else gave you -- and find out whether the signature holds and whether we issued it. Works on attestations this service did not produce: the answer for those is a clear no, which is the point. Holds no database, so it keeps working whoever is running it.

When to use: Someone handed you an attestation, or you want to check one of yours. Parameters: attestation: the full attest_page response or just its attestation object, as JSON text. Returns: whether the signature is valid and whether this service issued it, with the reasons.

NameRequiredDescriptionDefault
attestationYesThe attestation as JSON text: either the whole response from attest_page or just its `attestation` object.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnly/openWorld annotations, it discloses auth context (free, no account), statelessness (holds no database), and the key behavioral edge case that attestations from other issuers return a clear 'no'. This is exactly the extra context annotations cannot carry.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and organized with When to use / Parameters / Returns sections. Slightly padded by promotional phrasing ('Free, forever, no account', 'which is the point'), but every structural element earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description compensates by summarizing the return values (signature validity, issuer match, reasons). For a single-parameter verification tool, nothing needed 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.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the description's parameter note restates the schema text almost verbatim (full attest_page response or just its attestation object). Baseline 3 is appropriate since the schema does the work with no added meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: hand in an attestation and learn whether the signature is valid and whether this service issued it. It also implicitly separates itself from the sibling attest_page by naming it as the producer of the artifact being checked.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit 'When to use' line gives two concrete triggers: someone handed you an attestation, or you want to check one of your own. No when-not guidance or named alternative tool, but the use case is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wallet_balanceWallet balanceA
Read-only
Inspect

Check a wallet's balances on Base, Ethereum or Solana: native ETH or SOL, USDC (plus USDT on Ethereum and Solana), and any token contracts or SPL mints you list (up to 20), with symbols and decimals applied. Read live from the chain.

$0.002 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: You need what a wallet holds, in token amounts. Use instead: wallet_portfolio for USD values and a total; check_my_balance (free) for your own USDC on Base. Parameters: address is required. chain: base (default), ethereum or solana; the address format must match. tokens: up to 20 extra ERC-20 contracts or SPL mints to include. Returns: native coin, USDC (USDT on Ethereum and Solana) and the tokens you listed, each with symbol, decimals and amount.

NameRequiredDescriptionDefault
chainNo"base" (default), "ethereum" or "solana".
tokensNoExtra ERC-20 contracts (SPL mints on Solana) to include.
addressYes0x address on Base/Ethereum, or base58 address on Solana.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the readOnlyHint/openWorldHint annotations by disclosing pricing ($0.002 USDC per call over x402), that failed calls are free, the 3-free-calls-per-day policy, and the quote-then-pay flow via the payment parameter. This is exactly the extra context annotations cannot carry.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with what the tool does, then cleanly sectioned into when-to-use, alternatives, parameters, and returns. Some content (chains, tokens, returns) is repeated across the body and the Parameters/Returns sections, but every section is useful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the return shape itself (native coin, USDC/USDT, listed tokens with symbol, decimals, amount), and it covers payment flow, pricing, and alternatives. An agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents address formats, chain enum, and the 20-token cap. The description largely restates these ('address is required', 'chain: base default', 'tokens: up to 20'), adding only the cross-parameter constraint that the address format must match the chain, which the schema already implies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (checks a wallet's token balances) and scopes it precisely across chains, naming exactly which balances are returned. It distinguishes itself from wallet_portfolio and check_my_balance by naming both.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Has explicit 'When to use' and 'Use instead' sections that route the agent to wallet_portfolio for USD totals and check_my_balance for the caller's own USDC. Alternative selection is fully specified, not inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wallet_portfolioWallet portfolio valueA
Read-only
Inspect

Value a wallet in USD on Base, Ethereum or Solana: each holding (native coin, USDC/USDT and any tokens you list) priced from on-chain pools, the total, and warnings for thin pools or positions bigger than their pool.

$0.005 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You need a wallet's value in USD: each holding priced and the total. Use instead: wallet_balance when amounts are enough (cheaper). Parameters: address is required. chain: base (default), ethereum or solana. tokens: up to 20 extra contracts or mints to include. Returns: holdings[] with amount, USD price, USD value and pool used, the total in USD, and warnings for thin pools or positions bigger than their pool.

NameRequiredDescriptionDefault
chainNo"base" (default), "ethereum" or "solana".
tokensNoExtra token contracts or SPL mints to include.
addressYes0x address on Base/Ethereum, or base58 address on Solana.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, but the description adds genuine operational context the annotations don't carry: x402 pricing ($0.005 USDC per call), that failed calls are free, and the quote-then-sign flow. It also discloses the thin-pool and oversized-position warning behavior. It stops short of describing latency, caching, or pool-source reliability.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose, then pricing, then usage, then parameters and returns in clearly labeled blocks. Slight redundancy: the holdings/total/warnings output is stated both in the opening sentence and again in the Returns line, which costs a bit of space.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description carries the return contract and does so: holdings[] shape, the USD total, and the warning conditions. Combined with the pricing and payment workflow, 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.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so every parameter is already documented in the schema, including the base default, the 20-item token cap, and the address formats. The description restates these (address required, chain default, tokens up to 20) without adding format or syntax meaning beyond what the schema provides, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Value a wallet in USD'), names the supported chains, and enumerates what is produced (per-holding prices, total, warnings). It explicitly differentiates itself from the sibling wallet_balance, so an agent can route without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Contains an explicit 'When to use' line and a 'Use instead' line naming wallet_balance with the selecting condition ('when amounts are enough (cheaper)'). No inference is required to choose between the two.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

weather_forecastWeather forecast and alertsA
Read-only
Inspect

Get the weather forecast for any latitude/longitude in the world, or a US street address: the next 7 days in day and night periods (temperature, rain, wind, summary). US locations use the National Weather Service and include any active watches, warnings or advisories; elsewhere the forecast is from MET Norway (in °C and km/h).

$0.002 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote. The first 3 calls a day through this tool server are free (no wallet needed).

When to use: You need the forecast for a place. Use instead: airport_delays for flight delays; geocode_address when you need coordinates for something else. Parameters: Give lat and lon (anywhere in the world) or address (US street addresses only). periods: 1-14 twelve-hour periods, default 14 (7 days). Returns: forecast[] with name, start and end, temperature, rain, wind and a summary; in the US, active NWS alerts too.

NameRequiredDescriptionDefault
latNoLatitude, e.g. 38.90 (anywhere in the world). Give lat and lon, or a US address.
lonNoLongitude, e.g. -77.04
addressNoUS street address instead of lat/lon, e.g. "1600 Pennsylvania Ave NW, Washington, DC".
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.
periodsNoHow many 12-hour periods, 1-14 (default 14, i.e. 7 days).

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark it read-only and open-world, but the description adds substantial behavioral context: US vs MET Norway data sources, units, NWS alerts, per-call pricing, failed-call cost, quote flow via omitted payment, and the free daily allowance. No annotation contradiction 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose, then organized into usage, alternatives, parameters, and returns. The pricing and return details earn their place because payment and output behavior are not covered by an output schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given a read-only, open-world forecast tool with no output schema, the description covers data sources, units, alerts, pricing/payment behavior, parameter choices, and return structure. An agent has enough information to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameter basics are already documented. The description clarifies the lat/lon-or-address choice and summarizes periods as 1-14 twelve-hour periods with default 14, but mostly mirrors the schema rather than adding deep semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: get the weather forecast for lat/lon or a US address, including 7-day day/night periods and alerts. It explicitly distinguishes siblings by naming airport_delays and geocode_address as alternatives for different needs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives a clear 'When to use' condition and explicitly names when to use other tools instead: airport_delays for flight delays and geocode_address when coordinates are needed for something else. This leaves little ambiguity about tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

x402_market_datasetx402 market datasetA
Read-only
Inspect

Get the whole x402 market as one dataset: every active seller with rank, 30-day calls, estimated revenue, paying wallets, categories and unusual-number labels, plus category totals. Rebuilt weekly from Coinbase's Bazaar catalog.

$0.10 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You are analysing the whole x402 market and want every seller in one file. Use instead: x402_seller_lookup or best_x402_tools for a single seller or task (cheaper). Returns: every active seller with rank, 30-day calls, revenue estimate, paying wallets, categories and labels, plus category totals. Rebuilt weekly. Takes no parameters.

NameRequiredDescriptionDefault
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the readOnlyHint/openWorldHint annotations by disclosing the payment model ($0.10 USDC per call, failed calls free, omit `payment` for a quote), the data provenance (Coinbase's Bazaar catalog), and the refresh cadence (rebuilt weekly). These are operational facts an agent cannot infer from annotations or schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and cleanly labeled with 'When to use / Use instead / Returns', which makes it scannable. However, the seller-field list and the 'rebuilt weekly' fact are each stated twice almost verbatim (opening sentence vs. Returns line), which is avoidable repetition in a short description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the return-shape burden and does so fully, listing every field plus category totals. One optional parameter, zero required, pricing and cadence disclosed — nothing an agent needs to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema already documents the quote-vs-pay flow for `payment`, so the baseline is 3. The description reinforces the flow with the cost consequence ('Failed calls cost nothing'), which adds meaning about the economics of the parameter rather than just restating its syntax.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Get the whole x402 market as one dataset') and enumerates exactly what the dataset contains (rank, 30-day calls, revenue, paying wallets, categories, labels, category totals). It explicitly distinguishes itself from x402_seller_lookup and best_x402_tools, so an agent can route 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.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Has an explicit 'When to use' condition ('analysing the whole x402 market and want every seller in one file') and a 'Use instead' clause naming the two cheaper alternatives for single-seller or task-scoped queries. This is the full when/when-not/alternative triad.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

x402_seller_lookupx402 seller lookupA
Read-only
Inspect

Look up any x402 seller by hostname: its rank among all sellers, 30-day calls, estimated revenue and paying wallets, each endpoint's numbers and price, its categories and competitors, and labels where its numbers look unusual. Weekly, from Coinbase's Bazaar catalog.

$0.02 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You want one x402 seller's numbers: rank, calls, revenue, buyers, endpoints and competitors. Parameters: host: the seller's hostname, e.g. stableenrich.dev. Returns: rank, 30-day calls, estimated revenue, paying wallets, endpoints with prices, categories, competitors and unusual-number labels.

NameRequiredDescriptionDefault
hostYesSeller hostname, e.g. "stableenrich.dev".
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations cover read-only/open-world, and the description adds substantial context beyond them: the $0.02 USDC per-call cost, that failed calls are free, the two-step quote-then-pay flow, and the weekly freshness/source (Coinbase Bazaar). This is real operational disclosure with no contradiction of readOnlyHint.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well front-loaded: what it is, then pricing, then when-to-use, parameters and returns. Slightly redundant since the Returns line restates the opening enumeration, but the labeled sections make the redundancy cheap.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description must carry return-shape burden and does: it lists the returned fields, plus pricing, failure behavior, quote flow, and data cadence. An agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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 the example hostname and frames the payment parameter as a quote-first workflow with associated cost, giving meaning beyond the schema's bare 'Omit it to receive a quote'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (look up) and resource (x402 seller by hostname) and enumerates exactly what comes back: rank, calls, revenue, wallets, endpoints, categories, competitors. This clearly distinguishes it from the broader x402_market_dataset sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'When to use' line states the condition explicitly (you want ONE seller's numbers), which implicitly excludes the dataset-wide sibling. It stops short of naming that alternative or stating when-not-to-use, so it is clear context rather than full routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

x_pulseX pulse (crypto mood on X)A
Read-only
Inspect

The mood on X (Twitter) about a coin or crypto topic in the last 24 hours: bullish, bearish, mixed or quiet, a score from -1 (very bearish) to 1 (very bullish), how many posts were read, up to three short themes, and links to representative posts. Giveaways, bots and paid promotion are ignored. Posts are unverified and can be coordinated, so treat it as information, not a trading signal.

$0.15 USDC per call over x402. Failed calls cost nothing. Call without payment to get a quote.

When to use: You want to know what crypto traders on X (Twitter) are saying about a coin right now: the mood and why. Use instead: crypto_news for published articles; crypto_market_pulse for numbers (Fear & Greed, funding). Parameters: coin: a symbol or name (SOL, BONK), or query: a crypto topic. Up to 60 characters. Returns: mood (bullish, bearish, mixed or quiet), score from -1 to 1, posts_read, up to three themes, posts[] links to X posts, and a note that posts are unverified.

NameRequiredDescriptionDefault
coinNoCoin symbol or name, e.g. "SOL" or "BONK". Give this or query.
queryNoA crypto topic, e.g. "bitcoin ETF". Give this or coin.
paymentNoBase64 x402 payment payload. Omit it to receive a quote; sign that and call again.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds substantial context beyond the read-only and open-world annotations: the 24-hour window, exclusion of giveaways/bots/paid promotion, unverified and potentially coordinated posts, and the warning not to treat it as a trading signal. It also discloses pricing and payment flow.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the core output and caveats, then clearly separates when to use, alternatives, parameters, and returns. Every section is purposeful, and the structure makes scanning easy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description explains the return shape in detail and covers cost, quote behavior, limitations, alternatives, and parameters. An agent has everything needed to decide and invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is already 100%, including examples and the either/or relationship between coin and query. The description restates the same parameter guidance and does not add meaningful syntax or edge-case semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States exactly what the tool returns: the mood on X about a coin or crypto topic in the last 24 hours, along with score, post volume, themes, and links. It clearly distinguishes itself from siblings by naming crypto_news for articles and crypto_market_pulse for metrics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use guidance ('You want to know what crypto traders on X are saying about a coin right now') and names alternative tools for different needs. It also explains payment behavior, including quote-before-pay and free failed calls.

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.

  1. 1 tool update
    • Addedx_pulse
  2. 9 tool updates
    • Changedbest_x402_tools1 field changed
      • addedInput schema / properties / limit / description
        Added value: +"How many results, 1-20 (default 10)."
    • Changedcompany_due_diligence1 field changed
      • addedInput schema / properties / cik / description
        Added value: +"SEC Central Index Key. Give this or ticker."
    • Changedcompany_snapshot1 field changed
      • addedInput schema / properties / cik / description
        Added value: +"SEC Central Index Key. Give this or ticker."
    • Changedexchange_rate1 field changed
      • addedInput schema / properties / amount / description
        Added value: +"Amount to convert (default 1)."
    • Changedsearch_and_read1 field changed
      • addedInput schema / properties / country / description
        Added value: +"Two-letter country code for local results, e.g. \"us\"."
    • Changedsec_company2 fields changed
      • addedInput schema / properties / cik / description
        Added value: +"SEC Central Index Key, e.g. 320193. Give this or ticker."
      • addedInput schema / properties / limit / description
        Added value: +"How many filings, 1-40 (default 10)."
    • Changedsec_financials1 field changed
      • addedInput schema / properties / cik / description
        Added value: +"SEC Central Index Key. Give this or ticker."
    • Changedweather_forecast1 field changed
      • addedInput schema / properties / periods / description
        Added value: +"How many 12-hour periods, 1-14 (default 14, i.e. 7 days)."
    • Changedweb_search1 field changed
      • addedInput schema / properties / num / description
        Added value: +"How many results, 1-10 (default 5)."
  3. 4 tool updates
    • Addedcrypto_market_pulse
    • Addedcrypto_news
    • Addedperps_market
    • Addedprice_history
  4. 1 tool update
    • Changedcheck_service1 field changed
      • removedInput schema / properties / method
        Removed value: -{
        -  "description": "Force a method. By default the listed method is tried first.",
        -  "enum": [
        -    "GET",
        -    "POST"
        -  ],
        -  "type": "string"
        -}
  5. 3 tool updates
    • Addedread_pages
    • Changedsearch_and_read4 fields changed
      • addedInput schema / properties / exclude_domains
        Added value: +{
        +  "description": "Never results from these sites.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "maxItems": 5,
        +  "type": "array"
        +}
      • addedInput schema / properties / freshness
        Added value: +{
        +  "description": "Only results from the past hour, day, week, month or year.",
        +  "enum": [
        +    "hour",
        +    "day",
        +    "week",
        +    "month",
        +    "year"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / include_domains
        Added value: +{
        +  "description": "Only results from these sites, e.g. [\"reuters.com\"].",
        +  "items": {
        +    "type": "string"
        +  },
        +  "maxItems": 5,
        +  "type": "array"
        +}
      • addedInput schema / properties / type
        Added value: +{
        +  "description": "\"news\" searches news articles instead of the whole web.",
        +  "enum": [
        +    "web",
        +    "news"
        +  ],
        +  "type": "string"
        +}
    • Changedweb_search4 fields changed
      • addedInput schema / properties / exclude_domains
        Added value: +{
        +  "description": "Never results from these sites.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "maxItems": 5,
        +  "type": "array"
        +}
      • addedInput schema / properties / freshness
        Added value: +{
        +  "description": "Only results from the past hour, day, week, month or year.",
        +  "enum": [
        +    "hour",
        +    "day",
        +    "week",
        +    "month",
        +    "year"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / include_domains
        Added value: +{
        +  "description": "Only results from these sites, e.g. [\"reuters.com\"].",
        +  "items": {
        +    "type": "string"
        +  },
        +  "maxItems": 5,
        +  "type": "array"
        +}
      • addedInput schema / properties / type
        Added value: +{
        +  "description": "\"news\" searches news articles instead of the whole web.",
        +  "enum": [
        +    "web",
        +    "news"
        +  ],
        +  "type": "string"
        +}
  6. 1 tool update
    • Changedweather_forecast2 fields changed
      • changedInput schema / properties / lat / description
        Previous value: -"Latitude, e.g. 38.98 (anywhere in the world). Give lat and lon, or a US address."New value: +"Latitude, e.g. 38.90 (anywhere in the world). Give lat and lon, or a US address."
      • changedInput schema / properties / lon / description
        Previous value: -"Longitude, e.g. -76.49"New value: +"Longitude, e.g. -77.04"
  7. 1 tool update
    • Changedweather_forecast1 field changed
      • changedInput schema / properties / lat / description
        Previous value: -"Latitude, e.g. 38.98. Give lat and lon, or address."New value: +"Latitude, e.g. 38.98 (anywhere in the world). Give lat and lon, or a US address."

Publisher details

Operator
Tollkit LLC · Publisher source
Vendor relationship
First-party
Trust center
Not available
Restrictions
Paid tools are paid per call in USDC from a wallet (x402 on Base or Solana). Many tools give 3 free calls a day without one. · Publisher source

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to call 60+ small, fast utility tools with per-call USDC payments on Base or Solana, covering conversions, validation, lookups, media processing, and blockchain data. It requires no account, API key, or subscription, and includes spending limits for safety.
    0
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to call 50+ pay-per-request tools covering onchain and crypto data, web research, security, compliance screening, business intelligence, and infrastructure checks. Payments settle per call in USDC on Base through the x402 protocol with no accounts, API keys, or subscriptions, and the first call is free for new wallets.
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to access crypto prices, DeFi yields, Polymarket data, Base chain info, and security scans with pay-per-call via USDC on Base mainnet.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to call pay-per-request AI and web tools—including web-to-Markdown reading, PDF extraction, translation, compliance lookups, domain/email/Solana data, and prediction-market intelligence—without accounts or API keys, settling each call in USDC via x402 on Base, Solana, or Arc.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.