Skip to main content
Glama

Foundry: prepaid AI compute in USDF

Server Details

Prepaid AI compute in USDF: models, quotes and chat with a receipt; pay per call (x402) or by key

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.9/5.0

Scored across 10 tools

Disambiguation4/5

Most tools have clearly distinct purposes (search vs call the agents market, list_models vs list_tools, quote vs quote_tool). However, chat, agents_market_call, and x402_pay all involve paying a seller for a call, and their boundaries rely on dense descriptions rather than obvious naming, so a few could be confused at a glance.

Naming Consistency3/5

Several names follow a verb_noun pattern (list_models, list_tools, agents_market_call, agents_market_search, x402_pay), but others are bare nouns (balance, chat, quote, receipt). The convention is mixed yet still readable and inferable.

Tool Count5/5

Ten tools is well-scoped for a compute/payment gateway, with each tool earning its place across the discovery, quoting, calling, and receipt lifecycle.

Completeness4/5

The surface covers discovery (list_models, list_tools, agents_market_search), pricing (quote, quote_tool, balance), execution (chat, agents_market_call, x402_pay), and verification (receipt), which is a fairly full lifecycle. Minor gaps exist, such as no listing of a key's past receipts or a way to fund/top up a balance.

Available Tools

10 tools
agents_market_callCall a listingAInspect

Calls a listing of the agents market by its id (svc_..., from agents_market_search), paid from this key's USDF balance (never free credit) within the key's and its agent's limits and at most max_price: what one call costs and nothing on top; a call its seller does not answer 2xx costs nothing, or no more than what its seller kept of it. Every listing is called the same way, and answers 503 market_calls_unarmed while calls to the market are not switched on. Needs Authorization: Bearer sk_.... Returns the seller's answer and the receipt. The input goes to the seller, whose own policy governs what it keeps.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe listing's id (svc_...), from agents_market_search
inputNoWhat the call sends: JSON for a POST listing, an object of plain values (its query) for a GET one
max_priceYesThe most this call may cost in USDF ("0.05"): required, as a seller may change its price; the listing's price is in agents_market_search

TDQS

A4.5/5.0
Behavior5/5

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

Far exceeds the annotations (readOnly=false, openWorld=true, idempotent=false): it discloses the billing source (USDF balance, never free credit), the cost cap semantics (at most max_price, nothing on top), that a non-2xx unanswered call costs nothing or only what the seller kept, the 503 market_calls_unarmed gating, and the required Bearer auth. This is exactly the behavioral context a paid, open-world call needs.

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-loads the action and keeps nearly every clause load-bearing (cost, error, auth, return). The first sentence is long and clause-dense, verging on run-on, which slightly hurts scannability.

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 still states the return value ('the seller's answer and the receipt') and covers auth, cost, and error paths. Limits handling ('within the key's and its agent's limits') is mentioned but its failure behavior is not spelled out, a minor gap for this complexity.

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: input is forwarded to the seller whose own policy governs it, and id is explicitly tied to agents_market_search output. The max_price rationale (seller price changes) also deepens the required-parameter understanding.

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 ('Calls a listing of the agents market by its id') and pins the id's provenance to the agents_market_search sibling, so an agent can separate it from search/quote tools without opening a schema. The scope is unambiguous.

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 clearly signals the prerequisite (the svc_... id comes from agents_market_search) and why max_price is mandatory (a seller may change its price). It does not explicitly route to the quote/quote_tool siblings for pre-call pricing, so the when-to-use-vs-alternatives guidance is implied rather than stated.

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

balanceBalanceA
Read-only
Inspect

The calling key's available balance, the account's balance and held amount, and the key's budget left, in USDF (Authorization: Bearer sk_...). With address instead, no key: that wallet's USDF and USDG on the chain now and its USDF allowance to Permit2, which x402 pays from.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressNoA wallet address (0x...): its USDF and USDG on the chain, with no key

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description goes beyond that by disclosing the required auth header format (Authorization: Bearer sk_...), the fact that the address mode is unauthenticated, and the x402/Permit2 payment context that gives the returned allowance meaning.

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?

Two sentences, front-loaded with the default keyed behavior before the `address` alternative, with no redundant filler. It is dense — the parenthetical auth header interrupts the balance list — but every clause carries information.

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 carries the return-value burden and does so by enumerating both modes' outputs (available balance, account balance, held amount, budget left, chain balances, allowance). For a single-optional-param read tool with annotations present, this is essentially complete.

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 already 100%, so the baseline is 3, but the description adds real meaning: the `address` parameter switches to a keyless mode and changes both the semantics and the returned fields (on-chain USDF/USDG, Permit2 allowance) rather than just trimming the response.

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?

The description names the specific resources returned: the calling key's available balance, the account balance and held amount, the key's budget remaining in USDF, plus a second mode returning a wallet's on-chain USDF/USDG and Permit2 allowance. That is precise enough to distinguish it from payment siblings like quote or x402_pay, though it never names a sibling explicitly.

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

Usage Guidelines3/5

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

It gives a clear conditional for choosing the `address` mode over the keyed mode ('With `address` instead, no key'), which is useful mode-selection guidance. It does not explain when an agent should call balance at all versus siblings such as receipt, so overall usage guidance remains implied rather than explicit.

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

chatChat completionAInspect

Runs a chat completion through the metered gateway and returns the text with its receipt (tokens, price, cost, balance, settlement). Needs Authorization: Bearer sk_... and spends from that key's balance; a hold for the maximum cost is placed first. Not streamed. Output is capped at 4096 tokens. A call without a progress token answers within 55 s of arriving. With a progress token, progress is sent every 15 s and the call may run 10 minutes, so the client must reset its timeout on progress (resetTimeoutOnProgress: true in the TypeScript SDK) or wait that long. At its deadline, or when the client's connection closes, a call is cut: the text produced so far is returned with finish_reason "length" and billed on the provider's usage report where the provider gives one, otherwise on an estimate never above max_tokens; for a model whose reasoning is not streamed, at the held output budget. Cancellation messages are not supported: a call the client stops waiting for without disconnecting runs to completion or its deadline and is billed. With no key, the call is paid with x402 in USDF (Permit2) or USDG (EIP-3009), as POST /x402/v1/chat/completions: without a payment it returns isError with the payment requirements (x402Version, resource, accepts) as structuredContent; sign one accept and call again with the payment in _meta["x402/payment"], the payment argument or the PAYMENT-SIGNATURE header. The quote is the call's maximum cost at the published price (prompt at one token per byte, output at max_tokens, capped as above, no minimum), paid up front; the call is charged what it uses at that price and the rest is refunded in the asset paid, the gateway paying the gas. A paid call runs to its end or its deadline whether or not the client waits and returns the receipt and _meta["x402/payment-response"]; at the deadline the text so far is returned with finish_reason "length" and a note, charged what it used and the rest refunded. A call no provider accepted before its deadline, or whose provider failed or ended with nothing, is refunded in full in the asset paid; so is one cut by the deadline after the provider accepted it, with nothing produced. A call with less than 20 s left before its deadline is refused before the payment is settled (deadline_too_close), nothing charged. MPP clients pay the same quote: the payment-required result also carries _meta["org.paymentauth/payment-required"] with evm charge challenges (USDG by EIP-3009 authorization, USDF by Permit2); call again with the credential in _meta["org.paymentauth/credential"], and the paid result carries _meta["org.paymentauth/receipt"].

ParametersJSON Schema
NameRequiredDescriptionDefault
modelYesModel id from list_models
paymentNoWith no key: the x402 payment for this call's quote, as the PAYMENT-SIGNATURE value (base64 JSON) or the payload object; _meta["x402/payment"] and the PAYMENT-SIGNATURE header are read too
messagesYesChat messages in the OpenAI format: objects with a role (system, user, assistant or tool) and content (text, or an array of content parts)
max_tokensNoOutput token budget, a positive integer; defaults to the model's default_max_output, capped at max_output
temperatureNoSampling temperature, 0 to 2

TDQS

A4.2/5.0
Behavior5/5

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

With annotations present, the bar is only that the description add behavior beyond them, and this one is exceptionally forthcoming: an up-front hold for maximum cost, non-streamed output, a 4096-token cap, the 55 s / 15 s / 10 min timing model, truncation to finish_reason 'length', refund and gas behavior, the 20 s deadline_too_close refusal, and that cancellation messages are unsupported and stopped-but-not-disconnected calls are still billed. The declared non-read-only, non-idempotent, open-world profile is consistent with this 'metered, spending, stateful' account.

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 first sentence is well front-loaded, but the body is a single dense paragraph mixing key-auth, x402, MPP, refunds and deadlines. It is not padded with fluff, yet the truncation-to-'length' rule is effectively restated for the x402 case, and the material would be far more usable as structured bullets. Size is defensible for the complexity but structure is poor.

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 must cover returns, and it does: text plus a receipt with tokens, price, cost, balance and settlement, plus _meta x402/payment-response and org.paymentauth/receipt. For a tool involving metered payment, proofs and deadline-driven refunds, the failure modes an agent could hit are all covered.

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 3 is the baseline. The description exceeds it by explaining the payment parameter's mechanics beyond the schema text: sign one accept and resubmit via _meta["x402/payment"], the payment argument, or the PAYMENT-SIGNATURE header, and by tying max_tokens to the hold, the 4096 cap, and the output-price calculation.

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?

The opening sentence gives a specific verb and resource: 'Runs a chat completion through the metered gateway and returns the text with its receipt (tokens, price, cost, balance, settlement).' That is unambiguous and far better than a tautology. However, it never explicitly routes the agent relative to siblings like quote, receipt or x402_pay, so the differentiation is left implicit.

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 description gives rich conditional usage: with a Bearer key it spends the key's balance, with no key it switches to the x402 flow, and it spells out the progress-token timeout semantics and the deadline/cancellation conditions. What is missing is guidance on when to call this tool versus the sibling quote/receipt/x402_pay tools, so context selection is implied rather than stated.

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

list_modelsList modelsA
Read-only
Inspect

Models the gateway serves with their prices (USD per 1M tokens, the same figure in USDF), context window, output limits and whether a route is available right now. No key needed.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered; the description still adds two useful facts beyond them: no API key is required, and the tool reports whether a route is available 'right now', implying live rather than cached state. It stops short of describing pagination or rate limits.

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?

A single dense sentence that front-loads the resource and then lists the fields returned; every clause carries information. The parenthetical price explanation is slightly heavy but 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 carries the burden of explaining return values, and it does so completely: pricing units, context window, output limits, and route availability. Nothing an agent needs to invoke or interpret the call 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?

The tool takes zero parameters, so the baseline is 4; the description instead spends its words on return-field semantics (USD per 1M tokens vs USDF), which is appropriate for a parameterless call.

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?

The description gives a specific resource ('models the gateway serves') and enumerates the returned fields (prices in USD/USDF, context window, output limits, route availability), so the agent knows exactly what it gets. It does not, however, distinguish itself from the sibling list_tools, which an agent could easily confuse with this one.

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

Usage Guidelines2/5

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

No when-to-use or when-not-to-use guidance is offered, and no alternative such as list_tools or quote is named. The only usage-adjacent fact is 'No key needed', which clarifies auth requirements but not selection.

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

list_toolsList toolsA
Read-only
Inspect

Tools callable through POST /v1/tools/{id} on the same balance and key as chat, with their price (USDF base units: 1 unit = $0.000001; cost plus 5% at most) and each tool's input schema, ordered by title: every tool listed can be called now. q narrows the list to tools whose id, title or description has it; a page holds at most 200, the next named by page.next. No key needed.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNoWords a tool's id, title or description has
cursorNopage.next of the page before

TDQS

A4.2/5.0
Behavior5/5

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

Annotations only declare readOnlyHint and a closed-world hint; the description adds materially more: no authentication required, the pricing model (USDF base units, cost plus at most 5%), the page size ceiling of 200, and the page.next cursor mechanism. That is exactly the auth, cost, and pagination context an agent cannot get from 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.

Conciseness4/5

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

It is a single dense sentence-cluster, but front-loads the important facts (endpoint, pricing, callability) before q and pagination. Every clause carries information, though the semicolon-chained phrasing is packed tightly enough to slow parsing slightly.

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 describe return values and it does: price, per-tool input schema, title ordering, and page.next for continuation. Auth, cost, and pagination are all covered, so nothing needed 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.

Parameters3/5

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

Schema description coverage is 100%, so q and cursor are already documented, establishing a baseline of 3. The description only marginally extends this by tying cursor to 'page.next' and clarifying that q matches id, title, or description; it adds no format or edge-case 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?

The description names a specific verb and resource ('Tools callable through POST /v1/tools/{id}') and elaborates the returned payload: price in USDF base units, each tool's input schema, and ordering by title. An agent can distinguish this catalogue lister from siblings like list_models, agents_market_search, or quote_tool 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 Guidelines3/5

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

It gives real invocation context ('No key needed', 'every tool listed can be called now') and explains what q narrows, but never states when to choose this over agents_market_search or quote_tool, nor any exclusion. Usage is implied by the 'callable now' framing rather than stated as guidance.

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

quoteQuote a requestA
Read-only
Inspect

The hold the chat tool places before running a request, in USDF and USD (output capped at 4096 tokens). It is an estimate, not a ceiling: a completed request is billed the provider's reported usage, normally less. Pass prompt or messages. No key needed; a request for attested hardware (a :private model id or provider.private), and any request from a Private-tier key, is quoted on its attested routes, at the model's price.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelYesModel id from list_models
promptNoPrompt text, sent as one user message
messagesNoChat messages in the OpenAI format: objects with a role (system, user, assistant or tool) and content (text, or an array of content parts)
providerNoRouting asks as on the REST API, for example {"private": true} for attested hardware this gateway verified, at the model's price
max_tokensNoOutput token budget, a positive integer; defaults to the model's default_max_output, capped at max_output

TDQS

A4.2/5.0
Behavior5/5

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

Annotations only say readOnlyHint=true/openWorldHint=false, yet the description adds substantial context: it is an estimate and not a billing ceiling, actual billing follows provider-reported usage and is normally less, no key is required, and attested/private routing is quoted at the model's price on verified routes. This is exactly the kind of cost/auth behavior an agent needs beyond the structured hints.

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?

Three dense sentences with no filler; the pricing semantics are front-loaded. Slight deductions for the roundabout opening noun phrase and the repeated 'at the model's price' clause, which make it less scannable than it could be.

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 still conveys the return's essence (dual USDF/USD figures, 4096-token cap) and the pricing model. However, it does not describe the shape of the returned quote or how the two currencies relate, leaving a modest gap for a tool whose whole job is producing a structured price estimate.

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?

With 100% schema coverage the baseline is 3, but the description adds real meaning: 'Pass prompt or messages' clarifies the two mutually optional input paths, and the 'output capped at 4096 tokens' note relates to the token budget. The 4096 cap sits somewhat awkwardly next to the schema's max_tokens default/cap wording, creating mild ambiguity about which budget is meant.

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?

The description defines the tool as 'the hold the chat tool places before running a request' and clarifies 'It is an estimate, not a ceiling', so an agent can infer this returns a pre-flight cost quote in USDF/USD for a chat request. It is distinguishable from siblings like chat, balance and receipt, though the purpose is expressed through a metaphor rather than a direct verb+resource statement.

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 states when this applies (before running a request, mirroring the chat flow) and gives input guidance ('Pass prompt or messages', 'No key needed'). It also names the conditions under which special routing pricing applies (attested hardware via ':private' or provider.private, Private-tier keys), but it never explicitly contrasts with an alternative tool or states when not to use it.

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

quote_toolQuote a tool callA
Read-only
Inspect

The hold a call to a tool takes for this input before it runs (its worst case), in USDF base units and USD, with the tool's price. Checks the input as the call would; runs nothing and holds nothing. No key needed.

ParametersJSON Schema
NameRequiredDescriptionDefault
toolYesTool id from list_tools
inputNoThe input the call would send, as in the tool's input schema

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered; the description adds genuinely new context by stating it performs no side effects ('runs nothing and holds nothing'), that the returned amount is a worst-case hold, and that 'No key needed' (no auth required). That is more than the annotations provide.

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?

Three short sentences with no filler; the output content comes first and the no-side-effects/auth notes follow. The opening clause is syntactically tangled, but the piece is appropriately sized and front-loaded.

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 steps in to describe what is returned (worst-case hold in USDF base units and USD, plus the tool's price), and it resolves the auth and side-effect questions. It does not say what happens when the input fails validation, but nothing else an agent needs to call it 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% with only two parameters, so the schema already documents 'tool' (id from list_tools) and 'input'. The description adds only that the input is checked as the call would be, which is marginal beyond the schema, so baseline 3 applies.

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

Purpose4/5

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

The description makes clear this returns the hold/price a tool call would incur for a given input, in USDF base units and USD, with the tool's price. The garbled first sentence ('The hold a call to a tool takes for this input') is awkward to parse, but the resource and effect are unambiguous and it distinguishes itself from siblings that actually execute (agents_market_call, x402_pay) and from 'receipt'/'balance'.

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

Usage Guidelines3/5

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

It implies pre-flight usage by noting it 'checks the input as the call would; runs nothing and holds nothing', which tells the agent to quote before executing. However it never explicitly names an alternative (e.g., use this before agents_market_call) or states when not to use it.

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

receiptReceiptA
Read-only
Inspect

The receipt for a request made with the calling key: usage, price sheet version, cost, and once settled the batch, its transaction and the rows behind the onchain digest (Authorization: Bearer sk_...). With no key, the public receipt of any request id, x402 ones included: its line in the usage log as fields, the payment, the settlement and the proof's URL (GET /x402/v1/receipts/{id}).

ParametersJSON Schema
NameRequiredDescriptionDefault
request_idYesThe id returned with the completion (also the x-request-id header)

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds real value beyond that: it discloses the auth requirement (Authorization: Bearer sk_...), the two authorization modes, and the settlement-dependent nature of the response (transaction and rows appear once the batch is settled).

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?

Sized reasonably for the information it carries, but it is structured as one long run-on sentence with two parallel colon-lists, making it hard to parse. The keyed-vs-public distinction is buried rather than front-loaded.

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 present, the description usefully compensates by enumerating what the response contains (usage line, payment, settlement, proof URL) and covers both authenticated and public access. It is nearly complete for a one-parameter read tool, lacking only explicit routing to sibling tools.

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% and the single required parameter is already documented in the schema, so the baseline is 3. The description adds marginal meaning by tying the id to the endpoint template GET /x402/v1/receipts/{id} ('any request id'), but provides no extra format or sourcing detail.

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?

The description names the specific resource (a request's receipt) and enumerates its contents (usage, price sheet version, cost, settlement, transaction, onchain digest), and it distinguishes two modes: keyed vs public receipt. It is clearly more than a restatement of the name, though it never uses a plain verb and leans on heavy jargon.

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

Usage Guidelines3/5

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

It implies usage conditions - provide the calling key for your own request's receipt, or omit it to fetch the public receipt of any request id including x402 ones. That conditional is useful, but there is no explicit when-to-use-this-vs-alternatives guidance referencing siblings such as x402_pay or quote.

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

x402_payPay an x402 URLAInspect

Calls a URL that asks for an x402 payment and pays it for you: the gateway pays the seller in USDC from its own float on Base or Solana and charges this key in USDF cost plus 5% at most, no minimum (the seller's amount and a fee of at most 5% of it; never free credit), within the key's and its agent's limits. Needs Authorization: Bearer sk_.... Returns the seller's answer with the payment and its receipt; a payment is charged only once the chain shows it, and one that never settles costs nothing. quote: true answers what it would cost and pays nothing. Third-party tools to call this way are listed under marketplace in list_tools (GET /v1/tools?source=marketplace).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe seller's URL (https)
bodyNoThe request body: text, or JSON sent as application/json
quoteNoAnswer the price and pay nothing
methodNoDefault GET, or POST when a body is given
headersNoHeaders for the seller (the payment headers are the gateway's)
networkNoPay on this network only
max_priceNoThe most to pay in USDF, the fee included ("0.05")

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations: it discloses the funding mechanism (gateway's USDC float on Base or Solana), the billing model (USDF cost plus at most 5%, no minimum, within key/agent limits), the auth requirement (Bearer sk_...), and the settlement risk model (charged only once the chain shows it; an unsettled payment is free). The readOnlyHint=false annotation is consistent with this spend operation.

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-loads the core action, then layers in payment, auth, and settlement details. It is information-dense and slightly rambling in its parenthetical asides, but nearly every clause carries distinct behavioral value.

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 having no output schema, it describes the return value (the seller's answer with the payment and its receipt), covers auth, fee exposure, network selection, and cancellation semantics. Nothing an agent needs to call this financial operation safely 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?

With 100% schema description coverage, the schema already documents all seven parameters, including quote and max_price. The description corroborates the fee ceiling and network options but adds little parameter meaning beyond what the schema states, 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 (calls a URL demanding an x402 payment and pays it), naming the capital source, networks, and billing currency. It is clearly separable from siblings like quote, quote_tool, and receipt, and even notes the intra-call escape hatch (quote: true pays nothing).

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 clear context for when to invoke it (a URL that asks for an x402 payment) and points at list_tools (?source=marketplace) to discover suitable third-party endpoints, plus the quote: true mode for price checks without paying. It stops short of explicitly saying when NOT to use it versus the standalone quote/quote_tool siblings.

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. 10 tool updates
    • First observedagents_market_call
    • First observedagents_market_search
    • First observedbalance
    • First observedchat
    • First observedlist_models
    • First observedlist_tools
    • First observedquote
    • First observedquote_tool
    • First observedreceipt
    • First observedx402_pay

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources