Skip to main content
Glama

TWZRD Agent Intelligence

Server Details

Trust + receipt layer for x402 agents on Solana: free preflight + paid signed V6 trust receipt.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
twzrd-sol/twzrd-trust
GitHub Stars
1

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.3/5 across 23 of 23 tools scored. Lowest: 2.9/5.

Server CoherenceA
Disambiguation5/5

Each tool has a highly specific purpose with detailed descriptions that clearly differentiate them. While there is slight overlap between get_readiness_card_tool and low_level_preflight, the descriptions explain the differences explicitly (basic vs. richer). Overall, no two tools could be easily confused.

Naming Consistency4/5

Most tools follow a verb_noun pattern (get_, evaluate_, compare_), but there are exceptions like is_wash_fleet, low_level_preflight, and twzrd_watch_*. All use snake_case and are descriptive, so the inconsistency is minor.

Tool Count5/5

23 tools is a reasonable number given the server's broad domain covering wallet intelligence, x402 payments, Solana market data, watch management, and receipt verification. Each tool serves a distinct function and none feel superfluous.

Completeness4/5

The tool surface covers the core free discovery features well: preflight checks, scoring, reputation, wash detection, watch management, receipt verification, and market data. The only notable gap is that the full paid intel model is only available via an HTTP endpoint, not as an MCP tool, but this is by design for the free tier.

Available Tools

24 tools
compare_walletsA
Read-onlyIdempotent
Inspect
Free discovery: side-by-side intel for two wallets (e.g. choosing between two
candidate providers). Returns both full score objects and which ranks higher by
the wash-discounted effective_score ("tie" on equal, null if a side is unavailable).
ParametersJSON Schema
NameRequiredDescriptionDefault
wallet_aYesFirst Solana wallet pubkey to compare.
wallet_bYesSecond Solana wallet pubkey to compare.

Output Schema

ParametersJSON Schema
NameRequiredDescription
wallet_aNoFull score object for the first wallet.
wallet_bNoFull score object for the second wallet.
higher_effective_scoreNoWallet with the higher wash-discounted score, or "tie", or null if a side was unavailable.
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint; description adds details about return value (both full score objects, ranking, tie/unavailability handling). No contradictions and adds meaningful behavioral context beyond annotations.

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

Conciseness5/5

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

Two sentences with maximum information density. Front-loaded purpose and returns, no filler. Every word earns its place.

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?

Given the output schema exists, the description adequately explains the return value (score objects, ranking, metric). It could mention what a 'score object' contains, but that is handled by the schema. Overall complete for a comparison 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 coverage is 100% and the input schema already describes the parameters as wallet pubkeys. The tool description does not add extra meaning beyond the schema, so baseline 3 is appropriate.

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 states 'side-by-side intel for two wallets' with a specific use case example. It distinguishes from siblings like score_wallet_for_intel (single) and score_wallets_batch (batch) by focusing on pairwise comparison and ranking output.

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 context ('Free discovery') and an example ('choosing between two candidate providers'), but does not explicitly exclude alternative tools or mention when not to use. The context is clear enough for typical use.

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

evaluate_x402_resourceA
Read-onlyIdempotent
Inspect
One-shot x402 guard. Fetches resource_url, extracts the seller wallet from the 402 accepts
array (prefers Solana network entries), runs TWZRD preflight, and returns a spending decision.

Decision:
  "allow" -> safe to proceed with the payment.
  "warn"  -> proceed with caution; consider buying the paid trust receipt (receipt_url, $0.05).
  "block" -> DO NOT PAY. Stop immediately.
  is_x402 == False -> not an x402 resource (HTTP != 402); treat as allow.

Revenue path: when decision is "warn", fetch receipt_url with an x402-capable wallet ($0.05
USDC to TWZRD) to get a signed V6 corpus-backed credential with the full trust score.
ParametersJSON Schema
NameRequiredDescriptionDefault
methodNoHTTP method to use when probing the resource. Default: GET.GET
price_usdcNoKnown price in USDC — overrides what the 402 reports. Leave unset to use the 402-reported amount.
agent_intentNoNatural-language description of what the agent intends to purchase.
resource_urlYesURL of the x402 resource to evaluate before paying. Will be fetched to extract 402 payment requirements.

Output Schema

ParametersJSON Schema
NameRequiredDescription
urlNoThe evaluated resource URL.
errorNoError or info message; present on non-402 and degraded paths.
is_x402NoTrue if the resource returned HTTP 402 with x402 payment requirements.
decisionNoSpend decision: "allow" | "warn" | "block".
price_usdcNoQuoted price in USDC from the 402 response.
receipt_urlNoURL to fetch the paid trust receipt ($0.05 USDC to TWZRD).
trust_scoreNoComposite trust signal, 0-100.
upsell_usdcNoCost of the TWZRD paid trust receipt in USDC.
seller_walletNoSeller wallet extracted from the 402 accepts array (Solana preferred).
readiness_cardNoFull readiness card from the preflight evaluation.
Behavior5/5

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

Annotations already indicate readOnly and idempotent. The description adds depth by detailing the extraction of seller wallet, TWZRD preflight, decision outcomes, and revenue path for 'warn'. It discloses that a purchase may be needed in the 'warn' case, which is crucial behavioral information. No contradiction with annotations.

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

Conciseness4/5

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

The description is moderately concise, with a clear front-loaded definition of purpose. It uses a bullet-like format for decisions, which aids readability. However, the revenue path explanation could be condensed. Overall well-structured but slightly verbose.

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 tool has 4 parameters (1 required), a rich description, and an output schema (implied), the description covers all important aspects: purpose, inputs, behavior, decision outcomes, and subsequent steps. It leaves no significant gaps for an AI agent to understand invocation and results.

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 does not add significant meaning beyond the schema; it mentions using 'resource_url' and overriding 'price_usdc', but these are already described in the schema. No additional semantics for 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?

The description clearly states it is a 'one-shot x402 guard' that evaluates a resource and returns a spending decision. It specifies the action (fetches, extracts, runs preflight) and the output (decision). The purpose is specific and distinct from sibling tools which focus on wallets, markets, and directories.

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 explains when to use: before paying an x402 resource. It provides decision outcomes and a revenue path for 'warn', guiding subsequent actions. It does not explicitly state when not to use, but the context and sibling comparisons make it clear. Slightly lacking in exclusion guidance.

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

get_counterpartiesA
Read-onlyIdempotent
Inspect
Free discovery (capped teaser): the top-N merchants a wallet actually pays, by
event count, with per-edge tx_count / total_usdc / first+last timestamps.

See WHO a counterparty transacts with before trusting it. The list is capped
(default 10, max 25) and `capped`/`total_distinct_merchants` disclose how much
is withheld; the FULL deduped payment graph and numeric edge weights are part
of the paid intel surface (GET /v1/intel/trust/{wallet}). Fail-open.
ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax counterparties to return (default 10, hard cap 25 - this is a capped teaser).
walletYesPayer Solana wallet public key (32-44 base58 chars) whose counterparties (merchants paid) to list.

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNoPresent only on the degraded path.
cappedNoTrue if the full merchant set exceeds the returned list.
walletNoThe payer wallet looked up.
returnedNoNumber of counterparties returned (<= limit).
teaser_noteNoStates that the full deduped graph + edge weights are paid.
total_eventsNoTotal observed payment events for this payer.
counterpartiesNoCapped top-N merchants paid, each with tx_count, total_usdc, first_at, last_at.
data_availableNoFalse when the corpus/DB was unavailable.
total_distinct_merchantsNoTotal distinct merchants this payer has paid (full, uncapped).
Behavior4/5

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

Beyond annotations (readOnlyHint, idempotentHint), the description adds that it's a 'capped teaser,' explains the cap mechanism, mentions full paid intel is elsewhere, and states 'Fail-open.' This provides useful behavioral context not in annotations.

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

Conciseness4/5

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

The description is a single paragraph that front-loads the main purpose, then adds details about cap and paid intel. It is concise and well-structured, though a slight reorganization could improve readability.

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?

Given the tool's simplicity (2 params, output schema present), the description covers purpose, parameters, limitations, and behavioral quirks. It provides enough context for an agent to use 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 both parameters (wallet, limit). The description reinforces that the limit is a capped teaser, adding minor context but not substantial new meaning beyond what the schema 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 description clearly states it's a free discovery tool for top-N merchants a wallet pays, with per-edge details. It uses specific verbs ('discover', 'list') and distinguishes from sibling tools by focusing on counterparties of a wallet.

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 explicitly says 'See WHO a counterparty transacts with before trusting it,' providing clear context for when to use. However, it does not mention when not to use or list alternative tools, which would be helpful given the many sibling tools.

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

get_facilitator_footprintA
Read-onlyIdempotent
Inspect
Free discovery: which x402 facilitators a payer has settled through, and how many.

unique_facilitators = 1 is a thin/captive agent (locked to one rail); breadth
across facilitators indicates a more established cross-rail agent. Returns the
facilitator_ids list plus tx/merchant context. Fail-open: a DB gap returns
data_available=false rather than erroring.
ParametersJSON Schema
NameRequiredDescriptionDefault
walletYesSolana wallet public key (32-44 base58 chars) to look up its x402 facilitator footprint.

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNoPresent only on the degraded path.
foundNoTrue if the wallet has observed corpus activity.
walletNoThe wallet looked up.
tx_countNoTotal observed paid calls.
last_seenNoISO timestamp of last observed activity.
first_seenNoISO timestamp of first observed activity.
data_availableNoFalse when the corpus/DB was unavailable.
facilitator_idsNoThe facilitator identifiers observed for this payer.
unique_merchantsNoDistinct merchants paid.
unique_facilitatorsNoDistinct x402 facilitators this payer has settled through (1 = thin/captive).
Behavior5/5

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

Annotations declare readOnlyHint and idempotentHint=true. Description adds crucial behavior: 'Fail-open: a DB gap returns data_available=false rather than erroring,' which is not in annotations. Also explains output structure (facilitator_ids, tx/merchant context) beyond schema.

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?

Three sentences: purpose, significance interpretation, and error handling. No redundant words, front-loaded with key insight. Extremely concise and well-structured.

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 output schema existence (not shown but referenced), description is complete: explains what is returned (facilitator_ids, tx/merchant context), how to interpret results, and error behavior. No gaps for a discovery 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 has 1 parameter (wallet) with description, 100% coverage. Description adds meaning by explaining how the returned data should be interpreted (unique_facilitators significance), providing context beyond parameter description.

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?

Description clearly states the tool discovers which x402 facilitators a payer has settled through and how many, with specific verb 'discovery' and resource 'facilitator footprint'. Differentiates from sibling tools by focusing on facilitator settlement breadth, not covered by any sibling name.

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?

Description implies use for discovering facilitator footprint and interpreting results (e.g., unique_facilitators=1 means captive agent), but does not explicitly state when to use this tool vs alternatives like compare_wallets or get_counterparties. No when-not-to-use guidance provided.

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

get_merchant_cardA
Read-onlyIdempotent
Inspect
Free merchant card: demand quality around a Solana receive wallet.

Dual input (PR-3): pass ``wallet`` and/or ``resource_id``. Resource resolves via
the first-party registry (TWZRD seed) to a pay_to, then the same graph card.
Does NOT claim service quality (resource_listing_only / catalog_listing_only).

HTTP twin: GET /v1/intel/merchant_card/{wallet_or_resource_id}.
ParametersJSON Schema
NameRequiredDescriptionDefault
walletNoReceive wallet (x402 pay_to / merchant pubkey). Graph demand-quality card only — not a business attestation.
resource_idNoOptional registry resource_id (HTTP path template or mcp:tool). Resolved to merchant_wallet via PR-3 seed; claim resource_listing_only.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the tool's safety profile is clear. The description adds valuable context: it is free, uses a first-party registry for resolution, and explicitly states what it does NOT cover ('resource_listing_only / catalog_listing_only'). No contradiction with annotations.

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

Conciseness5/5

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

The description is concise with four sentences, no redundancy. It front-loads the core purpose and then provides necessary technical details (dual input, resolution, limitation). Every sentence 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?

Given the presence of an output schema, the description adequately covers the tool's behavior: input options, resolution process, what the tool does not provide, and its HTTP twin. No critical gaps for an agent to select or invoke 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%, and both parameters have descriptions. The tool description adds meaning beyond the schema by explaining the dual input (wallet and/or resource_id) and how resource_id is resolved via the registry. It also clarifies that the output is the same graph card regardless of input method.

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 clearly states it is a 'Free merchant card' that 'demands quality around a Solana receive wallet,' indicating the tool retrieves a merchant card for a wallet or resource ID. It distinguishes from claiming service quality by noting 'Does NOT claim service quality,' which adds specificity. However, the phrasing 'demand quality around' could be more direct.

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?

The description explains the dual input mechanism and that it does not claim service quality, implying a specific use case. However, it does not explicitly state when to use this tool vs. alternatives like 'get_readiness_card_tool' or other sibling tools, leaving the agent to infer context.

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

get_provider_reputationA
Read-onlyIdempotent
Inspect
Free discovery: corpus-backed SELLER reputation for a merchant/provider wallet.

Answers "is this provider organic, narrow, or a wash fleet?" from the merchant's
inbound payment graph over the last 90 days: unique payers, repeat-payer %,
heavy-fleet revenue concentration, captive-payer % (onboarding-sink proxy), and
a scripted-fleet uniformity signal. Returns a wash_label + reputation tier +
wash_flagged bool.

Complements score_wallet_for_intel (payer side) with the seller side. Fail-open:
a DB gap returns wash_label/tier "unknown" rather than erroring. This is the free
seller signal; the paid per-wallet renorm model + signed v6 receipt remain at
GET /v1/intel/trust/{wallet} (0.05 USDC).
ParametersJSON Schema
NameRequiredDescriptionDefault
merchantYesSeller/merchant Solana wallet public key (the pay_to address) to score on inbound corpus reputation.

Output Schema

ParametersJSON Schema
NameRequiredDescription
reasonNoDegraded-path reason (e.g. db_unavailable, no_corpus_inbound).
merchantNoThe seller/merchant Solana wallet looked up.
total_txNoTotal inbound paid calls (90d).
wash_labelNoSeller class: "provider_organic_broad" | "provider_mixed" | "provider_narrow_or_unknown" | "wash_shaped" | "fleet_dominated" | "unknown".
wash_flaggedNoTrue if fleet/wash/captive/scripted-fleet signals tripped.
score_versionNoprovider_reputation_v1.
unique_payersNoDistinct payers observed paying this merchant (90d).
avg_tx_per_payerNoAverage inbound tx per payer.
repeat_payer_pctNoPercent of payers who paid more than once.
captive_payer_pctNoPercent of payers who pay ONLY this merchant (captive/onboarding-sink proxy).
heavy_fleet_tx_cvNoTx-count uniformity across heavy-fleet payers; near-zero = scripted sybil fleet.
total_revenue_usdNoTotal inbound USDC revenue (90d).
heavy_fleet_payersNoCount of heavy single-counterparty fleet payers.
heavy_fleet_revenue_pctNoPercent of revenue from heavy-fleet payers.
provider_reputation_tierNoTier: "tier_a_provider" | "tier_b_provider" | "tier_tail" | "tier_wash_demo" | "unknown".
Behavior5/5

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

Annotations already indicate readOnly and idempotent. Description adds fail-open returning 'unknown' instead of erroring, and distinguishes free vs paid tiers. No contradictions.

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 key purpose, then details. Every sentence adds value, though slightly verbose in listing metrics (could be shortened). Still clear and well-structured.

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 output schema present, description fully explains inputs, outputs, and behavior. Covers specific metrics, error handling, and commercial context. Complete for tool 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?

Only one parameter with full schema description. Description adds context about the parameter being a Solana wallet pay_to address, but schema already covers it. Slight additional 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?

Clearly states the tool provides seller reputation from inbound payment graph, answering specific questions. Distinguishes from sibling score_wallet_for_intel by specifying seller side vs payer side.

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?

Explicitly states it complements score_wallet_for_intel, mentions fail-open behavior, and notes the paid alternative for more detailed analysis. Provides clear when-to-use and when-not-to-use guidance.

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

get_readiness_card_toolA
Read-onlyIdempotent
Inspect
PRIMARY free pre-spend gate (advisory). Pass seller_wallet OR resource_name.

When to use: before any x402 payment to a seller/resource.
When not to use: after you already decided to refuse; use verify_receipt for signed receipts only.

Pricing: free. Result is advisory (buyer policy still applies).

Decision semantics (top-level, no nesting via MCP):
  decision=block / recommended_action=do_not_pay -> DO NOT PAY.
  decision=warn / recommended_action=proceed_with_cap -> pay only up to maximum_recommended_spend_usdc.
  decision=allow / recommended_action=proceed_for_small_spend -> proceed under agent policy (no free-tier cap).

Also returns reason_codes[], confidence, model_version, decision_envelope.

trust_score is a free heuristic, NOT the full corpus.
Next: on allow/warn for material spend, paid GET /v1/intel/trust/{wallet} (0.05 USDC) then verify_receipt.
Optional: twzrd_watch_add for re-check after recheck_after_unix.
ParametersJSON Schema
NameRequiredDescriptionDefault
price_usdcNoQuoted price in USDC for the action you are evaluating.
agent_intentNoNatural-language intent describing the planned paid action.
buyer_walletNoBuyer's Solana wallet public key used for spend-context checks.
resource_urlNoCanonical endpoint URL for the resource, if available.
resource_nameNoProvider or resource label in a marketplace (for example marketplace:agent-name). Provide this OR seller_wallet.
seller_walletNoSeller's Solana wallet public key associated with the listing or endpoint. Provide this OR resource_name.
queried_pubkeyNoConsumer pubkey for velocity attribution (echoed on output when provided).
marketplace_scoreNoOptional upstream marketplace trust score (0-100) to blend into preflight context.

Output Schema

ParametersJSON Schema
NameRequiredDescription
proofNoProof block: v5_receipt_upsell_available, has_v5_receipts, receipt_endpoint, known_seller_wallets, provider_reputation.
caveatsNoRisk factors and the always-on trust_score_basis caveat.
versionNoCard schema version, e.g. readiness_card_v1.
categoryNoResource category (e.g. defi, defi_intelligence).
decisionNoSpend decision: "allow" | "warn" | "block".
can_spendNoTrue iff decision == allow.
next_fixesNoActionable steps the provider can take to raise trust.
price_usdcNoQuoted price in USDC.
trust_scoreNoComposite trust signal, 0-100.
recheck_hintNoOne-line instruction: re-verify via GET /v1/intel/trust/{pubkey} once now >= recheck_after_unix.
resource_nameNoResolved resource/provider label.
seller_walletNoSeller Solana wallet, if known.
paid_deep_diveNoPath to the paid full-trust surface (/v1/intel/trust/{wallet}).
queried_pubkeyNoConsumer pubkey echoed when provided on input (velocity attribution; not a settle gate).
staleness_daysNoRecommended re-check cadence in days (7 high-quality, 3 partial/stale).
data_as_of_unixNoAnchor time for the staleness calculation (seller last activity or card build time).
paid_price_usdcNoPrice of the paid deep dive in USDC.
root_provenanceNoWZRD protocol root metadata (for deposit/claim/settle resources): latest_root_seq, dataset_hash (if known), leaf_version (GLOBAL_V5), verification_status, onchain_match (null = call verify_root_inputs before on-chain action), dflow_velocity (when TWZRD_DFLOW_DATA_FIRST_URL set, for cross-referencing on-chain velocity/attention signals with the root's attention_bonus). Auto-populated on protocol keywords/mints/categories. Complements the verify_root_inputs tool for independent GLOBAL_V5 leaf + dataset + sorted-pair root recompute from public leaves. Null/absent on non-protocol resources.
score_decay_modelNostep:<=7d=1.0,<=30d=0.8,<=90d=0.5,>90d=0.25 (the actual recency decay on paid scores).
trust_score_basisNoProvenance of the score; ALWAYS the free heuristic, never the paid corpus model.
recheck_after_unixNoUNIX timestamp after which this intel is stale; re-call the paid trust surface when now >= this value.
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint. The description adds value by explaining the advisory nature, free pricing, and decision semantics (block/warn/allow) beyond what annotations provide. No contradictions.

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 well-structured with bolded terms and sections, but slightly verbose. Front-loaded with purpose, yet includes extra context like decision semantics and next steps. Still clear and 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?

Covers all necessary context: purpose, usage, decision semantics, output fields, next actions (paid intel, verify_receipt), and optional parameters. Output schema exists but description still explains key return fields.

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%, but the description adds crucial guidance: 'Pass seller_wallet OR resource_name.' This mutual exclusivity is not in the schema descriptions, enhancing 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?

The description clearly identifies the tool as a 'PRIMARY free pre-spend gate (advisory)' with explicit verb 'get readiness card'. It distinguishes from siblings by specifying it is used before payments, contrasting with verify_receipt and other 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?

Explicit 'When to use: before any x402 payment' and 'When not to use: after you already decided to refuse; use verify_receipt for signed receipts only' provide clear guidance and reference alternative tools.

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

get_solana_market_onchain_trades_summaryA
Read-onlyIdempotent
Inspect
Returns recent on-chain trade and settlement activity.

- With `ticker`: raw per-market trade rows from the live by-market feed
  (/onchain-trades-by-market).
- Without `ticker`: aggregated counts across all markets
  (total_trades_observed, distinct_markets_observed, markets_sample) from
  /onchain-trades-summary.

The two branches return DIFFERENT shapes (raw rows vs aggregated counts).
Tickers are prediction-market event tickers (e.g. KXUSNFP-26MAY01). On failure
returns a structured {status:"error", kind, retryable, detail} envelope.
ParametersJSON Schema
NameRequiredDescriptionDefault
tickerNoOptional prediction-market event ticker (e.g. KXUSNFP-26MAY01); omit for the global recent-trades summary.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds behavioral context: different output shapes for each branch and a structured failure envelope, which goes beyond what 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.

Conciseness5/5

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

The description is concise and well-structured, with the main purpose stated first, followed by clear bullet-point-like explanations for each branch. Every sentence adds necessary information without 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?

Given the tool's complexity (two branches, different shapes, failure envelope) and the presence of an output schema, the description covers the essential aspects. It lacks only minor details like rate limits, but is generally 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 100%, so the schema defines the parameter. The description adds value by explaining the ticker is optional, providing an example format, and describing the behavioral difference with/without it.

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 states the tool returns recent on-chain trade and settlement activity, with two distinct branches depending on whether a ticker is provided. It differentiates from sibling tools like get_solana_market_orderbook_depth by focusing on trades summary.

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 explains when to use with ticker (per-market raw rows) vs without (aggregated counts), providing clear context. It does not explicitly exclude alternatives, but the context is sufficient for correct usage.

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

get_solana_market_orderbook_depthA
Read-onlyIdempotent
Inspect
Returns normalized orderbook depth and liquidity profile for a specific ticker
from Solana Market API data.

Tickers are prediction-market event tickers (e.g. KXUSNFP-26MAY01), not spot
DEX symbols. Free discovery tool. On failure returns a structured
{status:"error", kind, retryable, detail} envelope.
ParametersJSON Schema
NameRequiredDescriptionDefault
tickerYesPrediction-market event ticker, uppercased (e.g. KXUSNFP-26MAY01). NOT a spot token symbol.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint as true. The description adds useful behavioral context by noting it is a 'Free discovery tool' and detailing the failure response format (structured error envelope), which exceeds what 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?

The description is three sentences long, front-loading the core purpose. It is concise without redundancy, though the ticker clarification could be integrated more tightly.

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?

For a simple tool with one parameter, annotations, and an output schema, the description covers key aspects: operation, ticker format, cost, and error handling. It is sufficiently complete, though it could briefly mention that the output schema documents the returned depth data.

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?

The schema provides 100% description coverage for the single parameter 'ticker', including its format and a warning against spot symbols. The description echoes this information without adding new parameter semantics, so baseline 3 is appropriate.

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 states the verb ('Returns normalized orderbook depth and liquidity profile') and resource ('a specific ticker from Solana Market API data'). It explicitly distinguishes prediction-market event tickers from spot DEX symbols, differentiating it from sibling tools like get_solana_market_onchain_trades_summary.

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?

The description indicates the tool is a 'Free discovery tool' for orderbook depth, implying usage context. However, it does not specify when to avoid using it or provide direct comparisons to sibling tools, leaving some ambiguity.

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

get_solana_market_shapeA
Read-onlyIdempotent
Inspect
Returns market shape / structure signals for a ticker (concentration, venue
fragmentation, settlement patterns).

Excellent for understanding *how* a market actually trades on-chain. Tickers
are prediction-market event tickers (e.g. KXUSNFP-26MAY01). On failure returns
a structured {status:"error", kind, retryable, detail} envelope.
ParametersJSON Schema
NameRequiredDescriptionDefault
tickerYesPrediction-market event ticker, uppercased (e.g. KXUSNFP-26MAY01). NOT a spot token symbol.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint. The description adds context about the structured signals returned and the failure envelope with status, kind, retryable, detail, which goes beyond what 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.

Conciseness5/5

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

The description is two sentences with no redundant words. The first sentence states the core functionality, and the second provides use-case context and failure behavior. Front-loaded and 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?

Given the presence of an output schema, the description appropriately doesn't detail return values. It covers the ticker semantics, failure behavior, and use-case, which is complete for a simple one-parameter tool with good annotations and schema.

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?

Parameter schema has 100% coverage for the single 'ticker' parameter, which is well-described in the schema with example and note about uppercase. The tool description restates this info, adding slight value but not significantly 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 clearly states the tool returns market shape/structure signals (concentration, venue fragmentation, settlement patterns) for a ticker, specifying that tickers are prediction-market event tickers, not spot tokens. This distinguishes it from sibling tools like get_solana_market_orderbook_depth.

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?

The description says it's excellent for understanding how a market trades on-chain, implying when to use it, but does not explicitly state when not to use it or compare it with alternatives like get_solana_market_onchain_trades_summary or get_solana_market_visibility_map.

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

get_solana_market_statusA
Read-onlyIdempotent
Inspect
Health probe for the Solana Market API data backend.

Call this to gate or degrade gracefully BEFORE the other get_solana_market_*
tools: it does a short-timeout hit on the data service and reports whether it
is reachable, so an agent can tell "market has no data" from "service is down"
without failing a real query.

Free discovery tool. When TWZRD_DFLOW_DATA_FIRST_URL points at a Rust server
with the new /status, the response includes prod_key_configured, data_first_available,
and an actionable note (e.g. "set WZRD_DFLOW for full on-chain visibility").
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
scoreNoNormalized velocity score 0.0-1.0.
trendNoVelocity trend: rising | stable | declining.
detailNoHuman-readable status or error detail.
availableNoTrue if the Solana Market data service responded.
velocity_rankNoVelocity rank from dflow signals (higher better).
dflow_velocityNoFull velocity payload when present (rank/trend/score/last_updated). Populated into ReadinessCard.root_provenance.dflow_velocity for WZRD protocol resources.
base_url_configuredNoWhether the market data-service base URL is explicitly configured.
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, indicating safety. The description adds valuable behavioral details: short-timeout hit, reports reachability, and describes response fields (prod_key_configured, data_first_available, note). No contradictions.

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?

Two well-structured paragraphs, front-loaded with the core purpose. Each sentence adds meaningful content—purpose, usage guidance, and response details—with no redundancy.

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-parameter health probe with an existing output schema, the description is fully sufficient. It explains when to use, what it does, and what the response includes, covering all necessary context.

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?

No parameters; schema coverage is 100% by default. The description does not need to add parameter details. Baseline score of 4 is appropriate.

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 states it is a health probe for the Solana Market API data backend, specifies the action 'gate or degrade gracefully', and distinguishes from siblings by advising use 'BEFORE the other get_solana_market_* tools' and explaining the diagnostic differentiation between 'market has no data' and 'service is down'.

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?

Explicitly instructs to use this tool before other market tools to check service reachability, providing clear context. It does not list explicit when-not-to-use scenarios, but the purpose is well-defined.

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

get_solana_market_visibility_mapA
Read-onlyIdempotent
Inspect
Returns the current Solana Market API visibility map (which markets have meaningful
on-chain settlement activity and liquidity signals).

Returns metadata-market count, on-chain-trade-market count, their overlap
(decodable_overlap), coverage_pct, and sample tickers unique to each side.
Free discovery tool. On failure returns a structured {status:"error", kind,
retryable, detail} envelope (call get_solana_market_status to disambiguate).
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint. The description adds value by detailing the returned fields (counts, overlap, coverage_pct, sample tickers) and the structured error envelope with retryable flag. This goes beyond annotations and provides clear behavioral expectations.

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 extremely concise: two sentences covering purpose and return structure, plus a brief note on failure behavior and free discovery. Every sentence adds value without 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?

Given the tool has no parameters and an output schema exists (context indicates true), the description adequately covers the essential aspects: what returns, its free nature, failure mode. It doesn't need to exhaustively list all return fields since output schema exists, but could mention the output schema. Still, it is complete enough for an agent.

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 has zero parameters, so schema coverage is 100% by default. Per guidelines, baseline is 4 for no parameters. The description adds no parameter-specific information, which is appropriate since there are none.

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 states 'Returns the current Solana Market API visibility map' with a specific verb and resource, and explains it shows markets with meaningful on-chain settlement activity and liquidity signals. It distinguishes from sibling tools like get_solana_market_status or get_solana_market_shape by its unique focus on visibility mapping.

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?

The description notes that on failure, one should call get_solana_market_status to disambiguate, providing some error-handling guidance. However, it lacks explicit when-to-use or when-not-to-use instructions compared to alternative tools, meaning an agent may not know when this tool is preferred over others like get_solana_market_onchain_trades_summary.

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

get_top_intel_agentsA
Read-onlyIdempotent
Inspect
Leaderboard of the most active paying agents on the network, each with its
real intel score. The free discovery flywheel: find credible counterparties
by actual on-chain payment activity.

Ranks by the wash-discounted effective_score (single-counterparty fleets are
demoted, not hidden) with a deterministic tiebreaker. Set min_paid_calls to
suppress one-shot wallets and max_days_since_last to suppress dormant ones.
ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of ranked agents to return (default 10).
min_paid_callsNoFilter out wallets with fewer than this many observed paid calls (default 0 = no filter). Use to get credible *active* counterparties, not a raw dump.
max_days_since_lastNoOnly include wallets active within this many days (default null = no recency filter). Use e.g. 14 to get a feed of currently-active agents and exclude dormant/historical payers.

Output Schema

ParametersJSON Schema
NameRequiredDescription
countNoNumber of rows returned.
errorNoPresent only on the degraded path.
agentsNoRanked agent rows, each with intel_score, effective_score, wash fields, and rank.
score_modelNoSelf-describing scoring contract.
score_versionNoScoring contract version.
data_availableNoFalse when the corpus/DB was unavailable.
Behavior5/5

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

Annotations already indicate readOnlyHint and idempotentHint. The description adds valuable behavioral context: ranking by wash-discounted effective_score, demotion of single-counterparty fleets, and deterministic tiebreaker. No contradictions with annotations.

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

Conciseness4/5

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

The description is concise with three sentences, each adding value. It is front-loaded with the main purpose. Slightly repetitive with 'free discovery flywheel' but overall 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?

Given the tool's complexity (ranking, wash-discounting, optional filters) and the existence of an output schema, the description adequately covers the ranking method, behavior with respect to fleets, and how to use filters. No major gaps.

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%, but the description adds meaningful context for min_paid_calls ('get credible *active* counterparties') and max_days_since_last ('e.g. 14 to get a feed of currently-active agents'), augmenting the schema's baseline.

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 states it's a 'Leaderboard of the most active paying agents' and specifies the verb 'find credible counterparties'. It distinguishes from siblings like get_counterparties and score_wallet_for_intel by referencing ranking by wash-discounted effective_score.

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 provides explicit guidance on when to use the min_paid_calls and max_days_since_last parameters, such as 'Use to get credible *active* counterparties'. It implies use for finding credible counterparties but does not explicitly state when not to use or list alternatives.

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

get_x402_directoryA
Read-onlyIdempotent
Inspect

Combined three-bazaar x402 service directory.

Merges PayAI Bazaar, CDP Bazaar (Coinbase), and Agentic Market into a
unified view indexed by payTo wallet with source tags, TWZRD wash overlay,
and cross-chain caveats.

The per-listing wash flag is the differentiator: agentic.market and pay.sh
list services but neither tells an agent which to avoid. TWZRD's wash overlay
covers Solana wallets only; Base/Polygon listings carry 'unknown'.

Query params — flagged_only, limit, source — mirror the HTTP endpoint
GET /v1/intel/x402-directory.
ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax directory rows to return (1-500).
sourceNoSource filter: payai_bazaar, cdp_bazaar, agentic_market, or None for all.
flagged_onlyNoReturn only wash-flagged listings.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

Annotations already provide readOnlyHint=true and idempotentHint=true. The description adds value by explaining the merged nature of the directory, the coverage of TWZRD wash overlay (Solana only), the behavior of the 'flagged_only' filter, and cross-chain caveats. No contradictions with annotations.

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

Conciseness4/5

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

The description is reasonably concise, with the main purpose in the first line. However, it includes detailed explanation of the wash overlay and cross-chain caveats, which is useful but slightly verbose. It is well-structured 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?

Given the presence of an output schema (not shown but indicated), the description adequately covers the tool's purpose, data sources, filtering options, and wash overlay behavior. It is complete for an agent to understand invocation and expected behavior, though it could briefly mention output format.

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%, but the description enriches understanding: it explains that 'flagged_only' returns wash-flagged listings, 'source' filters by specific bazaar (payai_bazaar, cdp_bazaar, agentic_market), and 'limit' controls rows. It also adds context that the wash overlay differentiates listings from different sources.

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 states it is a 'Combined three-bazaar x402 service directory' that merges PayAI Bazaar, CDP Bazaar, and Agentic Market. It specifies the verb 'get' and the resource 'x402 directory', and distinguishes it from sibling tools like 'get_provider_reputation' or 'get_merchant_card' by focusing on directory listing.

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?

The description does not explicitly state when to use this tool versus alternatives. It mentions query parameters and the wash flag differentiator but lacks guidance on when to choose this over other tools like 'score_wallet_for_intel' or 'low_level_preflight'. Usage context is implied but not direct.

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

is_wash_fleetA
Read-onlyIdempotent
Inspect
Free discovery: cheap circular-flow (wash) check for a payer wallet.

Returns the CATEGORICAL classification (clean / self_pay / reciprocal /
self+reciprocal), an is_circular bool, and the observed event counts +
distinct_merchants from the wallet's corpus edges. Use as a fast Sybil/wash
gate before trusting a counterparty.

Fail-open: a DB gap returns classification "unknown". The numeric wash discount
(wash_factor / wash_ratio) and the full renormalized model stay paid — they are
NOT returned here.
ParametersJSON Schema
NameRequiredDescriptionDefault
walletYesSolana wallet public key (32-44 base58 chars) to check for circular-flow / wash behavior.

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNoPresent only on the degraded path.
reasonNoDegraded-path reason, if any.
walletNoThe wallet checked.
is_circularNoTrue if any self-pay or reciprocal (2-cycle) flow was observed.
self_eventsNoEvents where the wallet paid itself.
total_eventsNoTotal observed payment events.
classificationNoCircular-flow class: "clean" | "self_pay" | "reciprocal" | "self+reciprocal" | "unknown".
reciprocal_eventsNoEvents forming a 2-cycle (counterparty also pays this wallet).
distinct_merchantsNoDistinct merchants this wallet paid.
Behavior5/5

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

Annotations (readOnlyHint, idempotentHint) are already present. The description adds critical behavioral details: categorical classification, is_circular bool, event counts, and distinct_merchants. It also describes fail-open behavior ('DB gap returns unknown') and explicitly states what is NOT returned (wash_factor, wash_ratio), enhancing transparency.

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?

Three sentences with no redundancy. First sentence states purpose, second lists outputs, third explains usage and fail-open behavior. Information is front-loaded and every sentence contributes meaningfully.

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 simple single-parameter structure and the availability of an output schema (context signals), the description fully covers purpose, output fields, failure modes, and exclusions. No gaps remain for an agent to misuse 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 covers 100% of parameters (wallet). The description adds value by specifying character length range ('32-44 base58 chars') and reiterating the parameter's purpose within the context of the tool, complementing the schema description.

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 identifies the tool's verb ('check'), resource ('payer wallet'), and specific purpose ('circular-flow/wash detection'). It distinguishes from siblings like 'score_wallet_for_intel' by emphasizing it is a 'fast Sybil/wash gate', setting clear expectations.

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 advises 'Use as a fast Sybil/wash gate before trusting a counterparty', providing clear context. It lacks explicit 'when not to use' mentions but effectively implies its role as a quick preliminary check, differentiating from more comprehensive tools.

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

low_level_preflightA
Read-onlyIdempotent
Inspect
Low-level preflight check. Returns a richer result object including
the upsell path to the paid /v1/intel/trust surface with v6 receipt.

Prefer get_readiness_card for most callers. Use this when you need
max_spend_recommendation_usdc, full_report_hint, or the suggest_full_report
flag. The embedded `readiness_card` carries the SAME full shape as
get_readiness_card_tool (see the outputSchema).
ParametersJSON Schema
NameRequiredDescriptionDefault
price_usdcNoQuoted payment amount in USDC for this intended request.
agent_intentNoWhat the agent intends to do with the purchased response or tool.
buyer_walletNoBuyer's Solana wallet public key; enables buyer-context evidence in scoring.
resource_urlNoCanonical endpoint URL for the resource, if available.
resource_nameNoProvider or listing identifier to evaluate before payment.
seller_walletNoSeller's Solana wallet public key for reputation and spend checks.
marketplace_scoreNoOptional marketplace-provided score (0-100) for blend-in scoring context.

Output Schema

ParametersJSON Schema
NameRequiredDescription
reasonNoDecision-consistent one-line rationale.
decisionNoSpend decision: "allow" | "warn" | "block".
evidenceNoEvidence bullets behind the decision.
trust_scoreNoComposite trust signal, 0-100.
readiness_cardNoThe full ReadinessCard shape (same keys as get_readiness_card_tool).
full_report_hintNoHow to fetch the paid full report.
paid_trust_endpointNoPaid trust endpoint path, if seller identity is known.
suggest_full_reportNoWhether to upsell the paid v6-receipt report.
max_spend_recommendation_usdcNoSuggested per-call spend ceiling for this decision.
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the description focuses on behavioral context beyond safety: it is low-level, returns a richer object with upsell path, and notes the embedded readiness_card shape. This adds useful transparency without contradicting 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?

Three sentences: first sets purpose, second gives usage guidance, third clarifies output structure. Every sentence earns its place with no redundancy or fluff.

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 7 optional parameters, full schema descriptions, output schema present, and rich annotations, the description covers all necessary context: purpose, when to use vs sibling, and what the output contains (including reference to another tool's shape).

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% with each parameter described. The description does not add new parameter-level meaning beyond the existing schema, so baseline 3 is appropriate.

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 states it is a 'low-level preflight check' that returns a 'richer result object' including an upsell path. It distinguishes itself from the sibling 'get_readiness_card' by specifying that the embedded readiness_card has the same shape as that tool.

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?

Explicitly advises to 'Prefer get_readiness_card for most callers' and specifies when to use this tool: when needing max_spend_recommendation_usdc, full_report_hint, or suggest_full_report flag. Provides clear selection criteria.

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

score_wallet_for_intelA
Read-onlyIdempotent
Inspect
Free discovery: real 0-100 intel score for a wallet from its observed x402
payment history across the broader x402 ecosystem (paid calls, distinct
counterparties, volume, recency).

Uses a simple transparent heuristic (volume log + breadth + spend log + recency
decay) — the exact formula is returned inline as `score_model`. Returns
intel_score, the wash-discounted effective_score + wash_flag/wash_factor
(cheap Sybil signal), counts, component breakdown, and a data_available flag.
Malformed pubkeys are rejected cleanly; the failure path returns the same
shape as success.

Sourced from the cross-facilitator corpus via the public Rust HTTP endpoint
GET /v1/agents/{wallet}/x402 (backed by the x402_solana_payer_agg matview).
For the full corpus-breadth renormalized model (intel_renorm_v1: score_raw,
confidence, breadth_factor, wash_factor) + signed portable v6 receipt, pay for
the HTTP surface: GET /v1/intel/trust/{wallet} (0.05 USDC).
ParametersJSON Schema
NameRequiredDescriptionDefault
walletYesSolana wallet public key (32-44 base58 chars) to score using x402 payment-history intelligence.

Output Schema

ParametersJSON Schema
NameRequiredDescription
roleNoObserved role: "payer" | "merchant" | "both" | "unknown".
basisNoHuman-readable basis line.
errorNoPresent only on the degraded path.
walletNoThe scored Solana wallet.
last_seenNoISO timestamp of last observed activity.
wash_flagNo"clean" | "single_counterparty" | "unknown".
first_seenNoISO timestamp of first observed activity.
paid_callsNoObserved x402 paid calls SENT (payer side).
total_usdcNoTotal observed USDC sent.
intel_scoreNoRaw activity-reputation score, 0-100.
score_modelNoSelf-describing scoring contract (scale, formula, component maxes, recency tiers).
wash_factorNoMultiplier applied to intel_score for effective_score.
score_versionNoScoring contract version.
data_availableNoFalse when the corpus could not be observed (vs genuinely inactive).
effective_scoreNoWash-discounted score (single-counterparty fleets demoted).
score_componentsNoPer-component breakdown: volume, breadth, spend, recency_factor.
payments_receivedNoObserved x402 paid calls RECEIVED (merchant side).
total_usdc_receivedNoTotal observed USDC received (merchant side).
is_single_counterpartyNoTrue if all payments went to one counterparty (Sybil signal).
distinct_counterpartiesNoDistinct counterparties (merchants paid + payers received from).
Behavior5/5

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

Annotations already indicate readOnlyHint and idempotentHint; description adds significant behavioral details: heuristic formula, output fields, error handling (malformed pubkeys), data source, and alternative paid endpoint. No contradiction.

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?

Concise yet comprehensive: covers purpose, heuristic, output, error handling, data source, and alternative in a well-structured paragraph. No redundant 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?

Given the tool's complexity (scoring algorithm), description fully covers input, output, model details, failure path, and data provenance. Output schema exists, so return values are documented.

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?

Single parameter 'wallet' has a clear schema description (Solana public key). Description adds context about wallet format and scoring logic, enriching the schema coverage which is 100%.

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?

Description clearly states the tool returns a 0-100 intel score for a wallet based on x402 payment history. It distinguishes from sibling tools by focusing on a single wallet and describing the heuristic formula explicitly.

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?

Implies usage for free wallet discovery but does not explicitly contrast with sibling tools like score_wallets_batch or compare_wallets. Mentions a paid alternative for more detail, providing some context.

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

score_wallets_batchA
Read-onlyIdempotent
Inspect
Free discovery: score up to 25 wallets in a single call (each via the same
transparent model as score_wallet_for_intel). Convenience for triaging a set of
candidate counterparties at once; `requested`/`capped` disclose any truncation.
ParametersJSON Schema
NameRequiredDescriptionDefault
walletsYesList of Solana wallet pubkeys to score in one call (hard cap 25; extras are dropped).

Output Schema

ParametersJSON Schema
NameRequiredDescription
countNoNumber of wallets scored.
errorNoPresent only on the degraded path.
cappedNoTrue if the request exceeded max_per_call.
resultsNoPer-wallet score objects (same shape as score_wallet_for_intel).
requestedNoNumber of valid wallets requested.
max_per_callNoHard cap on wallets per batch call.
Behavior4/5

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

Annotations already indicate readOnlyHint=true and idempotentHint=true. The description adds that it uses the same transparent model as score_wallet_for_intel and that requested/capped disclose any truncation. This provides behavioral context beyond annotations, though it could mention rate limits or nothing further is needed.

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?

Two concise sentences with no wasted words. The first sentence states the core purpose and capacity, the second adds context on truncation. Highly 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?

Given the tool is a batch version of a single-wallet tool and there is an output schema, the description covers all essential aspects: purpose, capacity, model, and truncation behavior. No gaps for selection and 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?

The schema parameter 'wallets' is fully described (100% coverage) including hard cap 25 and that extras are dropped. The description reinforces this and adds context on truncation disclosure and model, adding value 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 clearly states the tool scores up to 25 wallets in a single call, using the same model as score_wallet_for_intel, and is a convenience for triaging candidate counterparties. This differentiates it from sibling tools like score_wallet_for_intel (single wallet) and compare_wallets (comparison).

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 explicitly says it's for 'triaging a set of candidate counterparties at once' and mentions 'Free discovery' implying open use. It doesn't explicitly state when not to use it versus the single-wallet variant, but the batch nature and capacity are clear.

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

twzrd_demo_gateA
Read-onlyIdempotent
Inspect
Runnable, no-spend proof of the TWZRD buyer-side x402 trust gate - discoverable
at runtime with no install and no human.

Returns a deterministic transcript showing the gate's behaviour on a fixture
counterparty: the block path ABORTS and a wallet/signer is never contacted, the
allow path would proceed, and ok=true. Spends no USDC, contacts no wallet.

This call surfaces an EXTERNAL_RUN *candidate* in TWZRD's honest attribution
ledger (it carries a non-internal integration id + your run_id, tagged with your
real inbound IP). A candidate is NOT an EXTERNAL_RUN: proof still requires a
non-VPS source_ip and matching your run_id to your own transcript via
scripts/count_attributed_runs.py --confirm. See the returned not_external_run_proof.
ParametersJSON Schema
NameRequiredDescriptionDefault
run_idNoOptional caller-supplied run id to correlate with your transcript. Omit to have one generated for this call.
integrationNoStable label for your integration (e.g. your agent/app name). Echo it plus the returned run_id in your own transcript so a run can later be confirmed. Defaults to a generic MCP-discovery label.mcp-agent-discovery

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior5/5

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

Annotations declare readOnlyHint=true and idempotentHint=true, and the description reinforces this by stating it spends no USDC and contacts no wallet. It adds behavioral context beyond annotations, explaining the internal gate behavior (block path aborts, allow path proceeds) and the attribution ledger mechanics.

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 fairly long but well-structured: it opens with the core purpose, then explains behavior and limitations. Every sentence adds necessary detail for a complex tool. A slight reduction could improve conciseness, but it 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?

Given the complexity of the tool (demo gate with attribution) and the presence of an output schema, the description covers all essential aspects: what it does, what it doesn't, how it fits into the system, and what users must do for full verification. It is complete for the intended use.

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% (both parameters have descriptions), so baseline is 3. The description adds value by explaining the purpose of each parameter in the broader proof process: run_id for correlation and integration for labeling, along with how they contribute to later 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?

The description clearly states it is a 'runnable, no-spend proof of the TWZRD buyer-side x402 trust gate' that returns a deterministic transcript. It distinguishes from sibling tools by specifying it does not contact wallets or spend USDC, serving as a demo gate rather than a production action.

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 description explicitly explains when to use this tool (to test the gate without spending) and what it does not do (no wallet contact, no USDC spent). It also provides guidance on limitations (it's a candidate, not a full external run) and alternative steps for full proof, such as using a non-VPS source_ip and the confirmation script.

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

twzrd_watch_addAInspect

Register a re-call watch on a seller wallet.

After registration, TWZRD will proactively re-check the seller's trust intel
when `recheck_after_unix` elapses and POST a notification to your webhook_url
if the score/decision materially changes.

Returns the watch row with the computed recheck_after_unix timestamp so your
agent knows exactly when to expect a re-call or proactively re-check itself.
ParametersJSON Schema
NameRequiredDescriptionDefault
webhook_urlNoOptional HTTPS URL to POST when intel goes stale.
payer_walletYesYour agent wallet address (the watcher).
seller_walletYesThe seller/merchant wallet to watch.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

Annotations provide non-destructive hint, but description adds valuable behavioral details: proactive re-checking, notification posting, and return of recheck_after_unix timestamp. No contradictions.

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?

Three sentences, front-loaded with main purpose, each sentence adds value without redundancy. Highly efficient.

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?

Covers purpose, behavior, and return value. Lacks details on error conditions, prerequisites, or behavior without webhook_url, but sufficient for most use cases given existing annotations.

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 has 100% description coverage, so baseline is 3. Description adds minimal context beyond schema (e.g., webhook_url purpose), not significantly enhancing 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 clearly states the tool registers a re-call watch on a seller wallet, which is specific and distinct from sibling tools like twzrd_watch_list and twzrd_watch_remove.

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?

Usage is implied (monitor a seller wallet), but no explicit guidance on when to use this vs alternatives, nor when not to use it. The description lacks decision-making context.

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

twzrd_watch_listA
Read-onlyIdempotent
Inspect

List active re-call watches for your agent wallet.

Each watch shows the seller, current score/decision, and recheck_after_unix
timestamp — the exact signal for when to re-call.
ParametersJSON Schema
NameRequiredDescriptionDefault
payer_walletYesYour agent wallet address.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior5/5

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

The description adds significant behavioral context beyond the annotations: it details the output structure (seller, score/decision, timestamp) and emphasizes the timestamp's role as a re-call signal. No contradiction with readOnlyHint/idempotentHint.

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?

Two concise sentences with no redundant information. Front-loads the main action and then details output features efficiently.

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?

For a simple listing tool with single parameter and an output schema, the description covers the essentials. It could mention potential absence of watches or pagination, but given the low complexity, it is sufficiently complete.

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 parameter description in the schema ('Your agent wallet address.') is clear. The tool description adds minimal extra meaning for the parameter beyond repeating its purpose in context.

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 states the tool lists active re-call watches for the agent wallet and specifies the output fields (seller, score/decision, recheck_after_unix). It effectively distinguishes from sibling tools twzrd_watch_add and twzrd_watch_remove.

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 indicates the tool is for listing watches of the agent's wallet, implying use for monitoring. While it doesn't explicitly state when not to use, the sibling tool names provide context, and the link to 're-call signals' gives clear guidance.

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

twzrd_watch_removeAInspect

Deactivate a re-call watch by ID. payer_wallet must match the owner.

ParametersJSON Schema
NameRequiredDescriptionDefault
watch_idYesWatch ID from twzrd_watch_list.
payer_walletYesYour agent wallet address (must match the watch owner).

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

Description says 'Deactivate' (non-destructive) which aligns with destructiveHint=false. Adds context about ownership requirement beyond annotations.

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

Conciseness5/5

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

Extremely concise: one sentence plus a condition, no fluff, front-loaded with action and resource.

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?

Complete for a simple tool with 2 params, full schema coverage, output schema, and sibling context. No missing information.

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 parameter descriptions are clear. Description restates the payer_wallet condition but doesn't add new meaning beyond 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?

Clearly states the action 'Deactivate a re-call watch by ID' and the resource, distinguishing it from siblings like twzrd_watch_add (add) and twzrd_watch_list (list).

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 explicit condition 'payer_wallet must match the owner' which guides correct usage, though does not mention when not to use or alternatives.

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

verify_receiptA
Read-onlyIdempotent
Inspect
Free utility: offline-verify a portable v5/v6 trust receipt — the "after you pay"
half of the loop.

Recomputes the Keccak256 leaf from the receipt's preimage (tamper-evidence) AND
verifies the Ed25519 signature against the published TWZRD receipt-signing key
(authenticity). Returns valid/leaf_valid/signature_valid plus the recomputed
leaf and any errors. Pure and offline — no DB, no network, no payment.

Pass the entire PaidReceipt object you were issued. Trust is anchored on the
published key (or expected_pubkey), NOT on whatever pubkey the receipt carries.

max_age_seconds: optional freshness gate (replay protection). Same semantics
as the Python library verify_paid_receipt(..., max_age_seconds=...) and the
standalone CLI --max-age.
ParametersJSON Schema
NameRequiredDescriptionDefault
receiptYesThe full v6 PaidReceipt object (leaf + preimage + signature + signing_pubkey) returned by the paid /v1/intel/trust surface.
expected_pubkeyNoOverride the trusted signing pubkey to verify against (default: the published TWZRD receipt key).
max_age_secondsNoIf > 0, reject the receipt if its preimage.timestamp_unix is older than this many seconds (replay/freshness protection, same as CLI --max-age and library).
require_signatureNoRequire and verify the Ed25519 signature (default true). Set false only to inspect an unsigned preview.

Output Schema

ParametersJSON Schema
NameRequiredDescription
validNoTrue iff the leaf recomputes AND the signature verifies against the trusted key.
domainNoThe V5 domain detected in the preimage.
errorsNoIssues found; empty on success.
leaf_validNoTrue iff the Keccak256 leaf recomputes from the preimage.
provided_leafNoThe normalized leaf supplied in the receipt.
signing_pubkeyNoThe pubkey carried by the receipt.
trusted_pubkeyNoThe published key authenticity was checked against.
recomputed_leafNoThe leaf recomputed from the preimage (0x...).
signature_validNoTrue iff the Ed25519 signature verifies; None if the signature check was skipped.
signature_checkedNoWhether the signature was checked (require_signature).
Behavior5/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true. The description reinforces this by stating 'Pure and offline — no DB, no network, no payment.' It also details the verification steps and trust model, providing full transparency beyond annotations.

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

Conciseness5/5

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

The description is extremely concise and well-structured. It opens with the core purpose, lists key features, and details parameters in a clear, front-loaded manner. Every sentence adds necessary information without repetition.

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 tool's complexity (cryptographic verification), the description is comprehensive. It covers the algorithm (Keccak256, Ed25519), trust model, all parameters, and the pure/offline nature. The presence of an output schema means return values need not be described.

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 all parameters. However, the description adds meaningful context: max_age_seconds is explained as 'freshness gate (replay protection)', require_signature for inspecting unsigned preview, and expected_pubkey for key override. This adds value 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 clearly states the tool is a free utility to offline-verify a portable v5/v6 trust receipt. It specifies the core operations: recomputing Keccak256 leaf and verifying Ed25519 signature. This is distinct from sibling tools that deal with market data, wallet scoring, etc.

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 instructs to pass the entire PaidReceipt object and explains optional parameters like expected_pubkey and max_age_seconds. It clarifies that trust is anchored on the published key, not the receipt's pubkey. While not explicitly contrasting with alternatives, the purpose is so specific that usage is clear.

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

verify_root_inputsC
Read-onlyIdempotent
Inspect

Independent root verification (see tools/root_verifier.py for the recompute logic).

ParametersJSON Schema
NameRequiredDescriptionDefault
root_seqNoSpecific root sequence to verify. If omitted, best-effort resolution via resource metadata or latest.
resource_nameNoWZRD protocol resource (deposit/claim/settle etc.) for auto-detection and seq hints.
seller_walletNoSeller wallet for WZRD protocol resource detection.

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNoError message on the ERROR path; null on PASS/FAIL.
statusNo"PASS" = recomputed GLOBAL_V5 leaves + dataset_hash + sorted-pair root match the published values. "FAIL" = mismatch (do not trust the root). "ERROR" = could not run (fetch failure / missing data).
root_seqNoRoot sequence number that was verified.
leaf_countNoNumber of leaves (users) in the verified root.
onchain_matchNoAlways null: this tool does NOT read Solana/the AO program. Use server_consistent for the recompute result; do not gate on-chain actions on this field expecting a chain anchor.
leaf_hash_matchNoTrue iff every server-provided leaf_hash matches the locally recomputed value.
recomputed_rootNoIndependently recomputed sorted-pair keccak256 merkle root (hex).
server_consistentNoTrue iff the recomputed root/dataset_hash matches the value the SERVER published alongside its own leaves (self-consistency). NOT an on-chain check. Null when not comparable.
recomputed_dataset_hashNoIndependently recomputed keccak-concat dataset_hash (hex).
Behavior3/5

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

Annotations already declare readOnlyHint and idempotentHint, so the description adds little behavioral context. The reference to recompute logic hints at internal processing but doesn't disclose side effects or constraints. Adequate but not insightful.

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?

Extremely concise with one sentence and a code reference. No wasted words, but may be too terse for clarity.

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

Completeness3/5

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

Given the presence of annotations, a robust output schema (not shown but exists), and fully described parameters, the description meets minimal needs but does not explain the concept of 'root verification' or its role among siblings.

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?

The input schema already provides full descriptions for all three parameters (100% coverage). The description adds minimal extra meaning beyond the schema, so baseline score of 3 is appropriate.

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

Purpose3/5

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

The description states 'Independent root verification' which gives a verb and a vague resource, but 'root' is unclear and not distinguished from sibling tool 'verify_receipt'. It lacks specificity on what is being verified.

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 guidance on when to use this tool versus alternatives like verify_receipt or other sibling tools. No context on prerequisites or exclusions.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.