Wicked MCP
Server Details
Whole Wicked suite for agents: market data, SEC filings, wallet checks, risk, identity, memory.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- WickedAPI/wicked-mcp
- GitHub Stars
- 0
- Server Listing
- Wicked MCP server
TDQS
Score is being calculated.
Available Tools
90 toolsatrCInspect
[Trading Data API] Average True Range (Wilder's) + volatility-regime classification (low/normal/high/extreme by historical percentile) — Average True Range (Wilder's) + volatility-regime classification (low/normal/high/extreme by historical percentile). Crypto or stocks.
Example: /v1/atr?symbol=BTC&timeframe=1h&period=14
| Name | Required | Description | Default |
|---|---|---|---|
| class | No | Optional. stock|crypto for non-curated symbols. | |
| period | No | Optional. ATR period (default 14). | |
| symbol | Yes | Required. e.g. BTC, NVDA, SPY (or any with &class=). | |
| timeframe | No | Optional. 1m,5m,15m,30m,1h,2h,4h,6h,12h,1D,1W (default 1h). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It implies a read-only computation and gives the endpoint shape, but discloses nothing about authentication, rate limits, caching, or what exactly is returned (ATR value, regime label, percentile).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is front-loaded and useful, but the leading phrase is duplicated verbatim after the em dash, which is pure padding. The example is helpful; the redundancy costs a point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should explain the return shape, but it never says what a caller receives (ATR value, regime label, percentile band). For a quantitative endpoint whose whole value is the regime classification, that gap is significant.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters (symbol, period, timeframe, class) are already documented in the schema with defaults and formats. The description's example restates symbol/timeframe/period without adding new semantics, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific indicator (Wilder's Average True Range) plus an added computation (volatility-regime classification by historical percentile), and scopes it to crypto or stocks. It is clear what the tool produces, but it never distinguishes itself from the sibling 'volatility' tool, which likely overlaps heavily.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to reach for this tool versus alternatives such as volatility, ohlcv, or price, nor any prerequisite or context guidance. The only guidance is an example URL, which shows syntax rather than selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
basisBInspect
[Trading Data API] Spot-vs-perp basis (premium %) with funding-implied annualized carry — Spot-vs-perp basis (premium %) with funding-implied annualized carry. Spot from Coinbase; perp marks from Binance + Bybit.
Example: /v1/basis?symbol=BTC
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Required. Base crypto symbol (e.g. BTC). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does add real provenance value: spot from Coinbase, perp marks from Binance + Bybit. It does not mention auth needs, rate limits, or freshness/latency characteristics for a market-data metric.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core metric sentence is front-loaded and useful, but the description is literally duplicated before the em dash, which is pure waste. The example line earns its place by showing the call shape.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description should describe the return shape; it names the quantities (basis/premium %, annualized carry) and data sources, which covers the essentials. It omits units, formatting, and edge cases such as missing perp marks.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter and schema coverage is 100%, so the schema already explains `symbol` fully. The example (`?symbol=BTC`) reinforces usage but adds no semantics the schema doesn't already carry; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific computed metric: spot-vs-perp basis (premium %) with funding-implied annualized carry. An agent can distinguish this from plain price or funding_oi lookups. However it offers no explicit sibling differentiation for closely related tools like funding_oi or orderbook.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or when-not-to-use guidance, and no named alternatives. The only usage signal is the query example, which shows syntax rather than the condition under which this tool beats its siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
broker_sync_balancesCInspect
[Broker Sync API] Cash & buying power per connected account (normalized). — Cash & buying power per connected account (normalized).
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | Yes | Required. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, and it discloses nothing: not whether the call is read-only or triggers a sync/mutation, not auth requirements, not rate limits, not data freshness or normalization semantics despite using the word 'normalized'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The body is a verbatim duplication of the same sentence twice, with no front-loaded verb and no additional information in the second copy. That is redundancy rather than concision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description is the only source of behavioral and return-shape information, and it provides almost none — not the response structure, not whether results are paginated or per-account keyed. Only the general subject matter is conveyed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is reported at 100% for the single user_id parameter, so the schema does the documentation work. The description adds no meaning about user_id scope or how it relates to connected accounts, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource it concerns (cash & buying power per connected account, normalized), which is more specific than the bare tool name. However, it supplies no verb — an agent cannot tell whether this fetches, computes, or pushes/syncs balances — and it does nothing to separate this from siblings like broker_sync_positions or broker_sync_transactions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to call this versus the other broker_sync_* tools, no prerequisites, and no exclusions. The agent is left to infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
broker_sync_connectionsCInspect
[Broker Sync API] List a user's connected brokerage accounts (normalized). — List a user's connected brokerage accounts (normalized).
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | Yes | Required. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, yet it only implies read-only via the verb "List." It says nothing about authentication requirements, pagination/result size, rate limits, or what "normalized" entails, all of which matter for a broker-integration read.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The content is short, but the description literally duplicates itself: the bracketed tag line and the trailing sentence are the same text repeated verbatim. That is pure redundancy rather than front-loaded structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, read-only list tool with no output schema and no annotations, the description covers the essential "what" adequately. It is minimally sufficient, but omits return shape, pagination, and the meaning of "normalized," which the agent would need for correct interpretation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single user_id parameter, so the schema does the documentation work and the baseline of 3 applies. The description's phrase "a user's" lightly reinforces that user_id scopes the result but adds no format or constraint detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource ("List a user's connected brokerage accounts") and the "(normalized)" qualifier hints at the data shape. It is clear what the tool does and implicitly distinct from siblings like broker_sync_positions or broker_sync_balances, though it never explicitly names those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of the sibling tools it might be confused with (positions, balances, transactions, register_user). The agent must infer selection from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
broker_sync_positionsCInspect
[Broker Sync API] Real positions across all of a user's connected brokerages, one normalized schema, stamped as_of. — Real positions across all of a user's connected brokerages, one normalized schema, stamped as_of.
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | Yes | Required. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full behavioral burden, and it only discloses that data is normalized and stamped with an as_of timestamp. It says nothing about authentication to brokerages, whether cached or live data is returned, latency, rate limits, or what happens when a brokerage connection is stale or broken.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is the same sentence duplicated verbatim around an em dash, which doubles length without adding information. Half the text is pure waste, and no structure is used to front-load anything beyond the scope claim.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, single-parameter aggregation tool with no output schema and no annotations, the definition gives the minimum viable picture: it reads positions across brokerages in a normalized form. Missing details on broker connection state, failure behavior, and result shape keep it from being complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with a single user_id parameter, so the schema already documents the input. The description adds no format, ID-type, or scoping detail for user_id, which is the correct baseline 3 for a fully documented single-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The stance 'Real positions across all of a user's connected brokerages, one normalized schema, stamped as_of' states a specific verb and resource and implicitly distinguishes it from siblings like broker_sync_balances and broker_sync_transactions by scope and normal form. It is clear but never names an alternative sibling explicitly, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no routing to broker_sync_balances or broker_sync_transactions when the agent wants a different view of the same account. The agent must infer scope from the phrase 'positions' alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
broker_sync_prop_firmsCInspect
[Broker Sync API] Prop-firm platform integration registry — live-verified methods (Topstep ProjectX API, FTMO MatchTrader bridge) and connection status. — Prop-firm platform integration registry — live-verified methods (Topstep ProjectX API, FTMO MatchTrader bridge) and connection status.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It does not say whether this is a read-only registry lookup or a mutation/sync operation, nor whether it requires auth or hits a live broker endpoint — despite 'live-verified methods' hinting at network behavior worth explaining.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is the same sentence repeated verbatim twice, which is pure redundancy rather than conciseness. One sentence would have been fine; the duplication is noise an agent must parse through.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description should at least say what the call returns and whether it mutates anything. Instead it only labels the resource, leaving the agent unable to predict the response shape or side effects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters (empty object schema), so there are no parameter semantics to document. Baseline 4 applies; the description correctly implies a no-argument call, though it adds nothing further.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource — a prop-firm platform integration registry with live-verified methods (Topstep ProjectX, FTMO MatchTrader) and connection status — but it is a noun phrase with no verb, so it never states what the tool actually does. The name suggests a sync action while the text describes a registry, leaving the operation ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no reference to any of the many sibling tools it could be confused with (broker_sync_connections, protocol_health_sync_universe, etc.). An agent would have to guess when this registry lookup is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
broker_sync_register_userCInspect
[Broker Sync API] Register a user with SnapTrade and get a brokerage connection-portal URL. — Register a user with SnapTrade and get a brokerage connection-portal URL.
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | Yes | Your application's stable identifier for this end user. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It usefully reveals that the call returns a connection-portal URL and that registration happens against an external service (SnapTrade), but it omits idempotency behavior (what happens if user_id already exists), authentication/permission requirements, and whether registration creates lasting side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The sentence is duplicated verbatim after an em dash, wasting roughly half the text with no added information. The API prefix is front-loaded, but the repetition signals careless authoring rather than deliberate structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With only one parameter and no output schema, the description does cover the essential return value (portal URL), which is the main thing the agent needs. However, it leaves out registration semantics such as duplicate handling and prerequisites relative to sibling broker_sync tools, so it is adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single user_id parameter, which the schema already documents as the application's stable identifier. The description adds no additional semantics about the parameter's format, stability guarantees, or reuse across calls, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Register) and resource (a user with SnapTrade) plus the outcome (a brokerage connection-portal URL), so the agent knows exactly what the call produces. It does not, however, distinguish itself from sibling tools like broker_sync_connections or broker_sync_positions, which an agent might reasonably confuse with the registration step.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, no mention that registration is a prerequisite for the other broker_sync_* tools, and no exclusion criteria. The agent must infer the ordering from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
broker_sync_transactionsCInspect
[Broker Sync API] Transaction/activity history across brokerages. — Transaction/activity history across brokerages.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Optional. YYYY-MM-DD. | |
| from | No | Optional. YYYY-MM-DD. | |
| user_id | Yes | Required. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, and it discloses almost nothing. It does not state that this is a read-only lookup, whether results are paginated or capped, what date-range defaults apply when 'from'/'to' are omitted, or whether authentication is per-user. Only the implicit 'history' framing hints that it is non-destructive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single phrase repeated verbatim after an em dash, which is pure duplication rather than added information. It is short but wasteful, and the front-loaded tag '[Broker Sync API]' conveys namespace rather than capability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description must explain both the safety profile and the return shape, and it explains neither. For a three-parameter data-retrieval tool the agent is left guessing about pagination, date-range defaults, and result structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents user_id (required) and the optional from/to date fields with their YYYY-MM-DD format. The description adds no additional meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a resource (transaction/activity history) and a scope (across brokerages), so an agent can infer what it retrieves. However, it lacks a specific verb and does nothing to distinguish it from close siblings like broker_sync_positions or broker_sync_balances, which are also brokerage-scoped data lookups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus alternatives, no prerequisites, and no exclusions. The agent must infer usage purely from the name and the loosely stated scope.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
chain_balanceInspect
[Trading Data API] Native-token balance (ETH/POL) for any address or ENS name on Ethereum, Base, Arbitrum, Optimism or Polygon — Native-token balance (ETH/POL) for any address or ENS name on Ethereum, Base, Arbitrum, Optimism or Polygon. Live from the chain over redundant RPCs — wei plus formatted units.
Example: /v1/chain-balance?address=vitalik.eth&chain=ethereum
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Optional. ethereum, base, arbitrum, optimism, polygon (default base). | |
| address | Yes | Required. A 0x address or an ENS name (e.g. vitalik.eth). |
chain_blockInspect
[Trading Data API] Block header lookup: number, hash, timestamp, miner, tx count, gas used/limit and base fee — Block header lookup: number, hash, timestamp, miner, tx count, gas used/limit and base fee. Latest by default, or any block number, safe or finalized.
Example: /v1/chain-block?chain=base&block=latest
| Name | Required | Description | Default |
|---|---|---|---|
| block | No | Optional. A block number, "latest", "safe" or "finalized" (default latest). | |
| chain | No | Optional. ethereum, base, arbitrum, optimism, polygon (default base). |
chain_ensInspect
[Trading Data API] ENS lookup on Ethereum mainnet in either direction: name to address, or address to primary name. — ENS lookup on Ethereum mainnet in either direction: name to address, or address to primary name.
Example: /v1/chain-ens?name=vitalik.eth
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Optional. An ENS name to resolve (e.g. vitalik.eth). Either name or address is required. | |
| address | No | Optional. An address to reverse-resolve to its primary ENS name. |
chain_nonceInspect
[Trading Data API] Transaction count (nonce) for an address or ENS name: confirmed nonce plus pending nonce, so an agent can sign the next transaction without a collision. — Transaction count (nonce) for an address or ENS name: confirmed nonce plus pending nonce, so an agent can sign the next transaction without a collision.
Example: /v1/chain-nonce?address=0xB71C06dAC44c91bc997FB84C247DeEF676F4A9f6&chain=base
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Optional. ethereum, base, arbitrum, optimism, polygon (default base). | |
| address | Yes | Required. A 0x address or an ENS name. |
chain_token_balanceInspect
[Trading Data API] ERC-20 token balance for an address or ENS name, with token symbol and decimals read from the contract — ERC-20 token balance for an address or ENS name, with token symbol and decimals read from the contract. Ethereum, Base, Arbitrum, Optimism, Polygon.
Example: /v1/chain-token-balance?address=0xB71C06dAC44c91bc997FB84C247DeEF676F4A9f6&token=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913&chain=base
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Optional. ethereum, base, arbitrum, optimism, polygon (default base). | |
| token | Yes | Required. ERC-20 contract address. | |
| address | Yes | Required. Holder: a 0x address or an ENS name. |
chain_txInspect
[Trading Data API] Transaction lookup by hash: status (success/reverted/pending), block, from/to, value, nonce, gas used, effective gas price and log count. — Transaction lookup by hash: status (success/reverted/pending), block, from/to, value, nonce, gas used, effective gas price and log count.
Example: /v1/chain-tx?hash=0x...&chain=base
| Name | Required | Description | Default |
|---|---|---|---|
| hash | Yes | Required. 0x-prefixed 32-byte transaction hash. | |
| chain | No | Optional. ethereum, base, arbitrum, optimism, polygon (default base). |
defi_tvlCInspect
[Trading Data API] DefiLlama data: TVL by chain, stablecoin circulating supply, or yield pools. — DefiLlama data: TVL by chain, stablecoin circulating supply, or yield pools.
Example: /v1/defi-tvl?view=chains
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | Optional. chains (default), stablecoins, or yields. | |
| chain | No | Optional (yields view). Filter pools by chain, e.g. Ethereum. | |
| limit | No | Optional. Rows to return (default 20, max 100). | |
| project | No | Optional (yields view). Filter pools by project, e.g. aave-v3. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden and largely fails it. It doesn't state that this is a read-only operation, whether auth/keys are required, rate limits, or freshness of the DefiLlama data. Only the implicit read nature can be inferred from the data-retrieval framing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is repeated verbatim after an em dash ('— DefiLlama data: TVL by chain...'), which is pure duplication and wastes the opening line's value. The example is useful, but the redundant copy is a clear structural flaw and the definition is not front-loaded with an action verb.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-required-param data tool with 100% schema coverage but no output schema and no annotations, the description gives adequate orientation (what data categories exist) but omits response shape, pagination behavior of `limit`, and any auth or safety notes. It is minimally sufficient but leaves real gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the four parameters (view, chain, limit, project) are already fully documented in the schema. The description's mention of the three data categories loosely maps to the `view` values but adds no syntax or format detail beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific resource and its scope: DefiLlama TVL by chain, stablecoin circulating supply, and yield pools. An agent can identify this as a multi-view DeFi data fetch tool and no sibling (gas, rates, protocol_health_*) covers the same resource. It stops short of a clear verb like 'retrieve', but the resource specificity is strong.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use, when-not-to-use, or alternative routing. The only usage hint is the inline example `/v1/defi-tvl?view=chains`, which shows one call form but doesn't tell the agent when this tool is the right choice versus siblings like protocol_health_scoreboard or market_overview.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
earnings_calendarCInspect
[Trading Data API] US equity earnings announcement calendar: report date, before/after-market timing, analyst EPS estimate + count, market cap, and prior-year actual EPS — US equity earnings announcement calendar: report date, before/after-market timing, analyst EPS estimate + count, market cap, and prior-year actual EPS. Sourced live from Nasdaq's public calendar.
Example: /v1/earnings-calendar?date=2026-07-14&days=3
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Optional. Start date YYYY-MM-DD (default: today). | |
| days | No | Optional. Days to scan forward from date (default 1, max 7). | |
| symbol | No | Optional. Filter to one ticker within the scanned range. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden: it discloses the upstream source ('Sourced live from Nasdaq's public calendar') and the exact payload fields, which is genuinely useful. It omits any mention of auth requirements, rate limits, or freshness/latency guarantees in spite of advertising a 'live' feed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is duplicated verbatim ('...US equity earnings announcement calendar: report date, before/after-market timing...'), wasting a large share of the text. The useful content (source, example) is present, but the repetition is a clear structural defect.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only fetch with full schema coverage and no output schema, the description is adequate: it tells the agent the domain, the source, and the returned fields. It falls short by never disambiguating against the similar macro_calendar sibling or noting any operational constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three optional parameters (date, days, symbol) are already documented with defaults and bounds in the schema. The description adds nothing beyond echoing date/days in the example URL, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource ('US equity earnings announcement calendar') and enumerates the returned data (report date, timing, EPS estimate + count, market cap, prior-year actual EPS), so an agent knows exactly what it fetches. It does not, however, distinguish itself from the sibling macro_calendar, leaving the boundary between the two calendars unstated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no alternative named — notably macro_calendar sits in the sibling list and is never contrasted. The only hint of usage is the embedded example URL, which shows syntax rather than selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
filings_8k_eventsCInspect
[Filings Oracle] 8-K material-event alerts classified into categories an agent can act on: earnings, exec_change, material_agreement, acquisition_disposition, bankruptcy, delisting, cybersecurity, auditor_or_restatement, control_change, financing, restructuring_impairment, shareholder_vote, governance, reg_fd, other_events — 8-K material-event alerts classified into categories an agent can act on: earnings, exec_change, material_agreement, acquisition_disposition, bankruptcy, delisting, cybersecurity, auditor_or_restatement, control_change, financing, restructuring_impairment, shareholder_vote, governance, reg_fd, other_events. Each event lists every item with its official label.
Example: /v1/8k-events?category=bankruptcy&days=7
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Optional. Look back N days (default 2, max 90). Ignored when since is set. | |
| wait | No | Optional. With since: long-poll up to N seconds (max 25). | |
| limit | No | Optional. Max rows (default 50, max 200). | |
| since | No | Optional. Cursor from meta.cursor of a previous response. | |
| ticker | No | Optional. Ticker symbol. | |
| category | No | Optional. One of the category names above. Default all. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, yet it says nothing about auth, rate limits, delivery latency, or pagination beyond what the schema already encodes. It does disclose output shape ('each event lists every item with its official label'), which is modestly useful given there is no output schema, but the safety and freshness profile is undocumented.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The opening sentence is repeated verbatim a second time, wasting roughly half the description on duplication. The category list is front-loaded well, but the copy-paste block violates any reasonable conciseness bar.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter tool with no output schema, the description does cover the category vocabulary and gives a concrete query example, which is the essential missing piece. However, it omits any indication of how results relate to the other filings tools and provides no return-structure detail beyond a single clause.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is nominally 100%, but the category parameter has no enum in the schema and instead says 'One of the category names above' — the description supplies the actual 15 allowed values, without which the schema reference would be unresolvable. That is genuine added meaning beyond the structured fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource (8-K material-event alerts) and enumerates the 15 actionable categories, so an agent can tell it retrieves classified 8-K events rather than raw filings. It does not, however, contrast itself with siblings like filings_search or filings_latest_preview, so sibling differentiation is absent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance, no when-not-to-use, and no named alternative among the filings_* siblings. The example URL hints at a bankruptcy-based query but does not tell the agent when this tool is preferable to filings_search or filings_filing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
filings_filingBInspect
[Filings Oracle] One filing by accession number, with its parsed items or insider transactions and the SEC document link — One filing by accession number, with its parsed items or insider transactions and the SEC document link.
Example: /v1/filing?accession=0001731122-26-001341
| Name | Required | Description | Default |
|---|---|---|---|
| accession | Yes | Required. SEC accession number, e.g. 0001731122-26-001341. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose the payload shape (parsed items versus insider transactions, plus the document link), which is real behavioral value, but it says nothing about auth requirements, rate limits, or not-found/error behavior for an ID lookup.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Sized appropriately overall and front-loaded with the scope, but the main sentence is duplicated verbatim, which is pure waste and makes the opening read as repetition rather than emphasis.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, read-only lookup with no output schema, the description covers the resource, the identifier, the returned content, and a concrete example. Only error/not-found behavior and any sibling routing guidance are missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the accession parameter is already fully documented, including the same example format. The description's example URL merely restates that format, adding no new meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: it fetches exactly one filing identified by an SEC accession number, and it names what comes back (parsed items or insider transactions plus the SEC document link). That distinguishes it from filings_search (query-based) and the insider_* siblings, though it never names them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the single required parameter: call it when you already hold an accession number. There is no explicit statement of when to prefer this over filings_search or filings_latest_preview, and no mention of what happens when the accession is unknown.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
filings_freshnessBInspect
[Filings Oracle] Proof of real-time: seconds since the last successful SEC poll, age of the newest filing, median and p95 ingest lag (from SEC acceptance time) over the last 200 live filings, last successful poll per form type, and rows stored — Free. Proof of real-time: seconds since the last successful SEC poll, age of the newest filing, median and p95 ingest lag (from SEC acceptance time) over the last 200 live filings, last successful poll per form type, and rows stored.
Example: /v1/freshness
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations and no output schema, the description carries the full behavioral burden. It discloses useful traits: the 200-filing measurement window, that lag is measured from SEC acceptance time, and that the endpoint is free (no paid tier/auth gating). It never states read-only semantics, rate limits, or refresh cadence, so the safety profile is left to inference.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire body is duplicated verbatim, doubling the length with zero added information — a clear structural defect. The lead '[Filings Oracle]' tag and the metric list are front-loaded well, but half the text is pure waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must enumerate return values, and it does so thoroughly: poll recency, newest filing age, median and p95 lag, per-form-type poll status, and row counts. For a zero-parameter metrics endpoint that is nearly sufficient, with only read-only semantics and latency expectations left unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4. Nothing in the schema needs compensation, and the description correctly describes a no-argument reporting endpoint rather than implying hidden filters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the exact resource and the specific measurements returned: seconds since last successful SEC poll, newest filing age, median/p95 ingest lag over the last 200 live filings, per-form-type last poll, and stored row count. A specific verb is absent (it reports rather than 'gets'), and it never names a sibling, but the freshness/diagnostics intent is unambiguous against the content-oriented filings_* siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Proof of real-time' and the '- Free' tag imply the use case — auditing whether the SEC data pipeline is current before trusting other filings_* results — but no explicit when-to-use, exclusions, or alternatives are stated. Usage is inferable rather than prescribed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
filings_insider_summaryBInspect
[Filings Oracle] Insider activity rollup for one ticker over a window: open-market buy and sell counts and dollar totals, net flow, distinct buyers and sellers, a cluster-buying flag (three or more insiders buying), and the largest trades — Insider activity rollup for one ticker over a window: open-market buy and sell counts and dollar totals, net flow, distinct buyers and sellers, a cluster-buying flag (three or more insiders buying), and the largest trades.
Example: /v1/insider-summary?ticker=NVDA&days=30
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Optional. Window in days (default 30, max 90). | |
| ticker | Yes | Required. Issuer ticker symbol. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It helpfully discloses what the tool returns and pins down the cluster-buying threshold ('three or more insiders buying'), but says nothing about auth requirements, data recency, rate limits, or whether the window is calendar vs. trading days beyond the schema's default/max.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire opening sentence is duplicated verbatim, wasting half the description with zero added information. The example URL is a genuine asset, but the duplication badly damages front-loading and density.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter read tool with 100% schema coverage and no output schema, the description compensates well by enumerating the returned aggregate fields. Only auth/data-source context is absent, which is a minor gap given the schema already documents both inputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description reinforces the ticker/window scoping ('one ticker over a window') and the example shows both parameters in use, but adds no format or constraint detail beyond the schema (ticker format, behavior at the 90-day cap).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource and operation ('Insider activity rollup for one ticker over a window') and enumerates the returned aggregates (buy/sell counts, dollar totals, net flow, distinct buyers/sellers, cluster-buying flag, largest trades). This clearly differentiates it from the raw-list sibling filings_insider_trades, though the description never names that sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: 'rollup for one ticker over a window' suggests a summarization use case, and the example URL shows invocation. There is no explicit when-to-use vs. when-to-use-a-different-tool guidance, and no mention of the closely related filings_insider_trades alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
filings_insider_tradesBInspect
[Filings Oracle] Form 4 insider transactions parsed to one row per trade: insider, role and title, security, code (P purchase, S sale, A grant ...), shares, price, dollar value, shares owned after, direct/indirect, and whether it was under a 10b5-1 plan — Form 4 insider transactions parsed to one row per trade: insider, role and title, security, code (P purchase, S sale, A grant ...), shares, price, dollar value, shares owned after, direct/indirect, and whether it was under a 10b5-1 plan. Defaults to open-market buys and sells only.
Example: /v1/insider-trades?side=buy&min_value=100000&exclude_10b5_1=true
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Optional. Look back N days (default 7, max 90). Ignored when since is set. | |
| role | No | Optional. director, officer or 10pct_owner. | |
| side | No | Optional. buy or sell (open-market purchases / sales). | |
| wait | No | Optional. With since: long-poll up to N seconds (max 25). | |
| limit | No | Optional. Max rows (default 50, max 200). | |
| owner | No | Optional. Case-insensitive substring of the insider's name. | |
| since | No | Optional. Cursor from meta.cursor of a previous response. | |
| ticker | No | Optional. Issuer ticker symbol. | |
| all_codes | No | Optional. true to include grants, option exercises, tax withholding and gifts (default false: open-market P and S only). | |
| min_value | No | Optional. Minimum trade value in USD. | |
| exclude_10b5_1 | No | Optional. true to drop trades made under a pre-arranged 10b5-1 plan. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It usefully discloses the default filtering behavior (P and S only unless all_codes=true) and the 10b5-1 dimension, which are real behavioral traits. It says nothing about auth requirements, rate limits, pagination via the since cursor, or the long-poll behavior of wait, leaving meaningful behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire opening sentence is duplicated verbatim, wasting roughly half the description with zero added information. The useful parts (default scope, example) are present but buried after the redundant copy, hurting front-loading.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter, all-optional query tool with no annotations and no output schema, the description does compensate somewhat by enumerating the returned fields. However it omits any routing guidance versus the insider_summary sibling and leaves cursor/pagination semantics to the schema, making it only minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 11 parameters, including defaults and maxes (days max 90, limit max 200, wait max 25). The description adds no parameter-level meaning beyond restating returned fields, and the example URL only illustrates a couple of params. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Form 4 insider transactions parsed to one row per trade') and enumerates the exact columns returned (insider, role, security, code, shares, price, value, shares owned, direct/indirect, 10b5-1). An agent immediately knows what this tool produces. It does not, however, differentiate itself from the sibling filings_insider_summary, which likely covers similar ground.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description notes the default scope ('Defaults to open-market buys and sells only'), which implies when you'd reach for all_codes or side. But it never names an alternative tool or states when to prefer filings_insider_summary or filings_search over this one, so usage is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
filings_latest_previewAInspect
[Filings Oracle] The 10 most recent filings across all form types (form, company, ticker, filed_at only) — Free. The 10 most recent filings across all form types (form, company, ticker, filed_at only). Full structured data, filtering and cursors need /v1/filings.
Example: /v1/latest-preview
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden, and it does disclose meaningful trait information: results are capped at 10, only four fields are present, and no filtering or cursors are supported. It does not state whether auth is required for the free tier or what the response envelope looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is stated verbatim twice in a row, wasting roughly half the text. The example path is useful, but the duplication is a clear structural defect.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, yet the description enumerates the returned fields and the 10-row cap, which is the key information an agent needs. Coverage is adequate for a no-parameter preview endpoint, though auth and rate-limit behavior under the free tier remain unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has zero parameters and 100% coverage, so the baseline of 4 applies. The description correctly implies a no-argument call by listing fixed returned fields rather than any inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific resource and scope: the 10 most recent filings across all form types, and enumerates the four fields returned. It does not differentiate itself from the many sibling filings_* tools (filings_search, filings_freshness, filings_filing), so the agent must infer routing from the endpoint path alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage through 'Free' and 'Preview' plus a pointer that full structured data, filtering and cursors require /v1/filings, which tells the agent when this is insufficient. However, it names an HTTP path rather than an actual sibling tool, so the routing guidance is only implied rather than actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
filings_searchAInspect
[Filings Oracle] Structured SEC filings feed (8-K, Form 4, Schedule 13D/13G, 10-K, 10-Q), ingested within about a minute of SEC acceptance — Structured SEC filings feed (8-K, Form 4, Schedule 13D/13G, 10-K, 10-Q), ingested within about a minute of SEC acceptance. Filter by form, ticker, CIK or 8-K item; page with a cursor, or long-poll with wait= to receive the next filing the moment it lands.
Example: /v1/filings?form=8-K&item=5.02&days=1
| Name | Required | Description | Default |
|---|---|---|---|
| cik | No | Optional. SEC CIK number. | |
| days | No | Optional. Look back N days (default 2, max 90). Ignored when since is set. | |
| form | No | Optional. Comma list: 8-K, 4, SCHEDULE 13D, SCHEDULE 13G, 10-K, 10-Q (amendments included). Default all. | |
| item | No | Optional. 8-K item number, e.g. 5.02 (executive change) or 2.02 (earnings). | |
| wait | No | Optional. With since: hold the request up to N seconds (max 25) until a new filing arrives. | |
| limit | No | Optional. Max rows (default 50, max 200). | |
| since | No | Optional. Cursor from a previous response (meta.cursor): returns only filings stored after it, oldest first. | |
| ticker | No | Optional. Ticker symbol, e.g. NVDA. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does meaningful work: it discloses ingestion latency (~1 minute after SEC acceptance), that wait= blocks the request until a filing lands, and that cursor results come back oldest-first. It omits auth/credential requirements and rate limits, but the latency and long-poll semantics are exactly the kind of trait annotations would otherwise supply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core purpose and example, but the first sentence is duplicated verbatim ('Structured SEC filings feed ... — Structured SEC filings feed ...'), which is pure waste in an otherwise short description. The remaining sentences are reasonably efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter, no-required, no-output-schema feed tool, the description covers what the resource is, how to filter it, both retrieval modes (cursor paging and long-poll), and freshness latency. Missing pieces such as auth expectations and response envelope details are minor given the schema fully documents the inputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter (cik, days, form, item, wait, limit, since, ticker) is already documented in the schema. The description only restates the filter fields and paging/cursor concepts at a high level, adding no syntax, format, or edge-case meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource and scope: a structured SEC filings feed covering named form types (8-K, Form 4, Schedule 13D/13G, 10-K, 10-Q), with filtering and paging modes. An agent can tell this is the general filings feed, but the description never distinguishes it from siblings like filings_8k_events, filings_freshness, or filings_latest_preview, which overlap heavily with its stated scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It describes operational modes ('page with a cursor, or long-poll with wait=') which implies when to use each, and gives a concrete example query. But there is no explicit when-to-use guidance against alternatives and no exclusions, so the agent must infer the routing from sibling names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
funding_oiBInspect
[Trading Data API] Aggregated perpetual-futures funding rate & open interest from Binance + Bybit, with 7-day average funding, 24h OI change, and a long/short bias signal. — Aggregated perpetual-futures funding rate & open interest from Binance + Bybit, with 7-day average funding, 24h OI change, and a long/short bias signal.
Example: /v1/funding-oi?symbol=BTC
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Required. Base crypto symbol (e.g. BTC, ETH, SOL). Mapped to the <SYMBOL>USDT perpetual ticker on Binance/Bybit. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses the data sources and derived outputs (7-day average funding, 24h OI change, long/short bias), which tells the agent what is precomputed rather than raw. It does not mention rate limits, auth requirements, latency, or refresh cadence, so it remains incomplete for a read-only aggregate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is well front-loaded and information-dense, but it is repeated verbatim with no added value, wasting roughly half the description. Trimming the duplicate would make this tight and effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, annotation-free tool with no output schema, the description compensates by enumerating the returned metrics (funding, 7d average, 24h OI change, long/short bias) and the source venues. Only the absence of usage routing and operational constraints keeps it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single symbol parameter is fully documented in the schema (base symbol mapped to <SYMBOL>USDT perpetual). The description adds no syntax or mapping detail beyond the example, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource (aggregated perpetual-futures funding rate & open interest) plus the sources (Binance + Bybit) and derived metrics. An agent can distinguish this from siblings like long_short_ratio, basis, or orderbook. The duplicated sentence adds noise but does not obscure the purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus alternatives. Siblings such as long_short_ratio and basis cover adjacent derivatives metrics, yet the description never names them or states a selecting condition. The example URL gives invocation format but not usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fvgCInspect
[Trading Data API] Fair Value Gap zones (standard ICT/LuxAlgo) with CE (50%), gap size, age, fill status, distance from price — Fair Value Gap zones (standard ICT/LuxAlgo) with CE (50%), gap size, age, fill status, distance from price. Standard timeframes match TradingView candles. Crypto or stocks.
Example: /v1/fvg?symbol=BTC&timeframe=1h
| Name | Required | Description | Default |
|---|---|---|---|
| class | No | Optional. stock|crypto for non-curated symbols. | |
| symbol | Yes | Required. e.g. BTC, NVDA, SPY (or any with &class=). | |
| lookback | No | Optional. Timeframe candles to analyze (default 120, max 500). | |
| timeframe | No | Optional. 1m,5m,15m,30m,1h,2h,4h,6h,12h,1D,1W (default 1h). Matches TradingView candles. | |
| min_gap_pct | No | Optional. Filter out gaps smaller than this % of price (default 0 = all). | |
| include_filled | No | Optional. true to include filled FVGs (default false = active only). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It discloses useful traits such as the returned fields, that timeframes match TradingView candles, and the default active-only vs filled behavior (implied by the schema). However it omits auth requirements, rate limits, and pagination/response-shape behavior for a data-fetch endpoint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The opening sentence is duplicated verbatim ('Fair Value Gap zones ... distance from price' appears twice), which is wasted space and suggests a generation error. The remaining content is otherwise front-loaded and tight, but the verbatim repetition violates the 'every sentence earns its place' standard.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter data tool with no output schema and no annotations, the description covers the purpose and partially the return fields, plus an example call. It is adequate but leaves gaps around return shape, pagination, and output units that an agent would want before invoking.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all six parameters thoroughly. The description adds essentially no parameter meaning beyond the schema, aside from the example pairing symbol and timeframe, which earns the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the concrete resource (Fair Value Gap zones, standard ICT/LuxAlgo) and enumerates the returned fields (CE 50%, gap size, age, fill status, distance from price), which resolves the opaque tool name 'fvg'. It does not, however, distinguish itself from any sibling indicator tool, so it lands at 4 rather than 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use, when-not-to-use, or alternative routing guidance. It mentions 'Crypto or stocks' and gives a URL example, but never tells the agent how this differs from siblings like liquidity_levels, atr, or ohlcv.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gasBInspect
[Trading Data API] Free, no signup required — Free, no signup required. Ethereum gas oracle (safe/propose/fast gas prices + base fee, in gwei), via Etherscan.
Example: /v1/gas
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It usefully states that the endpoint is free and requires no signup, identifies the upstream source (Etherscan), and specifies units in gwei, but it does not cover rate limits, error behavior, or explicitly confirm read-only semantics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads the resource type, but it wastes space by repeating 'Free, no signup required' verbatim in the same sentence. The example path is useful, but the duplication makes it less clean than it could be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and no output schema, the description does a reasonable job by enumerating the returned fields (safe/propose/fast gas prices, base fee) and their unit (gwei). It lacks only minor context such as response shape details or rate-limit expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there are no parameter semantics to explain. The baseline for a zero-parameter tool is 4, and nothing in the description misrepresents or undermines that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly names the resource and scope: an Ethereum gas oracle returning safe/propose/fast gas prices plus base fee, in gwei, sourced via Etherscan. It is specific enough to distinguish from most sibling data endpoints, though it does not explicitly contrast with any named sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage context is 'Free, no signup required,' which is access information rather than when-to-use guidance. It never states when to choose this tool over alternatives or what conditions make it appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hyperliquidBInspect
[Trading Data API] Hyperliquid perpetual context: funding (hourly), open interest, mark/oracle/mid price, premium, 24h volume — Hyperliquid perpetual context: funding (hourly), open interest, mark/oracle/mid price, premium, 24h volume. Not geo-blocked.
Example: /v1/hyperliquid?symbol=BTC
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Required. Hyperliquid coin name (e.g. BTC, ETH, SOL). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden itself. It usefully notes 'Not geo-blocked' and that funding is hourly, which are genuine behavioral traits. It omits auth requirements, rate limits, and whether data is real-time or delayed, so it is only partially transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is duplicated verbatim ('Hyperliquid perpetual context: funding (hourly)...' repeated twice), wasting roughly half the description. The example is useful, but the redundancy is a clear structural flaw.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only data endpoint with no output schema, the description does list the returned fields, which compensates for the missing output schema. Only the sibling-overlap and auth/pagination details are absent, which are minor for this tool type.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with a single required 'symbol' parameter that the schema already documents fully with examples. The description adds only the example query string, which restates the same parameter usage rather than adding new semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific resource (Hyperliquid perpetual context) and enumerates the exact data points returned (funding, open interest, mark/oracle/mid price, premium, 24h volume), so an agent knows what it fetches. However, it never differentiates itself from overlapping siblings like funding_oi, price, or orderbook, which cover adjacent data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus the many overlapping market-data siblings (funding_oi, price, ohlcv, basis). The example URL shows a call shape but gives no selection guidance or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identity_get_challengeAInspect
[Wicked Identity] Request a real time-boxed liveness challenge (constrained-generation task, 30s budget). The clock starts when this returns: answer in ONE pass via identity_submit_response before expires_at. Real wallet: needs a fresh signed nonce (fetch + sign the nonce for the NEXT call before calling this). Sandbox: just wallet + sandbox_token.
| Name | Required | Description | Default |
|---|---|---|---|
| nonce | No | Real wallet: nonce from a FRESH identity_get_nonce call. Omit for sandbox. | |
| wallet | Yes | Your 0x wallet address on Base, or the sandbox wallet from identity_sandbox_register. | |
| signature | No | Real wallet: 0x-prefixed ECDSA signature over that nonce's message. Omit for sandbox. | |
| sandbox_token | No | Sandbox identity: the sandbox_token from identity_sandbox_register. Use INSTEAD of nonce/signature. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and delivers strong behavioral detail: a 30s budget, the clock starting on return, a one-pass answer constraint, and a required fresh nonce. It omits failure/timeout semantics and what the challenge payload contains, keeping it just short of full transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences with the core action and deadline constraint front-loaded, followed by the real-wallet and sandbox invocation notes. Every sentence earns its place, though the parenthetical density slightly strains readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a challenge-issuing tool with no output schema and no annotations, the description supplies the timing contract, the required workflow, and the auth-mode branching. It is nearly complete, only missing detail on the returned challenge structure and timeout/failure behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds ordering meaning beyond the schema by specifying the nonce must be signed for the NEXT call and that sandbox uses wallet + sandbox_token instead of nonce/signature. This contextualizes the mutually-exclusive parameter sets rather than merely restating field docs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: 'Request a real time-boxed liveness challenge (constrained-generation task, 30s budget)'. It clearly delineates this from identity_get_nonce (prerequisite) and identity_submit_response (follow-up), so an agent can position it in the workflow without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states the follow-up path ('answer in ONE pass via identity_submit_response before expires_at') and names the prerequisite ('fetch + sign the nonce for the NEXT call before calling this'). It also routes between the real-wallet and sandbox invocation modes, giving when-to-use context and alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identity_get_nonceAInspect
[Wicked Identity] Real-wallet path, step 1: a one-time nonce + message to sign. Every signed identity call needs a fresh nonce (single-use, 5-minute TTL). Not needed for sandbox identities.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | Your 0x wallet address on Base, or the sandbox wallet from identity_sandbox_register. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It discloses single-use behavior, a 5-minute TTL, and the real-wallet vs sandbox distinction. It stops short of describing response shape, error behavior, or any auth/permission requirements beyond the nonce flow.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences front-load the action and then add the critical constraints (single-use, TTL, sandbox exception). Every phrase earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no annotations or output schema, the description is nearly complete: it explains the nonce/message purpose, TTL, single-use nature, and sandbox exclusion. It could still specify the response format more explicitly, but an agent has enough to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the wallet parameter is already documented. The description adds useful context by framing the tool as the real-wallet path and saying it is not needed for sandbox identities, but it does not add syntax or validation detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('a one-time nonce + message to sign') and places it in context ('Real-wallet path, step 1'). It also distinguishes the tool from sandbox identity flows with 'Not needed for sandbox identities.' An agent can identify both the purpose and the relevant boundary versus sibling identity tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly says when the nonce is required ('Every signed identity call needs a fresh nonce') and when it is not ('Not needed for sandbox identities'). However, it does not name the alternative tool or flow for sandbox identities, so an explicit alternative is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identity_get_test_keyAInspect
[Wicked Identity] Get a free self-serve test API key (7-day expiry, 20 requests/min) to use as api_key on identity_status instead of paying via x402. Limit: 5 per IP per day.
| Name | Required | Description | Default |
|---|---|---|---|
| label | No | Optional name for this key. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations to lean on, the description carries the full burden and does well: it discloses key expiry (7 days), the rate limit (20 requests/min), and an abuse limit (5 per IP per day). It omits whether authentication is required and does not describe the returned key material, but the operational constraints an agent needs are present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence, front-loaded with the verb and resource, followed by constraints. Every clause earns its place and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity tool with one optional parameter and no output schema, the description covers the key behavioral facts an agent needs (expiry, rate limit, daily cap, intended consumer). It could note the returned value since there is no output schema, keeping it just short of complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single optional 'label' parameter is fully documented there. The description adds no meaning about the parameter, so the baseline of 3 for a fully-covered schema is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource: 'Get a free self-serve test API key,' with clear qualifiers (7-day expiry, 20 req/min). It is distinguishable from identity_status and other identity_* siblings, though it does not explicitly differentiate itself from registry_create_api_key, which also mints keys.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It names the intended use — as the api_key for identity_status — and offers the alternative it replaces: 'instead of paying via x402.' That is a clear use-context with an alternative, but it stops short of stating when NOT to use it (e.g., for production keys vs registry_create_api_key).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identity_jwksAInspect
[Wicked Identity] Public RS256 keys to verify an assertion_token locally. Free. Set sandbox=true for the separate key set that signs sandbox assertions.
| Name | Required | Description | Default |
|---|---|---|---|
| sandbox | No | true = the sandbox key set (issuer wicked-identity-sandbox). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden but does disclose meaningful traits: cost ('Free'), key algorithm (RS256), that keys are public, and that sandbox uses a separate key set. It omits caching/rotation and rate-limit behavior, which matter for a JWKS endpoint, so it is not complete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly packed sentences, front-loaded with what the endpoint returns and followed by the sandbox caveat. No filler or redundant restatement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, no-output-schema key-fetch tool, the description covers purpose, cost, and the sandbox variant, which is sufficient to call it correctly. Naming it a JWKS implicitly conveys the return shape, though the exact response format is not spelled out.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single param is already documented with its issuer value in the schema. The description restates the sandbox behavior and adds only that sandbox keys sign sandbox assertions, so it clears the baseline without adding much beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (public RS256 keys) and its use (verify an assertion_token locally), which is concrete and actionable. It does not differentiate itself from the nearby sibling identity_get_test_key, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives implied context ('to verify an assertion_token locally') and a routing hint for the sandbox variant, plus a cost note ('Free'). It never states when to prefer this over identity_get_test_key or identity_status, leaving sibling selection to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identity_registerAInspect
[Wicked Identity] Register a REAL wallet (no stake required). Needs your signature over identity_get_nonce's message; this tool never signs. Sandbox identities are registered by identity_sandbox_register instead.
| Name | Required | Description | Default |
|---|---|---|---|
| nonce | Yes | Nonce from a FRESH identity_get_nonce call. | |
| wallet | Yes | Your 0x wallet address on Base, or the sandbox wallet from identity_sandbox_register. | |
| signature | Yes | 0x-prefixed ECDSA signature over that nonce's message. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It usefully discloses that it never signs, that a signature is required, and that registration requires no stake, which is real behavioral context. However it omits what happens on success, whether the wallet becomes permanently bound, idempotency, and any auth/error behavior — notable gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three compact sentences, with the scope constraint front-loaded and the sibling routing last. Every sentence earns its place; no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers the prerequisite chain and sibling differentiation well for a 3-required-param mutation with no annotations and no output schema. It stops short of describing the post-registration state or return, which is the main remaining gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so each of wallet, nonce, and signature is already documented. The description reinforces nonce freshness and signature-over-message semantics but adds no syntax or format detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (register) and resource (REAL wallet/identity), and explicitly names the sibling it is not — sandbox identities go to identity_sandbox_register. An agent can distinguish it from identity_get_nonce and identity_sandbox_register without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly gives the prerequisite flow (sign over identity_get_nonce's message), a key constraint (no stake required), and the alternative route for sandbox identities. Nothing about when to pick this tool is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identity_sandbox_registerAInspect
[Wicked Identity] START HERE if you have no wallet or cannot sign messages. Returns a sandbox wallet + sandbox_token (no signing, no body). Then call identity_get_challenge and identity_submit_response with wallet + sandbox_token. Sandbox results are for trying the service: signed with a separate key (identity_jwks sandbox=true) and never reported as verified. Use a real wallet for an accountable identity. Limit: 10 per IP per hour.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden, and it does most of it well: no signing, no body, results signed with a separate sandbox key (identity_jwks sandbox=true), never reported as verified, and a concrete rate limit of 10 per IP per hour. It leaves minor gaps such as whether repeated calls mint multiple wallets or are idempotent, which keeps it from a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the decisive routing cue ('START HERE'), then the return values, then the follow-up chain, then caveats and the rate limit. Every clause carries information an agent needs; nothing is padding despite the density.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations, no output schema, and zero parameters, the description must supply routing, return semantics, downstream usage, trust level of results, and quota — and it covers all of these. An agent has everything required to call it and correctly interpret what comes back.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline of 4 applies per the rubric. The description explains the call's output/return artifacts (sandbox wallet + sandbox_token) and how they feed downstream calls, which is the relevant semantic content for a no-arg tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource (registers/creates a sandbox wallet and token) and immediately distinguishes itself from siblings with 'START HERE if you have no wallet or cannot sign messages,' implicitly separating it from identity_register which requires a real wallet. An agent can pick this over identity_register/identity_get_test_key without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit condition for use ('no wallet or cannot sign messages'), names the follow-up chain (identity_get_challenge then identity_submit_response with wallet + sandbox_token), and names the alternative ('Use a real wallet for an accountable identity'). When-to-use, what-to-do-next, and when-not-to-rely-on-it are all present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identity_statusAInspect
[Wicked Identity] Does a wallet currently hold a valid, unexpired assertion? No signature needed. Pays via x402, or pass api_key (get one free from identity_get_test_key) / set IDENTITY_API_KEY. Sandbox wallets are never verified; they report sandbox: true and sandbox_verified instead.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | The 0x wallet address. | |
| api_key | No | Optional x-api-key, e.g. from identity_get_test_key. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose meaningful behavior: the no-signature read model, the x402/api-key auth options, and the important sandbox caveat that sandbox wallets are never `verified` and instead report sandbox:true and sandbox_verified. It lacks details on rate limits or failure modes, but the auth and sandbox semantics are genuinely useful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the core question and only then moving to payment/auth and the sandbox edge case. No filler, though the second sentence is information-dense enough to slow parsing slightly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter, no-output-schema query tool, the description covers the essential semantics: what is being checked, how to authenticate/pay, and how sandbox results differ. The only gap is the exact shape of a successful non-sandbox response, which is implied by the `verified` and `sandbox_verified` fields.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, and the description goes beyond the schema by explaining api_key provenance (identity_get_test_key) and the IDENTITY_API_KEY environment-variable alternative, which the schema's 'Optional x-api-key' note does not mention.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific question the tool answers — whether a wallet holds a valid, unexpired assertion — with a clear resource (wallet identity/assertion). An agent can distinguish it from sibling read tools like reputation_status or identity_jwks, though the description never explicitly contrasts with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly describes the access paths: no signature required, pay via x402, or pass api_key obtained from the named sibling identity_get_test_key / IDENTITY_API_KEY env var. It does not say when to prefer this over reputation_status or reputation_query, so it stops short of full alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identity_submit_responseAInspect
[Wicked Identity] Submit your answer to a challenge; scored pass / fail / inconclusive. A pass returns a short-lived signed assertion_token (JWT) verifiable via identity_jwks. Real wallet: needs a DIFFERENT fresh nonce than identity_get_challenge used. Sandbox: wallet + sandbox_token.
| Name | Required | Description | Default |
|---|---|---|---|
| nonce | No | Real wallet: nonce from a FRESH identity_get_nonce call. Omit for sandbox. | |
| wallet | Yes | Your 0x wallet address on Base, or the sandbox wallet from identity_sandbox_register. | |
| signature | No | Real wallet: 0x-prefixed ECDSA signature over that nonce's message. Omit for sandbox. | |
| challenge_id | Yes | The challenge_id from identity_get_challenge. | |
| response_text | Yes | Your answer exactly as the instructions specify: raw text only. | |
| sandbox_token | No | Sandbox identity: the sandbox_token from identity_sandbox_register. Use INSTEAD of nonce/signature. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does well: it discloses scoring outcomes, that the assertion_token is short-lived and JWT-signed, and a critical replay-protection constraint (fresh nonce, not the challenge nonce). It doesn't cover failure modes or rate limits, keeping it off a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense clauses with no filler; the outcome/scoring and the returned token are front-loaded, then the two auth paths are contrasted compactly. Slightly dense but every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-param mutation-style tool with no annotations and no output schema, the description covers the key agent needs: how to authenticate in each mode and what a pass yields. Missing only error/retry behavior and sandbox pass semantics, minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all six parameters are already documented in the schema, including the real-vs-sandbox split. The description largely restates that split rather than adding syntax, format, or edge-case meaning beyond it, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (submit response) and resource (a challenge answer) plus the outcome semantics (scored pass/fail/inconclusive) and the artifact produced (short-lived signed assertion_token JWT). This clearly distinguishes it from identity_get_challenge, identity_get_nonce, and identity_jwks among the identity siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete routing: real wallet requires a DIFFERENT fresh nonce than identity_get_challenge used, sandbox requires wallet + sandbox_token, and the token is verifiable via identity_jwks. It doesn't state explicit when-not-to-use conditions, but the two auth paths are clearly laid out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kalshi_marketCInspect
[Trading Data API] Single Kalshi market depth: orderbook (yes/no levels) + recent trades for a specific ticker. — Single Kalshi market depth: orderbook (yes/no levels) + recent trades for a specific ticker.
Example: /v1/kalshi-market?ticker=KXBTCD-26JUN1315-T64099.99
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | Optional. Orderbook depth per side (default 10, max 100). | |
| ticker | Yes | Required. A Kalshi market ticker (e.g. KXBTCD-26JUN1315-T64099.99). | |
| trades | No | Optional. Recent trades to return (default 20, max 100). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It implies a read-only data fetch and gives a sample URL, but discloses nothing about auth requirements, rate limits, pagination, or how the orderbook/trades payload is shaped. Significant gaps remain for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose is front-loaded and the example URL is useful, but the opening sentence is duplicated verbatim ('— Single Kalshi market depth...' repeated), which is pure waste. Size is otherwise short and appropriate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter read tool with 100% schema coverage and no output schema, the description is adequate to call it correctly. However, it could have explained the structure of the orderbook/trades response since no output schema exists, and it lacks usage context, leaving it minimum-viable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents depth, ticker, and trades fully, including defaults and max values. The description adds no syntax or format detail beyond what the schema already provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (a single Kalshi market) and the exact data returned (orderbook yes/no levels plus recent trades) for a given ticker. It is clearly distinguishable from kalshi_probability, but it never explicitly differentiates itself from the generic 'orderbook' sibling, leaving some ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no named alternatives. An agent gets no help deciding between this tool, kalshi_probability, or the generic orderbook sibling for a given request.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kalshi_probabilityBInspect
[Trading Data API] Free, no signup required — Free, no signup required. Kalshi prediction-market probabilities. Query by category (returns the most active open markets) or a specific market ticker.
Example: /v1/kalshi-probability?category=crypto
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Optional. Max markets to return for a category query (default 25, max 100). | |
| ticker | No | Optional. A specific Kalshi market ticker (e.g. KXBTCD-...). | |
| category | Yes | Optional. One of: crypto, macro, fed-rate, financials, politics, sports, world, companies, climate, science, health, entertainment, elections. Either category or ticker is required. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It does disclose useful context — free, no signup required (no auth needed) and that category queries return the most active open markets. It says nothing about pagination, rate limits, error behavior, or the shape of a probability result, leaving meaningful gaps for a data tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence and example are front-loaded and useful, but 'Free, no signup required' is duplicated verbatim in the first line, which is pure waste. Removing the repetition would make this tight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema and no annotations, so the description is the only source of behavioral and return-value context. It gives a partial picture of returns ('most active open markets') and access terms, but omits result fields and constraints an agent would want before calling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents limit, ticker, and category (including the enumerated category values and the required-either constraint). The description merely restates the category/ticker axis and adds no format or constraint detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: querying Kalshi prediction-market probabilities, with the two supported query modes (category vs. ticker). It also notes what a category query returns (most active open markets). However, it never distinguishes itself from the sibling kalshi_market tool, so an agent must guess which to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies usage via 'Query by category ... or a specific market ticker' and the example call, so the two modes are discoverable. But there is no explicit when-to-use guidance, no when-not-to-use, and no routing to the kalshi_market sibling that overlaps this domain.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
liquidity_levelsBInspect
[Trading Data API] ICT liquidity levels: buy-side liquidity (above swing highs) & sell-side (below swing lows), sweep/taken status, relative-equal pools, and nearest untaken targets — ICT liquidity levels: buy-side liquidity (above swing highs) & sell-side (below swing lows), sweep/taken status, relative-equal pools, and nearest untaken targets. Crypto or stocks.
Example: /v1/liquidity-levels?symbol=TQQQ&timeframe=1h
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Required. e.g. BTC, NVDA, TQQQ (or any with &class=). | |
| lookback | No | Optional. Candles to analyze (default 300, max 500). | |
| timeframe | No | Optional. 1m..1W (default 1h). | |
| swing_length | No | Optional. Pivot strength — bars each side of a swing (default 5). Tune to match your chart indicator. | |
| include_swept | No | Optional. true to include already-taken levels (default false = resting only). | |
| equal_threshold_pct | No | Optional. Group swings within this % as relative-equal pools (default 0.1). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It hints at output content (sweep/taken status, pools, untaken targets) but says nothing about authentication, rate limits, payload size, or how the levels are returned. For a data tool with zero annotation coverage, this is a substantial gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is stated twice verbatim, wasting roughly half the description and pushing the useful example further down. The example is well placed, but the duplication is a clear structural defect that undermines front-loading.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With all parameters documented in the schema and no output schema, the description only needs to cover purpose and routing. It covers the domain concepts well but omits sibling differentiation and any behavioral context, leaving it just barely sufficient for a six-parameter data endpoint.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all six parameters, including defaults and ranges (lookback default 300 max 500, timeframe default 1h, swing_length default 5). The description adds only the example invocation with symbol and timeframe, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (ICT liquidity levels) and enumerates the exact content: buy-side liquidity above swing highs, sell-side below swing lows, sweep/taken status, relative-equal pools, and nearest untaken targets. It also notes the asset coverage (crypto or stocks). It does not, however, distinguish itself from closely related siblings such as fvg, ohlcv, or atr, which an agent could plausibly confuse it with.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied through the example URL (`/v1/liquidity-levels?symbol=TQQQ&timeframe=1h`), which shows a concrete call pattern. There is no explicit statement of when to prefer this over fvg or ohlcv, and no prerequisites or exclusions are given. Adequate but leaves routing decisions to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
long_short_ratioCInspect
[Trading Data API] Binance long/short ratios: global account, top-trader account, top-trader position, and taker buy/sell — Binance long/short ratios: global account, top-trader account, top-trader position, and taker buy/sell. Companion to funding-oi.
Example: /v1/long-short-ratio?symbol=BTC&period=1h
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Optional. One of 5m,15m,30m,1h,2h,4h,6h,12h,1d (default 5m). | |
| symbol | Yes | Required. Base crypto symbol (e.g. BTC). Mapped to <SYMBOL>USDT. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It reveals nothing about auth requirements, rate limits, latency, or whether data is historical vs live; only a sample request URL is given. For a data-fetch tool with zero annotation coverage this leaves real gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The opening clause is duplicated verbatim ('Binance long/short ratios: global account, top-trader account, top-trader position, and taker buy/sell' appears twice), wasting half the description. The example URL is useful, but the restating hurts front-loading.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, and the description does not describe the shape of the returned ratio data, so an agent can't anticipate the response. Params are covered by the schema and an example is provided, making it minimally adequate for a simple 2-parameter read tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% – both symbol and period are fully documented in the schema, including the period enumeration and the <SYMBOL>USDT mapping. The description's example URL adds usage syntax but no semantic detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb/resource: retrieving Binance long/short ratios, and enumerates the four variants (global account, top-trader account, top-trader position, taker buy/sell). Clear what the tool fetches, but no explicit differentiation from siblings beyond the 'companion to funding-oi' note.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this versus alternatives like funding_oi, sentiment, or orderbook. The 'Companion to funding-oi' line hints at a pairing but doesn't state a condition or exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
macro_calendarBInspect
[Trading Data API] Free, no signup required — Free, no signup required. Upcoming US macro events (FOMC rate decisions, CPI, jobs report) with verified Fed/BLS dates, days-until, and Kalshi rate-decision odds (cut/hold/hike) for FOMC meetings.
Example: /v1/macro-calendar
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Optional. Only events within the next N days. | |
| type | No | Optional. Filter to FOMC, CPI, or NFP. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden but does add useful context: no signup/auth required, data provenance (verified Fed/BLS dates), and the inclusion of Kalshi probability data. It still does not disclose read-only nature explicitly, rate limits, caching, or timezone/date-range behavior for 'upcoming'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The lead is front-loaded and informative, but the sentence opens with 'Free, no signup required — Free, no signup required', a verbatim duplication that wastes space. The example path is mildly useful but not essential.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description does the heavy lifting by enumerating the returned fields (dates, days-until, odds) and the covered event types. It is nearly complete — only the absence of any usage/prerequisite guidance for the filtering parameters keeps it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters (days, type) are documented in the schema, so the baseline of 3 applies. The description implies date-window and event-type filtering implicitly through 'days-until' and the event list, but adds no syntax or enum detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (upcoming US macro events — FOMC, CPI, NFP) and the payload it returns (verified Fed/BLS dates, days-until, Kalshi cut/hold/hike odds), so an agent knows exactly what it gets. It does not, however, explicitly distinguish itself from the similarly named earnings_calendar sibling, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of alternatives (e.g. earnings_calendar or kalshi_market for the odds component), and no prerequisites beyond 'free, no signup required'. The example endpoint is descriptive, not selective.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_clockBInspect
[Trading Data API] US equities market clock (is_open, next_open/close) + upcoming sessions, via Alpaca — US equities market clock (is_open, next_open/close) + upcoming sessions, via Alpaca. Crypto endpoints are 24/7 and unaffected.
Example: /v1/market-clock
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Optional. Upcoming session days to include (default 3, max 30; 0 to omit). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the data source (Alpaca) and that the tool is scoped to equities rather than crypto, and the read-only nature is clear from 'clock'. It omits any mention of auth requirements, rate limits, failures at session boundaries, or timezone semantics for next_open/close.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is repeated verbatim ('US equities market clock (is_open, next_open/close) + upcoming sessions, via Alpaca' appears twice), wasting roughly half the text. The endpoint example and the crypto caveat are useful, but the duplication is a structural defect in an otherwise short description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must convey the return shape, and it does list the key fields (is_open, next_open/close) plus upcoming sessions. It does not explain the structure of the upcoming-sessions array or how next_open/close are formatted, so an agent still has gaps for a data-returning tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a single optional parameter with 100% schema description coverage, including default, max, and the 0-to-omit behavior, so the description adds nothing beyond the schema. Baseline 3 applies when the schema already does the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (US equities market clock) and enumerates the returned fields (is_open, next_open/close) plus upcoming sessions, with the data provider (Alpaca) identified. It does not name or distinguish itself from any sibling tool, but no sibling in the list covers market session timing, so the purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The note that 'Crypto endpoints are 24/7 and unaffected' implicitly scopes usage to US equities sessions, which helps an agent decide when this tool applies. However, there is no explicit when-to-use/when-not-to-use guidance or alternative routing, and the sibling list contains no direct competitor to point at.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_overviewCInspect
[Trading Data API] Free, no signup required — Free, no signup required. CoinGecko global crypto stats (total market cap, 24h volume, BTC/ETH dominance) or top coins by market cap.
Example: /v1/market-overview
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | Optional. global (default) or coins. | |
| limit | No | Optional (coins view). Number of coins (default 20, max 100). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It does disclose one genuine behavioral trait — no auth/signup needed — but says nothing about rate limits, data freshness/caching, or whether the two views return different shapes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the API tag and the free/no-signup claim, which is good, but 'Free, no signup required' is literally duplicated, and the bare example path adds little for an agent that already knows the tool name. Padding costs it a point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter, read-only, zero-required-arg tool with a fully documented schema, the description covers purpose and auth adequately. With no output schema and no annotations, however, it should say something about the shape of the returned data or refresh cadence and does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (view, limit) are already documented with defaults and maxima in the schema. The description's mention of 'global stats or top coins' loosely maps to the view parameter but adds no syntax or constraint detail beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource and content: CoinGecko global crypto stats (market cap, 24h volume, BTC/ETH dominance) or top coins by market cap. An agent can distinguish this aggregate-market tool from siblings like price, ohlcv, or sentiment, though it never names a sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no conditions for picking this over price/ohlcv/sentiment, and no prerequisites beyond 'no signup required'. The agent must infer usage entirely from the purpose sentence.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_deleteAInspect
[Wicked Memory] PERMANENTLY hard-delete a memory (right-to-be-forgotten). Default scope "chain" removes every version; "version" only this one. Only an audit row (no content) is kept.
| Name | Required | Description | Default |
|---|---|---|---|
| nonce | Yes | From memory_prepare (single use). | |
| scope | No | "chain" (all versions, default) or "version". | |
| reason | No | Optional audit-log note (max 200 chars). | |
| wallet | Yes | Your agent's 0x wallet address. | |
| memory_id | Yes | UUID of any version in the chain. | |
| signature | Yes | Your wallet's signature over memory_prepare's message_to_sign. | |
| timestamp | Yes | From memory_prepare. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it declares irreversibility ('PERMANENTLY'), explains what is destroyed (all versions by default), and what is retained (an audit row with no content). It omits auth/permission requirements and the response shape, keeping it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the destructive nature and scope default; every sentence carries information. The '[Wicked Memory]' prefix is the only minor overhead.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with no output schema and no annotations, the description covers permanence, scope defaults, and retention policy. It lacks any mention of the signature/nonce authorization flow or error behavior, but is otherwise sufficient to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents every parameter including the scope enum-like values. The description reinforces scope behavior but adds no new syntax or format detail beyond the schema, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('PERMANENTLY hard-delete a memory') with clear scope semantics, and the 'right-to-be-forgotten' framing distinguishes it from softer siblings like memory_update or memory_deletions. An agent can identify it as the destructive memory operation without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains the scope parameter's default and effect, which is genuine usage guidance, but it never states when to prefer delete over memory_update or what prerequisites (signature/nonce flow) are needed. Usage is implied rather than explicit, with no alternatives named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_deletionsBInspect
[Wicked Memory] Your deletion audit log (ids, times, reasons; never content).
| Name | Required | Description | Default |
|---|---|---|---|
| nonce | Yes | From memory_prepare (single use). | |
| wallet | Yes | Your agent's 0x wallet address. | |
| signature | Yes | Your wallet's signature over memory_prepare's message_to_sign. | |
| timestamp | Yes | From memory_prepare. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose one meaningful behavioral trait: the log never contains content, only metadata. However, it omits that this is a read-only operation, the authentication/signature requirement implied by the wallet/nonce/signature params, and any pagination or scope limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tightly written sentence that front-loads the tool's identity and then its contents. No filler, though it is brief enough that it could have afforded one clause of usage guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read tool with no output schema, the description usefully sketches the return shape (ids, times, reasons, never content), and the auth parameters are fully documented in the schema. It is nearly complete, missing only explicit usage routing and the read-only characterization.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and each parameter is documented in the schema, so the baseline is 3. The description adds no parameter-level detail; 'ids, times, reasons' describes return values rather than inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource ('deletion audit log') and enumerates its contents (ids, times, reasons; never content), which is enough to distinguish it from the general memory_history sibling. It stops short of explicitly contrasting itself with memory_history or memory_delete, so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of prerequisites, and no reference to the closely related memory_delete/memory_history tools. The agent must infer that this is the read-side counterpart of deletion operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_getAInspect
[Wicked Memory] Fetch one of your memories by id (another wallet's or a deleted id returns the same 404).
| Name | Required | Description | Default |
|---|---|---|---|
| nonce | Yes | From memory_prepare (single use). | |
| wallet | Yes | Your agent's 0x wallet address. | |
| memory_id | Yes | The memory's UUID. | |
| signature | Yes | Your wallet's signature over memory_prepare's message_to_sign. | |
| timestamp | Yes | From memory_prepare. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose one genuinely non-obvious behavior: another wallet's memory and a deleted id both return an identical 404, so the tool cannot be used to probe for existence. It stops short of describing the return payload (no output schema) or the memory_prepare/signature prerequisite, so gaps remain.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with the resource and lookup key front-loaded and the error semantics appended without wasted words. Nothing could be trimmed without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a five-parameter, all-required tool with no output schema, the description leaves the return shape undefined and omits the memory_prepare prerequisite workflow entirely. It covers identity scoping and error behavior adequately but is thin on what the agent actually receives back.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including the cross-reference that nonce/timestamp/signature come from memory_prepare, so the schema already does the work. The description adds nothing about parameter format or the single-use nature of the nonce beyond what is structured.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Fetch one of your memories by id'), which cleanly separates it from memory_search, memory_history, and memory_delete in the sibling list. The parenthetical adds the key scope constraint that only own, non-deleted ids resolve.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'by id' – the agent can infer this is the direct-lookup counterpart to memory_search – but no alternative is named and no when-not condition is stated. It never says to prefer memory_search when the id is unknown.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_historyAInspect
[Wicked Memory] Full version chain for a memory, oldest first, with valid_from / valid_until / superseded_by. Works from any version's id.
| Name | Required | Description | Default |
|---|---|---|---|
| nonce | Yes | From memory_prepare (single use). | |
| wallet | Yes | Your agent's 0x wallet address. | |
| memory_id | Yes | UUID of any version in the chain. | |
| signature | Yes | Your wallet's signature over memory_prepare's message_to_sign. | |
| timestamp | Yes | From memory_prepare. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose the return ordering and the temporal/supersession fields the chain contains. However it says nothing about the read-only nature of the call, pagination, or whether chains can be long, so behavioral coverage is partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence, front-loaded with the resource and return shape, with zero filler. Every clause (chain scope, ordering, returned fields, id flexibility) earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only lookup with no output schema, the description adequately explains what comes back (full chain, ordering, temporal fields) and how to address it. Minor gaps remain around pagination or chain-size limits, but nothing essential to calling it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema already states memory_id is "UUID of any version in the chain," so the description's note that it works from any version's id adds little beyond the structured field. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: it returns the full version chain for a memory, with concrete returned fields (valid_from/valid_until/superseded_by) and ordering (oldest first). It is distinguishable from memory_get/search by describing a chain rather than a single record, though it never names those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Works from any version's id" is the only usage signal, and it usefully tells the agent it need not supply the root version. There is no explicit when-to-use-this-vs-memory_get guidance or mention of prerequisites, so usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_prepareAInspect
Wicked Memory step 1 of every call: returns the exact message_to_sign. Sign it with your own wallet (EIP-191 personal_sign), then call the matching memory_* tool with the SAME arguments plus the returned timestamp, nonce and your signature. Timestamp must be within 5 minutes; nonce is single-use, so prepare again for every call.
| Name | Required | Description | Default |
|---|---|---|---|
| params | No | The arguments you will pass to the tool, by name, e.g. {"content":"...","tags":["a"]} or {"memory_id":"<uuid>"}. | |
| wallet | Yes | Your agent's 0x wallet address (memories are scoped to it). | |
| operation | Yes | "store", "search", "get", "update", "history", "delete" or "deletions". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does so well: it discloses the signing scheme (EIP-191 personal_sign), the ephemeral 5-minute timestamp window, and the single-use nonce that forces a fresh prepare for every call. These are exactly the behavioral traits an agent must know before invoking, none of which appear in structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose and the critical 'prepare again for every call' constraint. Every clause adds actionable information with no repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a negotiation/prepare tool with no output schema, the description states what is returned (message_to_sign plus timestamp and nonce) and the full signing protocol. Nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3, but the description adds real meaning: `operation` selects which memory_* tool will be called, and `params` are the arguments forwarded verbatim to that tool, which the schema only hints at. It does not enumerate the operation-to-tool mapping values, but the schema's enum-style list covers that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: returns the exact `message_to_sign` for the Wicked Memory signing flow, and its position as 'step 1 of every call'. It is unmistakably distinct from the memory_store/search/get/update/delete siblings it feeds into.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit when-to-use and sequencing: sign the message with EIP-191 personal_sign, then call the matching memory_* tool with the SAME arguments plus the returned timestamp, nonce and signature. It also states the operating constraints (timestamp within 5 minutes, single-use nonce, re-prepare for every call), leaving no inference required.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_searchAInspect
[Wicked Memory] Semantic search over YOUR memories only, ranked by real cosine similarity. The one metered call: free with MEMORY_API_KEY, otherwise http_status 402 with x402 v2 instructions under payment_required (0.001 USDC on Base) — pay, then call again with the SAME arguments (a 402 does not consume the nonce) plus payment_signature.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | What to look for, in natural language. | |
| tags | No | Only memories having ALL of these tags. | |
| as_of | No | ISO-8601 instant; search memory as it stood then. | |
| limit | No | 1-50, default 10. | |
| nonce | Yes | From memory_prepare (single use). | |
| wallet | Yes | Your agent's 0x wallet address. | |
| signature | Yes | Your wallet's signature over memory_prepare's message_to_sign. | |
| timestamp | Yes | From memory_prepare. | |
| created_after | No | ISO-8601 lower bound. | |
| created_before | No | ISO-8601 upper bound. | |
| payment_signature | No | x402 payment payload (base64) for the keyless path. | |
| include_superseded | No | Also search old, superseded versions. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does so well: it discloses metering, the exact 402 http_status behavior, the x402 v2 payload location, the price and network (0.001 USDC on Base), and the non-obvious retry semantic that a 402 does not consume the nonce. That is precisely the behavioral context an agent cannot infer from the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, purpose front-loaded, payment mechanics second. No wasted words while still conveying the retry constraint.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 12-parameter, 5-required tool with no output schema, the description covers the payment/auth behavior thoroughly. It stops short of describing the prepare-then-search prerequisite chain and the shape of search results (matching, ranking, pagination), which are the remaining gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 12 parameters are documented in the schema itself; the baseline is 3. The description only ties payment_signature to the 402 retry flow, adding marginal meaning beyond that, and explains none of the other parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Semantic search over YOUR memories only, ranked by real cosine similarity.' The 'YOUR memories only' scoping and cosine-similarity ranking distinguish it from sibling reads like memory_get or memory_history, though it never names them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives strong guidance on the paid invocation path (free with MEMORY_API_KEY, otherwise pay and retry with the SAME arguments plus payment_signature), but gives no guidance on when to choose this over sibling tools such as memory_get or memory_history, nor that memory_prepare must run first to obtain nonce/timestamp/signature.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_storeAInspect
[Wicked Memory] Store a memory (free, fair-use rate limited). A real embedding is computed at write time. Run memory_prepare with operation 'store' and these same arguments first.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Up to 20 short tags. | |
| nonce | Yes | From memory_prepare (single use). | |
| source | No | Which agent/session wrote this. | |
| wallet | Yes | Your agent's 0x wallet address. | |
| content | Yes | Text to remember (max 16 KB). | |
| metadata | No | Free-form JSON object (max 8 KB). | |
| signature | Yes | Your wallet's signature over memory_prepare's message_to_sign. | |
| timestamp | Yes | From memory_prepare. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the rate-limit scheme ('free, fair-use rate limited') and a behavioral trait beyond the schema ('a real embedding is computed at write time'), which is meaningful context for a write operation. It does not state durability, whether writes are idempotent, or what the response contains, but the annotation-free gaps are partially covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences that front-load the purpose and immediately follow with the precondition. The '[Wicked Memory]' prefix is mildly redundant with the tool name, keeping it from a 5, but there is no waste otherwise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter write tool with no annotations and no output schema, the definition covers the critical cross-tool precondition and the embedding side effect. It does not explain the return value or failure modes (e.g., nonce reuse, signature mismatch), but the schema and the memory_prepare reference fill most of the gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 8 parameters including the memory_prepare-derived nonce, timestamp, and signature. The description adds only the cross-tool instruction to fetch these from memory_prepare, which is moderately useful but not new field syntax. Baseline 3 applies when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Store a memory') and distinguishes itself from siblings like memory_search/memory_get/memory_update. The bracket-prefixed namespace and 'a real embedding is computed at write time' further pin down what happens, so an agent can tell this is the write path of the memory family without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a concrete required precondition: 'Run memory_prepare with operation "store" and these same arguments first.' That is a clear when-to-use signal and names the sibling to call beforehand. It stops short of saying when NOT to use it (e.g., instead of memory_update for existing records), so it falls just below a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_updateAInspect
[Wicked Memory] Update without overwriting: creates a new version and closes the old one (valid_until / superseded_by). Omitted fields carry over; only the current version can be updated (409 otherwise).
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Replacement tags. | |
| nonce | Yes | From memory_prepare (single use). | |
| source | No | New source label. | |
| wallet | Yes | Your agent's 0x wallet address. | |
| content | No | New text (re-embedded). Provide at least one of content/tags/metadata/source. | |
| metadata | No | Replacement metadata object. | |
| memory_id | Yes | UUID of the CURRENT version to supersede. | |
| signature | Yes | Your wallet's signature over memory_prepare's message_to_sign. | |
| timestamp | Yes | From memory_prepare. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and discloses key mutation semantics: creates a new version, closes the old one via valid_until/superseded_by, omitted fields carry over, and a 409 error if updating a non-current version. It does not mention auth requirements (nonce/signature from memory_prepare) or rate limits, but those are covered by the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste. The versioning differentiator is front-loaded, followed by the carry-over rule and error condition, making the key behavior immediately clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a versioned mutation tool with no output schema and no annotations, the description covers versioning, partial updates, and error conditions well. It omits any mention of the return value (e.g., the new version ID) and does not reference the memory_prepare dependency, though the schema documents the nonce parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds meaningful semantics beyond the schema by stating that omitted fields carry over, clarifying partial-update behavior for content, tags, metadata, and source.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (update) and resource (memory), and immediately clarifies the non-overwriting versioning behavior, distinguishing it from memory_store (which creates new memories) and memory_delete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by explaining versioning and the constraint that only the current version can be updated (409 otherwise). However, it does not explicitly name alternatives like memory_store or memory_delete, nor does it state when-not-to-use conditions beyond the current-version restriction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
momentum_scoreCInspect
[Trading Data API] Multi-asset momentum verdict (bias, confidence, thesis, entry/invalidation/targets, signal readings) from the oracle.py pipeline, run on a separate Python service — Multi-asset momentum verdict (bias, confidence, thesis, entry/invalidation/targets, signal readings) from the oracle.py pipeline, run on a separate Python service. Scoped to 10 assets.
Example: /v1/momentum-score?symbol=BTC&timeframe=1h
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Required. One of: BTC, ETH, SOL, SUI, NVDA, IBIT, COIN, QQQ, TQQQ, DIA. | |
| timeframe | No | Optional. 15m, 1h, 4h, 1D, 1W (default 1h). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does add two useful facts: the verdict is produced by the oracle.py pipeline on a separate Python service, and the tool is scoped to 10 assets. But it says nothing about latency, auth requirements, rate limits, staleness of the verdict, or failure behavior for an out-of-scope symbol.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is duplicated almost verbatim, wasting roughly half the text. The pipeline/scoping detail is buried inside that copy instead of being front-loaded, and the only unique content (the example) sits at the end.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must carry return-value information — and it does enumerate the verdict fields, which is genuinely helpful. But it omits how to interpret the verdict (signal thresholds, confidence scale) and gives no usage context, leaving the definition only minimally complete for an analytics tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters are self-documenting (enumerated symbol set, typical timeframe values with default). The description's example query restates the parameters but adds no semantics beyond the schema, which is the expected baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (momentum verdict) and enumerates its outputs (bias, confidence, thesis, entry/invalidation/targets, signal readings), so an agent can tell it is a momentum-analytics tool rather than a raw price feed. However, it never distinguishes itself from momentum-adjacent siblings like funding_oi, long_short_ratio, or sentiment, and the statement is delivered twice.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to reach for this tool versus sentiment, ohlcv, atr, volatility, or the other analytics siblings. The only usage hint is a URL example showing symbol/timeframe parameters, which shows how to call it but not when.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ohlcvBInspect
[Trading Data API] OHLCV candles (oldest-first) for crypto or stocks — OHLCV candles (oldest-first) for crypto or stocks. Routes to Alpaca SIP / Alpaca-crypto / Coinbase.
Example: /v1/ohlcv?symbol=NVDA&timeframe=1h&limit=100
| Name | Required | Description | Default |
|---|---|---|---|
| class | No | Optional. stock|crypto for non-curated symbols. | |
| limit | No | Optional. Candles to return (default 100, max 300). | |
| symbol | Yes | Required. e.g. BTC, NVDA, SPY. | |
| timeframe | No | Optional. 1m,5m,15m,30m,1h,2h,4h,6h,12h,1D,1W (default 1h). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the full burden. It does disclose two useful traits — result ordering (oldest-first) and upstream routing (Alpaca SIP / Alpaca-crypto / Coinbase) — but says nothing about auth requirements, rate limits, symbol-not-found error behavior, or what happens when limit exceeds the max of 300.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first clause is duplicated verbatim ('OHLCV candles (oldest-first) for crypto or stocks' twice), which is pure waste. The example call is genuinely useful and the routing sentence is short, but the repetition undercuts an otherwise tight definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description should characterize the return payload, yet it never enumerates the candle fields (open/high/low/close/volume/timestamp) or the response envelope. Ordering is covered; shape and error cases are not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so symbol, timeframe, limit, and class are already fully documented with defaults and ranges. The example URL reinforces format but adds no semantics beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (OHLCV candles) and a distinguishing attribute (oldest-first, crypto or stocks), which is more than the name alone conveys. However it does not differentiate from the sibling `price` tool, which likely returns a current quote, leaving overlap unaddressed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus `price`, `orderbook`, or `volatility` — all close siblings in the same market-data family. The mention of routing to Alpaca/Coinbase is implementation detail, not a use-condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
orderbookCInspect
[Trading Data API] Top-of-book depth + spread (bps) from Binance, Bybit, or Hyperliquid. — Top-of-book depth + spread (bps) from Binance, Bybit, or Hyperliquid.
Example: /v1/orderbook?symbol=BTC&exchange=binance&depth=10
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | Optional. Levels per side (default 10, max 50). | |
| symbol | Yes | Required. Base crypto symbol (e.g. BTC). | |
| exchange | No | Optional. binance (default), bybit, or hyperliquid. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, and it discloses almost nothing: no auth requirements, no rate limits, no data freshness/refresh semantics, and no statement of what is returned beyond 'depth + spread'. The 'spread (bps)' unit is the one genuinely useful behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is repeated verbatim before the example, so roughly half the text is dead weight. Front-loading is fine, but the duplication makes the definition look unedited rather than deliberately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-annotation, no-output-schema market-data tool, the description should at least describe the shape of the response (bid/ask levels per side, spread in bps) and any limits. It stops at a one-line summary plus an example, leaving the agent to guess at return structure and freshness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents symbol, exchange, and depth (default 10, max 50), which sets the baseline at 3. The embedded example URL restates the same parameter names without adding format or constraint detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete resource (top-of-book depth and spread in bps) and the supported venues (Binance, Bybit, Hyperliquid), so the agent knows what data comes back. However, it never distinguishes this from close siblings such as price, ohlcv, or liquidity_levels, and the sentence is literally duplicated, which wastes the strongest positioning slot.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance at all — nothing says to prefer this over price/ohlcv when the agent needs current bid/ask imbalance or spread rather than candles. No exclusions, prerequisites, or alternatives are named despite a large sibling set covering adjacent market data.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall_create_routeAInspect
[x402 Paywall] Paywall a new endpoint with x402 pay-per-call, settled in USDC straight to payTo. With upstreamUrl, paid requests are proxied to your backend. Applies live within ~20s (needs PAYWALL_API_KEY).
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | Route path, e.g. "/weather". | |
| asset | No | Payment token contract; defaults to USDC on the network. | |
| payTo | Yes | Your payout wallet (0x…). Settlement pays here directly; nothing is custodied. | |
| price | Yes | Decimal USD amount, e.g. "0.01" or "$0.01". | |
| method | No | Default GET. | |
| network | Yes | CAIP-2 id: Base mainnet eip155:8453, Base Sepolia eip155:84532. | |
| description | No | Up to 200 chars: letters, digits, space . _ - | |
| upstreamUrl | No | Your https backend. Omit for the demo confirmation payload. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses that settlement is USDC direct to payTo, that upstreamUrl proxies paid requests to a backend, that changes go live in ~20s, and that PAYWALL_API_KEY is required. It does not describe reversibility or the response, but the operational profile is unusually well surfaced for an unannotated tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, zero filler, front-loaded with the core action followed by settlement/proxy behavior and then the timing/auth constraint. Every sentence carries distinct information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-param create tool with no annotations and no output schema, the description covers purpose, side effects, latency, auth, and settlement flow. The only gap is return-value/confirmation behavior, which is minor since no output schema is declared.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3, but the description adds meaning beyond the schema by explaining what upstreamUrl actually does (proxies paid requests to your backend) and confirming USDC settlement to payTo. This clarifies the two most consequential params rather than merely restating them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Paywall a new endpoint with x402 pay-per-call.' The 'new endpoint' framing distinguishes it from paywall_update_route/paywall_delete_route/paywall_list_routes, but it never names those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance and no reference to alternatives such as paywall_import_routes or paywall_update_route. The agent must infer the create-vs-update-vs-import choice from the name alone, and nothing states prerequisites or exclusions beyond the API key note.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall_delete_routeAInspect
[x402 Paywall] Remove a paywalled route; applies within ~20s (needs PAYWALL_API_KEY).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Route id from paywall_list_routes. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses the ~20s propagation delay and that PAYWALL_API_KEY is required, which is real behavioral context beyond the schema. However, for a destructive operation it omits irreversibility, confirmation requirements, and effects on in-flight traffic.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero waste: purpose first, followed by the two operational caveats. Appropriately sized for a one-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and no annotations, the description covers the essential calling context: what it does, the auth requirement, and the propagation timing. It stops short of addressing destructive/irreversible semantics, which a delete tool could reasonably note.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; the sole parameter is documented as 'Route id from paywall_list_routes'. The description adds no meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Remove a paywalled route') and clearly distinguishes itself from siblings like paywall_create_route, paywall_update_route, paywall_import_routes, and paywall_list_routes. An agent can select it without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'Remove a paywalled route' and the schema's reference to paywall_list_routes as the id source, but there is no explicit when-to-use versus alternatives (e.g., update vs delete) or precondition guidance. Adequate but not instructive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall_get_tenantBInspect
[x402 Paywall] Your tenant record (needs PAYWALL_API_KEY).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It does disclose one genuinely useful fact outside the (empty) schema: the call requires PAYWALL_API_KEY. However, it says nothing about whether the operation is read-only, what the tenant record contains, or how auth failures surface.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the grouping tag '[x402 Paywall]' front-loaded and the auth prerequisite appended. Nothing is wasted, though the terse phrasing leaves the reader with only a name-level understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description is the only source of information about this call, and it stops short of describing what a tenant record contains or what happens on a missing/invalid key. Adequate for a zero-parameter read, but thin for a tool whose output shape is otherwise undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is no parameter semantics to convey; the baseline for a parameterless tool is 4. The description correctly implies no inputs are required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (get) and resource (tenant record) and adds the scoping word 'Your,' clarifying this returns the caller's own tenant rather than an arbitrary one. It is clear but offers no explicit differentiation from the other paywall_* siblings beyond the resource name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of alternatives, and no conditions under which this should or should not be called. The only guidance is the parenthetical prerequisite '(needs PAYWALL_API_KEY)', which is a requirement rather than usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall_import_routesAInspect
[x402 Paywall] Bulk upsert routes keyed on (method, path) — paywall a whole API in one call (needs PAYWALL_API_KEY).
| Name | Required | Description | Default |
|---|---|---|---|
| routes | Yes | Route objects, same fields as paywall_create_route. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose the two most important traits: PAYWALL_API_KEY is required, and upsert is keyed on (method, path). It does not say whether routes omitted from the payload are deleted or preserved, nor anything about error/partial-failure behavior, which matters for a bulk mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the tag, verb, key, and payoff, with the auth caveat appended compactly. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-param bulk mutation with a fully covered schema and no output schema, the description covers purpose, auth, and keying adequately, but leaves the critical merge-vs-replace semantics and return behavior unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single 'routes' parameter is fully documented field-by-field, so baseline 3 applies. The description's keying note adds minor meaning but does not extend the per-field documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (bulk upsert) and resource (routes) plus the keying semantics (method, path), and 'paywall a whole API in one call' cleanly distinguishes it from the single-route siblings paywall_create_route and paywall_update_route.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Bulk upsert ... a whole API in one call' clearly signals the context (many routes at once) and names the auth prerequisite, but it never explicitly routes the agent to paywall_create_route/paywall_update_route for single-route cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall_list_routesBInspect
[x402 Paywall] List your paywalled routes (needs PAYWALL_API_KEY).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It usefully discloses the authentication requirement (PAYWALL_API_KEY), which is real behavioral context, but says nothing about scope of results, pagination, or filtering. A read operation is implied but not stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with the namespace tag front-loaded and the auth caveat in parentheses. Efficient, though the namespace bracket is somewhat redundant with the tool name prefix.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, no-output-schema listing tool, the description covers the essentials: what it returns and that it needs an API key. It could add whether it returns all routes and in what form, but little else is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, which is the baseline 4 per the rubric. The empty schema leaves nothing to document, so no compensation is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('List your paywalled routes') and namespaces it under x402 Paywall. It is distinguishable from siblings like paywall_list_settlements by the 'routes' resource, though it does not explicitly contrast them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance or routing against alternatives such as paywall_create_route or paywall_list_settlements. The reader must infer that this tool retrieves the user's registered routes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall_list_settlementsBInspect
[x402 Paywall] Your real on-chain USDC settlements (earnings) (needs PAYWALL_API_KEY).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Default 50, max 200. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose the auth requirement and that data is real on-chain USDC settlement records. It does not state pagination behavior, ordering, or whether results are read-only (implied by 'list' but not stated), leaving notable gaps for an annotation-free tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with the module tag front-loaded and the auth caveat trailing. It is appropriately sized, though the parenthetical '(earnings)' is slightly redundant with 'USDC settlements'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no annotations, so the description should do more, e.g., describe the returned settlement shape or pagination. For a simple one-param list endpoint it is barely adequate but leaves the read semantics and result format to inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with a single 'limit' param that the schema already documents as 'Default 50, max 200'. The description adds nothing beyond the schema, so the baseline 3 for full coverage is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource ('real on-chain USDC settlements') and clarifies them as 'earnings', so an agent understands this returns settlement data rather than routes or tenant config. However, the listing/aggregation verb is only implied by the name, and it doesn't explicitly distinguish itself from paywall_list_routes beyond the resource noun.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only guidance is the prerequisite '(needs PAYWALL_API_KEY)', which is helpful for auth. There is no statement of when to use this versus other paywall list endpoints, nor any conditions on when not to call it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall_signupAInspect
[x402 Paywall] Create a tenant account. Returns a Bearer apiKey ONCE — store it and set PAYWALL_API_KEY. Rate-limited to 5/hour per IP.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Letters, digits, space . _ - (max 100). | |
| slug | Yes | Lowercase a-z0-9 and hyphens, 2-40 chars; becomes your mount path prefix /{slug}. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and delivers strong disclosures: the key is returned ONCE (a non-recoverable, effectively non-idempotent output) and the call is rate-limited to 5/hour per IP. It stops short of stating what happens on duplicate name/slug or whether the account is immediately active, so it is not fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with purpose, then the critical return-value caveat, then the rate limit. Zero waste; each clause carries actionable information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-param, no-output-schema tool, the description covers the one return value an agent must know (the one-time apiKey) and the operational limit. It lacks error/conflict behavior and any note on whether credentials are required, which is a minor but real gap given there are no annotations to fall back on.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema itself documents both name and slug constraints including the slug-to-mount-path mapping. The description adds no parameter meaning beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Create a tenant account') and scopes it with the [x402 Paywall] prefix, clearly distinguishing it from the read-side sibling paywall_get_tenant. An agent can tell immediately this is the account-provisioning tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the purpose plus the follow-up instruction to store the key and set PAYWALL_API_KEY, which tells the agent what to do after calling. However, it names no alternatives or prerequisites (e.g. that this must precede authenticated paywall_* calls), leaving the when-to-use routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall_update_routeAInspect
[x402 Paywall] Partial update of a route (e.g. change price or payout wallet); applies live within ~20s (needs PAYWALL_API_KEY).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Route id from paywall_list_routes. | |
| path | No | Route path, e.g. "/weather". | |
| asset | No | Payment token contract; defaults to USDC on the network. | |
| payTo | No | Your payout wallet (0x…). Settlement pays here directly; nothing is custodied. | |
| price | No | Decimal USD amount, e.g. "0.01" or "$0.01". | |
| method | No | Default GET. | |
| network | No | CAIP-2 id: Base mainnet eip155:8453, Base Sepolia eip155:84532. | |
| description | No | Up to 200 chars: letters, digits, space . _ - | |
| upstreamUrl | No | Your https backend. Omit for the demo confirmation payload. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose two genuinely actionable traits: an auth requirement (PAYWALL_API_KEY) and propagation latency (changes go live in ~20s). It stops short of saying what happens to fields that are omitted in a partial update, or whether the change is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence: the tool family tag, the operation, examples of what changes, the live-propagation caveat, and the auth prerequisite. No filler or restatement of the name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 9-parameter mutation tool with no annotations and no output schema, the description covers purpose, auth, and propagation timing well. The remaining gap is PATCH semantics — whether omitted fields are left untouched or cleared — which an agent needs before performing a partial update.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter (id, path, asset, payTo, price, method, network, description, upstreamUrl) is already documented in the schema. The description only names two of the updatable fields as examples and adds no format or syntax detail beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ("Partial update of a route") and gives concrete examples of what can change (price, payout wallet). It implicitly separates itself from paywall_create_route/paywall_delete_route/paywall_list_routes via the update semantics, but never names an alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied — modify an existing route identified by id — and the prerequisite (needs PAYWALL_API_KEY) is stated, which is useful. However there is no explicit when-to-use/when-not guidance or routing to a sibling tool for related operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
priceCInspect
[Trading Data API] Current spot price for crypto (Coinbase) or US equities/ETFs (Alpaca SIP), via the shared routing layer. — Current spot price for crypto (Coinbase) or US equities/ETFs (Alpaca SIP), via the shared routing layer.
Example: /v1/price?symbol=BTC
| Name | Required | Description | Default |
|---|---|---|---|
| class | Yes | Optional. stock|crypto — required for symbols outside the curated list. | |
| symbol | Yes | Required. e.g. BTC, ETH, SUI, NVDA, SPY. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It discloses the data routing layer and source venues (Coinbase, Alpaca SIP), which is genuinely useful context, but says nothing about authentication requirements, rate limits, quote freshness/delay, or behavior for unknown symbols.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description body is duplicated verbatim ('Current spot price for crypto ... shared routing layer' appears twice), wasting roughly half the text. The remaining content is front-loaded and useful, but the repetition is a clear structural defect.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should ideally indicate the return shape (price, timestamp, currency) and error behavior for invalid symbols. It is adequate for a two-parameter quote tool but leaves the agent guessing at the response format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already documented (class = stock|crypto, symbol examples). The description's example URL adds the call shape but does not explain the class parameter's role or the curated-list fallback beyond what the schema states, so the baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Current spot price for crypto ... or US equities/ETFs') and names the underlying venues (Coinbase, Alpaca SIP), which tells an agent this is a quote lookup rather than a candle/history call. It does not explicitly name the sibling it competes with (e.g. ohlcv, market_overview), so differentiation is inferential rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this versus alternatives such as ohlcv, market_overview, or orderbook. The example URL implies a simple lookup use case, but there is no stated condition, prerequisite, or exclusion anywhere in the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
protocol_health_list_protocolsCInspect
[Protocol Health Oracle] All tracked protocols with their latest health score and verdict. — All tracked protocols with their latest health score and verdict.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Optional. Rows to return (default 100, max 2000). | |
| offset | No | Optional. Pagination offset (default 0). | |
| min_tvl | No | Optional. Only protocols with TVL >= this USD amount. | |
| category | No | Optional. Filter by DefiLlama category. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure and largely does not meet it. It conveys only that results are current ('latest'), saying nothing about pagination behavior, default/max result sizes, auth or rate limits, or what a 'verdict' value looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is repeated verbatim after an em dash, so half the text is pure duplication with zero information gain. There is no other structure or front-loading to compensate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a filtered list tool with four optional parameters, no annotations, and no output schema, the description should at least characterize the returned rows and pagination strategy. It provides no return-value context and no guidance on how the filters interact, leaving the agent to guess at output shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with limit, offset, min_tvl, and category all documented in the schema itself, so the baseline is 3. The description adds no parameter-level meaning beyond the schema (it does not clarify pagination interaction or filtering semantics).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource (all tracked protocols) and the payload (latest health score and verdict), so an agent can infer it is a bulk list of protocol health summaries. However, it never uses a verb and gives no differentiation from close siblings such as protocol_health_scoreboard or protocol_health_score, which presumably cover similar ground.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of alternatives, and no exclusions. Usage is only weakly implied by the phrase 'all tracked protocols', which suggests a broad listing rather than a targeted lookup, but nothing routes the agent between this and protocol_health_score / protocol_health_scoreboard.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
protocol_health_refresh_allCInspect
[Protocol Health Oracle] Force an immediate live re-score of all tracked protocols. — Force an immediate live re-score of all tracked protocols.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It conveys only that the operation bypasses caching ('force', 'live', 'immediate'), but not whether it is expensive, rate-limited, long-running, async, or whether it mutates shared state across all tracked protocols.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but wastes its entire budget by repeating the same sentence twice verbatim ('Force an immediate live re-score of all tracked protocols'), with no front-loaded differentiation or additional detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool this is minimally adequate: the core action is stated. Still missing is what the refresh affects, whether it runs synchronously, and how results are surfaced (no output schema exists), which matters for a bulk forced re-score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters and the schema is trivially complete, so there is nothing for the description to clarify. Baseline 4 applies for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource ('force an immediate live re-score of all tracked protocols'), so the basic action is understandable. However, it does not distinguish this tool from close siblings like protocol_health_score, protocol_health_scoreboard, or protocol_health_sync_universe, leaving the agent to guess which refresh/score path applies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to invoke a forced refresh versus reading cached results via protocol_health_scoreboard, nor any precondition (e.g., rate limits, cost, or timing) for triggering a bulk live re-score. The word 'force' implies bypassing a cache but the description never says when that is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
protocol_health_scoreCInspect
[Protocol Health Oracle] Latest health score for one protocol: components (GitHub activity, TVL trend, treasury), source details, and score history. — Latest health score for one protocol: components (GitHub activity, TVL trend, treasury), source details, and score history.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Required (path). The protocol's defillama_slug, e.g. lido. | |
| history | No | Optional. Number of historical scores to include (default 10, max 100). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does add real value by enumerating the returned components and score history in the absence of an output schema, but it omits whether the read requires auth, how fresh the score is, or what happens for an unknown slug.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description text is duplicated verbatim (the sentence appears twice, separated only by a dash), which is pure waste and suggests a generation artifact. Aside from that redundancy the single sentence is reasonably front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description is the only source of behavioral context; it partly compensates by listing the returned components, but it says nothing about error cases, freshness, or how it relates to the scoreboard/refresh siblings, leaving meaningful gaps for a two-parameter oracle tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters are fully documented in the schema (slug as defillama_slug, history with default 10 / max 100). The description adds no parameter-level detail beyond that, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource ('latest health score for one protocol') and enumerates what the score comprises (GitHub activity, TVL trend, treasury, source details, history). It does not, however, distinguish itself from close siblings like protocol_health_scoreboard or protocol_health_list_protocols, so an agent must infer which one returns a single protocol's score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance, no mention of alternatives, and no stated preconditions (e.g., that the protocol must first be tracked via protocol_health_track_protocol). The description only says what is returned, leaving selection between the four protocol_health_* siblings to guesswork.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
protocol_health_scoreboardCInspect
[Protocol Health Oracle] Public teaser: protocol name, score, and verdict only (no components/history) across the full tracked universe — auto-ingested from DefiLlama (TVL > $1M) plus curated protocols. — Public teaser: protocol name, score, and verdict only (no components/history) across the full tracked universe — auto-ingested from DefiLlama (TVL > $1M) plus curated protocols.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Optional. Rows to return (default 100, max 2000). | |
| offset | No | Optional. Pagination offset (default 0). | |
| min_tvl | No | Optional. Only protocols with TVL >= this USD amount. | |
| category | No | Optional. Filter by DefiLlama category, e.g. "Liquid Staking". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose the data provenance (DefiLlama, TVL > $1M, plus curated protocols) and precisely what fields are omitted (components/history), which is genuine behavioral context, but it says nothing about auth/paywall requirements, rate limits, or ordering.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is duplicated verbatim — the same sentence appears twice, wasting roughly half the text. The content is front-loaded and otherwise tight, but the copy-paste repetition is a concrete structural defect.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-annotation, no-output-schema listing tool, the description does convey the returned shape (name, score, verdict) and the coverage universe. However, it omits filtering behavior, pagination semantics, and any indication of the paywall boundary implied by 'teaser', leaving gaps an agent must guess at.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters (limit, offset, min_tvl, category) are already documented in the schema. The description adds no syntax, default, or interaction detail beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (protocol health scoreboard) and scope (full tracked universe, name/score/verdict only). It distinguishes itself from single-protocol siblings like protocol_health_score by saying it covers the whole universe, though it never names those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'public teaser' and 'no components/history' hints that a richer tier exists, but the description never says when to use this versus protocol_health_score or protocol_health_list_protocols, nor when to avoid it. No explicit routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
protocol_health_sync_universeAInspect
[Protocol Health Oracle] Force an immediate sync of the tracked-protocol universe from DefiLlama (TVL > $1M) — Force an immediate sync of the tracked-protocol universe from DefiLlama (TVL > $1M). Runs automatically once/day; use this to trigger it on demand.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It usefully discloses that this is a forced/on-demand mutation of a shared dataset with a built-in daily cadence and a $1M tracking threshold, but it says nothing about whether the call blocks, how long a sync takes, what happens on concurrent or repeated triggers, or what it returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core statement is front-loaded and the cadence note earns its place, but the first sentence is duplicated verbatim, wasting roughly half the text and suggesting a generation artifact rather than deliberate emphasis.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter trigger with no output schema and no annotations, the description covers what it does, its scope and its cadence. It omits the operationally relevant facts an agent would want before invoking a forced sync — blocking behavior, duration, deduplication — which matters more here than for a read-only sibling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema takes zero parameters, so there are no parameter semantics to document and the baseline of 4 applies. The description does not misleadingly imply any inputs are available.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (sync), a specific resource (tracked-protocol universe), its source (DefiLlama) and its scope filter (TVL > $1M). It is clearly distinguishable from sibling readers like protocol_health_score, but it never contrasts itself with the closest sibling, protocol_health_refresh_all, leaving that distinction to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Runs automatically once/day; use this to trigger it on demand" gives a concrete when-to-use condition and implies the tool is only needed outside the daily cadence. It stops short of naming an alternative (e.g. refresh_all) or stating any preconditions, so it is clear context but without explicit alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
protocol_health_track_protocolCInspect
[Protocol Health Oracle] Track a new protocol — Track a new protocol. Scored immediately from live GitHub + DeFiLlama data.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Display name, e.g. "Lido". | |
| chain | No | Optional. Default "ethereum". | |
| github_repo | Yes | owner/repo, e.g. lidofinance/core. | |
| defillama_slug | Yes | DeFiLlama protocol slug, e.g. lido. | |
| treasury_address | No | Optional. On-chain treasury address to score (Etherscan balance). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It discloses only that scoring happens immediately from GitHub + DeFiLlama data; it says nothing about persistence, idempotency, auth requirements, or what happens if the protocol already exists. For a mutation tool this is a substantial gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence 'Track a new protocol' is duplicated back-to-back, and the '[Protocol Health Oracle]' prefix is marketing filler rather than information. Structure is not front-loaded with anything the agent needs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description should explain what the tool creates or persists and what the caller receives. It omits both, leaving the agent unable to predict the tool's effect beyond 'it scores immediately'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters are already documented with examples in the schema. The description's mention of GitHub and DeFiLlama data loosely maps to the github_repo and defillama_slug params but adds no syntax or format detail beyond what the schema provides. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a verb and resource ('Track a new protocol') but immediately repeats it verbatim after the '[Protocol Health Oracle]' tag, adding no information. It does not differentiate from siblings like protocol_health_score, protocol_health_list_protocols, or protocol_health_sync_universe, so an agent cannot tell them apart without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no mention of alternatives such as protocol_health_score or protocol_health_refresh_all. The agent is left to infer the context entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ratesCInspect
[Trading Data API] US Treasury yield curve (1M–30Y) + recession-indicator spreads (10y-2y, 10y-3m), from FRED. — US Treasury yield curve (1M–30Y) + recession-indicator spreads (10y-2y, 10y-3m), from FRED.
Example: /v1/rates
| Name | Required | Description | Default |
|---|---|---|---|
| series | No | Optional. A specific FRED series id (e.g. DGS10) for a single value. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It names the data source (FRED) but says nothing about whether it is a read, rate limits, auth requirements, caching, or the shape of the response.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is duplicated verbatim (repeated after a dash separator), which is pure waste and makes the description look malformed. The one useful piece, the example endpoint, is buried at the end.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should carry more load. It conveys the data domain and source but omits return format, defaults when 'series' is omitted, and the safety/read profile, leaving real gaps for a data-fetch tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the single 'series' parameter is already fully documented in the schema. The description adds only the data domain (1M–30Y curve, spread series) but no extra semantics about how 'series' interacts with it, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (US Treasury yield curve 1M–30Y plus recession-indicator spreads 10y-2y/10y-3m) and its source (FRED). An agent can tell what data this returns, though it offers no explicit differentiation from sibling data tools like macro_calendar or market_overview.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of alternatives among the many sibling tools, and no exclusions or prerequisites. The agent is left to infer that this is the yield-curve lookup versus e.g. macro_calendar.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
registry_create_api_keyAInspect
[Wicked Registry] Step 2 of getting a free API key. Submit the wallet, the timestamp and YOUR signature over the message from registry_onboarding_message(action=api_key). The key (wr_...) is returned once - store it and pass it as api_key to registry_search_tools / registry_tool_detail. Up to 3 active keys per wallet; past the daily cap calls fall back to x402.
| Name | Required | Description | Default |
|---|---|---|---|
| label | No | Optional label for the key. | |
| wallet | Yes | 0x wallet that signed the message. | |
| signature | Yes | 0x-prefixed ECDSA signature over the message. | |
| timestamp | Yes | The timestamp returned with the message. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden, and it does: the key is returned only once, must be stored, has a wr_ prefix, is capped at 3 active keys per wallet, and past the daily cap calls fall back to x402. These are non-obvious operational constraints an agent could not infer from the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the step and purpose, then constraints, then downstream usage in dense sentences with no filler. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description still covers the return value (wr_... key, single display), storage obligation, rate/limit behavior, and fallback path. Nothing needed to call this correctly and use the result is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description goes beyond the schema by clarifying that the signature must be YOUR (caller's) signature and that it signs the message produced by registry_onboarding_message, and that timestamp is the one returned with that message — meaningful provenance the schema fields do not state.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('create' an 'API key') and frames it as 'Step 2' of a multi-step flow, explicitly distinguishing it from Step 1 (registry_onboarding_message). An agent can tell exactly what this does and where it sits in the sequence without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states the inputs required and their origin ('wallet, the timestamp and YOUR signature over the message from registry_onboarding_message(action=api_key)'), and names the downstream consumers (registry_search_tools / registry_tool_detail) so the agent knows when to reach for this versus the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
registry_featured_toolsBInspect
[Wicked Registry] Top scored active tools. Public and free.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses access characteristics ('Public and free' – no auth or payment required), but says nothing about how many results are returned, how 'top scored' is computed, ordering, or refresh/caching behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short fragments, fully front-loaded, with zero filler. Every word carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless listing tool with no output schema, the description should at least characterize the return set (size, ordering). It conveys scope and access but leaves the result shape entirely unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4. There is nothing for the description to clarify beyond the fact that no filtering input is accepted, which is implicit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource and scope: top-scored active tools from the Wicked Registry. An agent can identify it as a ranked-listing tool, though it doesn't explicitly contrast itself with sibling registry_search_tools or registry_tool_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no indication of when to call this versus the other registry_* siblings (search, detail, badge, report). No prerequisites or exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
registry_lookupAInspect
[Wicked Registry] Free lookup: find a tool's id and headline reliability score by name or URL fragment (q), exact endpoint URL (endpoint) or category. No key or payment. Use it to check a tool before your agent pays it; follow with registry_tool_badge or registry_tool_detail.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Name or URL fragment, at least 2 characters. | |
| limit | No | 1-25, default 10. | |
| category | No | ||
| endpoint | No | Exact endpoint URL of the tool you are about to call. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does add real behavioral context: 'Free lookup... No key or payment,' which tells the agent no auth is needed. It says nothing about rate limits, result ordering, or whether the headline score is cached/live, so the disclosure is partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense, front-loaded sentences that cover purpose, cost model, use case, and follow-up tools with no filler. The parenthetical parameter list makes it slightly crowded but still efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, and the description compensates by naming the returned fields ('id and headline reliability score'). With no annotations and 75% schema coverage, it is largely self-sufficient; only the limit parameter and any ordering/pagination behavior remain undescribed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 75%, so most parameters are already documented in the schema. The description restates q, endpoint and category semantics but adds little syntax or format detail beyond the schema, and omits the limit parameter entirely. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete verb and resource ('find a tool's id and headline reliability score') and enumerates the three lookup keys (q, endpoint, category), so an agent knows exactly what it returns. It does not, however, differentiate itself from the close sibling registry_search_tools, which sounds like an overlapping discovery tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit context ('check a tool before your agent pays it') and a next-step chain ('follow with registry_tool_badge or registry_tool_detail'). It stops short of saying when NOT to use it or how it differs from registry_search_tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
registry_onboarding_messageAInspect
[Wicked Registry] Step 1 of self-onboarding. Returns the exact message YOU must sign (EIP-191 personal_sign) plus its timestamp, valid for about an hour. action=api_key (needs wallet) for a free API key, or action=register (needs name and endpoint_url) to list your own tool. This tool never signs anything.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Tool name (required for register). | |
| action | Yes | ||
| wallet | No | Your 0x wallet address (required for api_key). | |
| endpoint_url | No | Tool endpoint URL (required for register). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does well: it discloses the return content (a message plus timestamp), the ~1 hour validity window, and that it never signs anything. It omits what the caller does with the signed message (the submit step), which is a meaningful gap in a no-annotation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the step and purpose, then the branch conditions, then a safety clarification. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema or annotations exist, so the description must (and largely does) cover the return value, validity, and per-action requirements. It stops short of describing the downstream step that consumes the signature.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is already 75%, but the description adds conditional meaning by binding wallet to api_key and name/endpoint_url to register, clarifying which params apply to which enum branch beyond the flat schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: returns the exact message the caller must sign (EIP-191 personal_sign) plus a timestamp. The 'Step 1 of self-onboarding' framing positions it distinctly from write siblings like registry_create_api_key and registry_register_tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly routes between the two actions: action=api_key (needs wallet) for a free API key, action=register (needs name and endpoint_url) to list a tool. That is clear when-to-use guidance, though it never names the follow-up tool or states when not to use this one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
registry_register_toolAInspect
[Wicked Registry] Register a tool you own so it gets real synthetic checks and a live score. Get the exact message to sign from registry_onboarding_message(action=register), sign it with owner_wallet, then call this. This tool never signs.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| category | Yes | ||
| protocol | Yes | "x402", "mcp" or "rest". | |
| signature | Yes | 0x-prefixed ECDSA signature over the registration message. | |
| timestamp | Yes | ISO 8601 timestamp used in the signed message (within an hour of the call). | |
| schema_url | No | Optional JSON Schema URL enabling the schema-conformance score. | |
| description | Yes | ||
| endpoint_url | Yes | Live, publicly reachable endpoint. | |
| owner_wallet | Yes | 0x wallet that signed the registration message. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses the signing model ('This tool never signs'), implying keys stay client-side, but omits idempotency/re-registration behavior, permission requirements for owner_wallet, rate limits, and what side effects registration triggers (synthetic checks, live score). Partial disclosure for a mutation tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences with the benefit and the workflow front-loaded; the 'never signs' caveat is placed last as the key security note. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no annotations, so the description must cover return values and mutation semantics. It covers the signing workflow well but says nothing about what registration returns (tool ID, score) or how duplicate/updated registrations are handled, leaving real gaps for a 9-param mutation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67%, and the schema already documents protocol, signature, timestamp, schema_url, endpoint_url, and owner_wallet. The description reinforces the signature/owner_wallet relationship but adds no format, validation, or meaning for the undocumented name, category, and description params. Baseline 3, as the schema does most of the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Register a tool you own') plus the outcome ('real synthetic checks and a live score'), which separates it from siblings like registry_report_tool and registry_lookup. An agent immediately knows this is the registration path, not a lookup or report path.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides an explicit ordered precondition: obtain the message via registry_onboarding_message(action=register), sign it with owner_wallet, then call this. It names the exact sibling and the argument needed, leaving no inference about when or how to invoke.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
registry_report_toolBInspect
[Wicked Registry] File a complaint about a tool's reliability or behaviour. Public, rate-limited; reviewed manually, never auto-suspends.
| Name | Required | Description | Default |
|---|---|---|---|
| reason | Yes | "downtime", "incorrect_response", "scam_or_abuse", "schema_violation" or "other". | |
| tool_id | Yes | The tool's Wicked Registry id. | |
| evidence | No | Optional note or URL. | |
| reporter | Yes | Your wallet address or another best-effort identifier. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It usefully discloses that the submission is public, rate-limited, manually reviewed, and never auto-suspends a tool, but it omits auth requirements and what the submission creates or returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short, front-loaded sentences with no waste; the purpose leads and the behavioral qualifiers follow compactly. Minor typo ("behaviour") but structure is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 4-parameter write tool with no annotations or output schema, the description covers purpose and key behavioral traits. It still leaves usage routing and auth/response expectations unaddressed, so it is adequate rather than complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters (including the reason values and optional evidence) are already documented in the schema. The description adds no parameter-level detail beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: "File a complaint about a tool's reliability or behaviour." An agent can identify the action, but the description does not explicitly differentiate this from registry siblings such as registry_register_tool or registry_tool_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance or comparison to alternatives. The sentence "Public, rate-limited; reviewed manually, never auto-suspends" describes behavior, not conditions that select this tool over its siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
registry_search_toolsAInspect
[Wicked Registry] Search x402/MCP tools by real reliability data (uptime, latency, schema conformance). Works via x402 (402 carries payment instructions) or a free API key (pass api_key, or set REGISTRY_API_KEY). No key yet? Call registry_onboarding_message then registry_create_api_key to get one yourself. For a quick free check of a known tool, use registry_lookup.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | "score" (default), "latency" or "recency". | |
| limit | No | 1-200, default 50. | |
| api_key | No | Free Wicked Registry API key (wr_...). Overrides REGISTRY_API_KEY. | |
| category | No | e.g. "data", "crypto". | |
| protocol | No | "x402", "mcp" or "rest". | |
| min_score | No | Minimum composite score 0-100; unchecked tools are excluded once set. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses the two auth paths (x402 with 402 payment instructions, or a free API key via param or REGISTRY_API_KEY) and the self-service key bootstrap. It does not cover rate limits, pagination, or result shape, which keeps it below 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with purpose, then auth mechanics, then the keyless recovery path and sibling routing. Every clause is actionable and nothing is repeated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-param, all-optional search tool with no output schema, the definition covers auth, ranking basis, and fallbacks well. It could still say more about default result shape or pagination behavior, but no output schema exists, so the gap is modest.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents sort, limit, category, protocol, min_score and api_key. The description adds only the api_key-overrides-env note, which the schema also states, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (search) and resource (x402/MCP tools) and qualifies the ranking signal (real reliability data: uptime, latency, schema conformance). It also distinguishes itself from the sibling registry_lookup, so an agent can route without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly routes alternatives: use registry_lookup for a quick free check of a known tool, and use registry_onboarding_message plus registry_create_api_key when no key exists. Both the when-to-use-this and when-to-use-something-else conditions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
registry_tool_badgeBInspect
[Wicked Registry] A tool's current composite reliability score. Public and free.
| Name | Required | Description | Default |
|---|---|---|---|
| tool_id | Yes | The tool's Wicked Registry id. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden; it does disclose the two behavioral facts that matter most for a lookup — public (no auth) and free (no cost). It says nothing about the score's scale, freshness, or error behavior when a tool_id is unknown.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the resource and followed by the access constraint. No filler, though the bracket prefix adds little.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description could have explained what the 'composite reliability score' actually is (scale, inputs, freshness). For a simple one-param read tool the core need is met, but the return value is left entirely to inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single tool_id parameter is already documented as 'The tool's Wicked Registry id.' The description adds no format or sourcing detail beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource and attribute — a tool's current composite reliability score — which clearly separates it from siblings like registry_tool_detail or registry_search_tools. It is a noun phrase rather than a verb phrase ('returns/gets'), but the intent is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Public and free' implies no barrier to use, but there is no statement of when to reach for this versus registry_tool_detail (which presumably returns the full record). No exclusions or alternative routing are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
registry_tool_detailAInspect
[Wicked Registry] One tool's full score breakdown, component history and recent real health checks. x402 or a free API key.
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | No | Free Wicked Registry API key (wr_...). Overrides REGISTRY_API_KEY. | |
| tool_id | Yes | Registry id from registry_lookup / registry_search_tools / registry_featured_tools. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses the auth/payment requirement ('x402 or a free API key') and what the call returns (score breakdown, component history, health checks). It does not explicitly state read-only behavior, which would be expected for a detail/lookup tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly packed sentences with the payload description front-loaded and the access note trailing. Minimal waste, though the '[Wicked Registry]' prefix is branding rather than informational content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without an output schema, the description does the work of enumerating the returned data, and the access requirement is covered. What remains unstated is return shape/format and any permission granularity, but for a simple two-parameter detail endpoint this is close to sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both api_key and tool_id are already documented in the schema, including the env-var override and the origin of the id. The description adds no syntax or format detail beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the specific resource (one registry tool) and enumerates the payload: full score breakdown, component history, and recent health checks. The retrieval verb is only implied, and it does not explicitly name sibling tools like registry_lookup or registry_search_tools to sharpen the boundary, though the schema's tool_id description partially compensates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'x402 or a free API key' communicates the access/payment path, which is useful, but there is no explicit when-to-use guidance versus registry_lookup or registry_search_tools. The routing to this tool is only implied indirectly through the tool_id parameter description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reputation_queryBInspect
[Wicked Reputation] Search/rank registered agents by tier, stake, reputation or slash history. Every filter is a typed query param.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | stake_amount | reputation_score | slash_count | registered_at, prefixed "-" (desc, default) or "+" (asc). | |
| tier | No | Exact tier name, e.g. "gold". | |
| limit | No | 1-200, default 20. | |
| max_stake | No | Maximum active stake (USDC). | |
| min_stake | No | Minimum active stake (USDC). | |
| min_reputation | No | Minimum reputation score. | |
| founding_member | No | True to only show founding members. | |
| min_slash_count | No | Minimum slash events (1 finds agents ever slashed). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. 'Search/rank' implies a read-only query operation, which is meaningful signal, but it omits pagination behavior beyond the raw limit param, auth/permission requirements, and the shape of results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with the verb and ranking dimensions front-loaded; no padding. The '[Wicked Reputation]' prefix is minor branding noise but does not obscure the core statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter query tool with no annotations and no output schema, the description covers what is being queried but says nothing about return format or result shape. The 100% schema coverage compensates for the filter documentation, but the missing output-schema burden is not picked up.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 8 filters including the sort prefix convention and limit range. The description's 'every filter is a typed query param' adds no meaning beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Search/rank) and resource (registered agents) with the dimensions being ranked (tier, stake, reputation, slash history). However, it does not differentiate itself from siblings like reputation_status, reputation_statement, reputation_tiers, or reputation_transparency, so an agent cannot tell which reputation tool to pick from the description alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage hint is 'Every filter is a typed query param,' which describes the schema rather than when to use the tool. There is no mention of when this is preferred over the sibling reputation_* tools, no prerequisites, and no exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reputation_statementBInspect
[Wicked Reputation] An agent's full position plus real event ledger (stakes, unstakes, withdrawals, slashes). Does not include WickedAPI call volume or fees — see the note field.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | The 0x wallet address. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses return composition and one important exclusion, which is genuine value, but says nothing about permissions/auth, whether the read is safe, or any rate limits — gaps a read tool with zero annotation coverage should ideally cover.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences, with the primary content (position + ledger) front-loaded and the exclusion appended. The '[Wicked Reputation]' tag prefix is mild noise but nothing is wasted or buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description must characterize returns; it names the ledger event types and one exclusion but omits formatting, pagination, or completeness guarantees. Adequate for a simple 1-param read tool, but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single parameter 'wallet' has 100% schema description coverage, so the schema already defines it fully. The description adds no syntax, format, or constraint detail for the parameter. Baseline 3 when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (an agent's full position) plus the concrete contents of the ledger (stakes, unstakes, withdrawals, slashes). It is distinguishable from siblings like reputation_query and reputation_status by content, though it doesn't explicitly name what makes it different from them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Adds a scoping exclusion ('Does not include WickedAPI call volume or fees — see the note field'), which implicitly routes the agent for those data points. But there is no explicit when-to-use guidance versus the several sibling reputation_* tools, leaving selection to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reputation_statusAInspect
[Wicked Reputation] An agent's current reputation: tier, active/unbonding stake, score, slash count, founding-member badge. http_status 404 means the wallet never registered — treat as tier 'unranked'.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | The 0x wallet address. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden, and it does add real behavioral value: it lists what the payload contains and, crucially, defines the 404 error semantic ('wallet never registered — treat as tier unranked'), which an agent could not infer from schema alone. It omits auth requirements and rate limits, keeping it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with zero filler: the first names the resource and its fields, the second front-loads the critical error-handling rule. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only single-parameter lookup with no output schema, the description supplies the return fields and error semantics, which is most of what an agent needs. The absence of any auth or read-only statement is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single 'wallet' parameter, so the schema already documents the 0x address format. The description adds nothing beyond that, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (retrieves) and resource (an agent's current reputation) and enumerates the returned facets: tier, active/unbonding stake, score, slash count, founding-member badge. This differentiates it from siblings like reputation_query, reputation_statement and reputation_tiers, though it never explicitly contrasts with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied (fetch a wallet's reputation), and the 404-handling note gives a concrete condition for interpreting the result, but there is no explicit when-to-use-this-vs-reputation_query/statement guidance or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reputation_tiersBInspect
[Wicked Reputation] Live tier thresholds and benefits (min stake, rate-limit multiplier, fee discount). Read at call time — thresholds are admin-configurable.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose that thresholds are admin-configurable and must be read fresh, which is real behavioral context, but it says nothing about auth requirements, rate limits, or whether results are cached — for a zero-annotation tool that leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the payload contents before the freshness caveat; every clause carries information. The bracketed namespace prefix is noise but small.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-input read tool with no output schema and no annotations, the description should describe the returned shape more fully. It names three benefit fields but not the overall structure or whether tiers are returned as a list, so an agent cannot fully anticipate the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate. Baseline 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete resource (tier thresholds and benefits) and enumerates the payload components (min stake, rate-limit multiplier, fee discount), which is far more specific than the name alone. It does not, however, name or distinguish itself from the nearby reputation_status / reputation_statement / reputation_query siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Read at call time" implies the tool should be invoked when current values are needed rather than relying on cached thresholds, which is useful implied guidance. There is no explicit when-to-use vs. an alternative, and no exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reputation_transparencyBInspect
[Wicked Reputation] Live transparency numbers: treasury address, custody model, unbonding cooldown, total stake, agents, slash events, founding-slot counts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the disclosure burden. It implies a passive read of public-facing protocol metrics (no side effects, no mutation), and the field list hints at sensitive surface area (custody model, slash events). However, it never states read-only status, auth requirements, or what 'Live' means in terms of refresh cadence, leaving real gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with the domain qualifier front-loaded and a colon-delimited field list. Every token carries information; no filler or repetition of the tool name's meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description does double duty as return-value documentation, which it handles well via the field list. But it omits any routing signal among the sibling reputation_* tools, so an agent choosing between them still lacks the information it needs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the schema has nothing to explain and the baseline is 4. The description's enumeration is about returned fields rather than inputs, which is appropriate here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (Wicked Reputation transparency numbers) and enumerates the exact data exposed — treasury address, custody model, unbonding cooldown, stake, agents, slash events, founding slots — which meaningfully distinguishes it in content from siblings like reputation_status or reputation_tiers. It lacks an explicit verb (e.g. 'returns'), but the scope is still clear enough for an agent to know what it fetches.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to call this versus the four sibling reputation_* tools, nor any stated prerequisites or exclusions. The agent must infer usage entirely from the field list. That is no guidance, not implied guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sanity_checkAInspect
[Wicked Sanity] Verify one claim before acting on it. Verdicts: supported | contradicted | unsupported | insufficient_evidence (see data). confidence_score is raw consistency (a "contradicted" verdict scores near 0). Policy: act on supported; treat unsupported/insufficient_evidence as unverified; reject contradicted. x402 or SANITY_API_KEY; 429 means a rate limit — see retry_after.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | "grounded" (default; check against context) or "open" (check against live web evidence — consistency with the web, not objective truth). | |
| claim | Yes | The single statement to verify (max 5,000 chars). | |
| context | No | Source text the claim(s) must be faithful to. Required for mode "grounded". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses the verdict taxonomy, that confidence_score is raw consistency, the interpretation policy, auth options (x402 or SANITY_API_KEY), and 429/retry_after rate-limit behavior. It stops short of describing the return payload beyond pointing at `data`.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Densely front-loaded: purpose first, then verdicts, then the action policy, then auth and rate limits, with no filler sentences. It is packed into a few clauses, which is efficient though slightly terse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, and the description covers the key return semantics (verdict values, confidence_score meaning) plus auth and rate-limit handling. It leaves the structure of `data` unexplained, but for a single-claim verifier the essentials are present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so mode, claim, and context semantics are already fully documented in the schema; the description adds no parameter-level detail beyond what is there. Baseline 3 applies when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ("Verify one claim") and the "one claim" scoping implicitly distinguishes it from the sibling sanity_check_batch. It never names that sibling, so the differentiation is inferable rather than explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides an explicit decision policy mapping each verdict to an action (act on supported; treat unsupported/insufficient_evidence as unverified; reject contradicted), which is clear when-to-use guidance. It does not say when to prefer the batch sibling or when verification is unnecessary, so no exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sanity_check_batchBInspect
[Wicked Sanity] Verify up to 50 claims against one shared context in a single call — prefer this over one sanity_check per sentence. data is a list in the same order as claims.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | "grounded" (default; check against context) or "open" (check against live web evidence — consistency with the web, not objective truth). | |
| claims | Yes | 1-50 statements, each up to 5,000 chars. | |
| context | No | Source text the claim(s) must be faithful to. Required for mode "grounded". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It discloses batching and hints at a `data` order, but omits whether the operation is read-only, authentication requirements, rate limits, error behavior, and practical differences between grounded and open modes. This is not enough for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with the core action and batching limit. However, the second sentence about `data` is cryptic and does not clearly earn its place, making the structure less clean than it first appears.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter tool with full schema coverage and no output schema, the description covers the batching use case and sibling routing. It still leaves the behavioral contract and return shape underspecified; the `data` reference hints at output ordering but is too vague to be complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents mode, claims, and context, establishing the baseline of 3. The description adds no meaningful parameter semantics and instead references a `data` list that is not in the schema, which is confusing rather than clarifying.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: verify up to 50 claims against one shared context in a single call. It explicitly contrasts with the sibling sanity_check, so the agent can distinguish the batch tool from the single-claim tool. The odd `data` sentence adds some confusion but does not obscure the core purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to prefer this over one sanity_check per sentence, which gives a clear routing condition for multiple claims. It does not specify when-not or explain mode selection, but the main alternative is named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sentimentBInspect
[Trading Data API] Free, no signup required — Free, no signup required. Crypto Fear & Greed Index (alternative.me), current reading + optional history.
Example: /v1/sentiment?limit=7
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Optional. Number of days of history (default 1, max 90). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, and it does disclose the auth/cost profile ('Free, no signup required') and the upstream data source. However it says nothing about rate limits, caching/freshness of the index, or the shape of the returned reading, so meaningful gaps remain.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is tight and the example is useful, but 'Free, no signup required' is duplicated verbatim, wasting space in an otherwise short description. Front-loading the bracketed API tag before the actual purpose is also slightly backwards.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-optional-parameter, no-output-schema tool, the description covers source, cost, and return content (current reading plus optional history) adequately. It stops short of describing the fields in the reading, but the complexity here is low enough that this is close to sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single limit parameter is already documented there as optional with default 1 and max 90. The example URL reinforces usage but adds no semantics beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Identifies a specific resource and source: the Crypto Fear & Greed Index from alternative.me, returning the current reading plus optional history. The verb is implicit ('get'), and it is clearly distinguishable from numeric siblings like price, funding_oi, or long_short_ratio, though it never explicitly frames itself as a retrieval operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no alternatives named, which matters in a sibling set full of sentiment-adjacent signals (long_short_ratio, momentum_score, kalshi_probability). The only contextual cue is 'Free, no signup required', which speaks to accessibility, not to tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
token_riskAInspect
[Token Risk Oracle] Free, public, no signup — Free, public, no signup. Aggregates real on-chain risk signals from GoPlus Security for a token contract — honeypot detection, mint/ownership authority, holder & LP concentration, buy/sell tax, trust-list status — into one transparent risk score. Never a bare safe/unsafe claim: every flag GoPlus didn't return data for stays null, and the raw source data ships alongside the score.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Required. ethereum, bsc, base, polygon, arbitrum, optimism, avalanche, fantom, zksync, linea, scroll, or solana. A numeric EVM chain_id also works. | |
| address | Yes | Required. The token contract address (EVM) or mint address (Solana). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden and does well: it states there is no auth/signup requirement, that the score is never a bare safe/unsafe verdict, that flags lacking GoPlus data stay null, and that raw source data is returned alongside the score. This tells an agent how to interpret gaps rather than treating missing flags as safe. It omits rate limits, latency, and the score's numeric range, which keeps it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The body is dense and front-loaded, but the opening phrase 'Free, public, no signup — Free, public, no signup' is a duplicated fragment that wastes the most prominent position. One cleanup would move this to a 5, since every other clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema and no annotations, so the description must explain both safety and return semantics — and it does, covering null handling, raw-data inclusion, and the no-signup access model. What is missing for a risk-scoring tool is the score's scale/direction and any note on caching or freshness of the on-chain data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters (chain, address) documented including the accepted chain list and EVM chain_id fallback. The description adds nothing about parameter format or constraints, so this is the baseline 3 case where the schema does all the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (a token contract's risk profile) and enumerates exactly what it aggregates — honeypot, mint/ownership authority, holder/LP concentration, taxes, trust-list status — into one score, which is far more informative than the title alone. It does not explicitly contrast with siblings, but no sibling tool overlaps this domain, so differentiation is implicit rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: an agent infers this is the tool for assessing a token contract's on-chain risk before trading or integrating it. However, there is no explicit when-to-use statement, no when-not-to-use, and no named alternative for related questions (e.g. price or liquidity tools). The 'free, public, no signup' note lowers the cost of calling it but is not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
volatilityCInspect
[Trading Data API] Deribit volatility: DVOL implied-vol index (30d forward) + latest realized volatility, for BTC or ETH. — Deribit volatility: DVOL implied-vol index (30d forward) + latest realized volatility, for BTC or ETH.
Example: /v1/volatility?currency=BTC
| Name | Required | Description | Default |
|---|---|---|---|
| currency | No | Optional. BTC (default) or ETH. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, yet it discloses nothing about authentication, rate limits, caching, freshness, or response shape. It does say what the payload contains (DVOL 30d forward + latest realized vol), which is genuinely useful context, but the operational traits are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence is repeated verbatim after an em dash, consuming space with zero added information. The example is useful and the intent is front-loaded, but the duplication is clear waste in an otherwise short description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-optional-parameter read tool with no output schema and no annotations, the description covers the essentials: what data comes back and for which assets. It omits whether the response is a time series or a single reading, the lookback for 'realized' volatility, and any auth or rate-limit context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single optional currency parameter is already documented as 'BTC (default) or ETH.' The description's 'for BTC or ETH' merely corroborates the schema rather than adding syntax, defaults, or validation detail, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific data source (Deribit) and concrete payload: the DVOL implied-vol index (30d forward) plus latest realized volatility, scoped to BTC or ETH. That is far more specific than a tautology and distinguishes it from siblings like atr or momentum_score, though it never explicitly contrasts itself with those tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance, and no named alternative among the many sibling market-data tools. The only implicit signal is that this returns volatility data, leaving the agent to infer that it should be chosen over atr, momentum_score, or ohlcv on its own.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wallet_checkAInspect
[Wallet Oracle] Pre-transaction counterparty check for an EVM wallet or contract: OFAC SDN screening, GoPlus malicious-address flags (phishing, drainers, laundering, mixers ...), and a live on-chain profile (EOA / contract / EIP-7702, nonce, balance, ENS, first transaction, contract verification) — Pre-transaction counterparty check for an EVM wallet or contract: OFAC SDN screening, GoPlus malicious-address flags (phishing, drainers, laundering, mixers ...), and a live on-chain profile (EOA / contract / EIP-7702, nonce, balance, ENS, first transaction, contract verification). Returns risk_level, a plain recommendation (do_not_transact / review_before_transacting / no_red_flags_found), every reason with its source, and which sources were unavailable.
Example: /v1/wallet-check?address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&chain=ethereum
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Optional. ethereum, base, arbitrum, optimism, polygon (default base). | |
| address | Yes | Required. A 0x address. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does fairly well: it names the data sources (OFAC SDN, GoPlus, live chain state), states which behaviors are profiled (EOA vs contract vs EIP-7702, verification status, nonce/balance), and discloses that some sources may be unavailable. It stops short of permission requirements, rate limits, or cost, which is the remaining gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first long sentence is duplicated verbatim in the body of the description, wasting roughly half the text on repetition. The useful return-value and example information is buried after the duplicate instead of being front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, and the description compensates by describing the return contract: `risk_level`, a plain recommendation enum, per-reason source attribution, and unavailable sources. Combined with the parameter schema, an agent has enough to call and interpret this correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with only two parameters, so the schema already documents `address` and the chain enum with its default. The description adds only an example URL that clarifies usage syntax; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb+resource (pre-transaction counterparty check on an EVM address) and enumerates the checks performed (OFAC SDN, GoPlus flags, on-chain profile). It is clear about what the tool does, but it never distinguishes itself from the sibling `wallet_sanctions_check`, which by name appears to cover overlapping OFAC screening territory.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Pre-transaction counterparty check' implies the moment of use (before sending funds), which is useful context. However, there is no explicit when-not guidance and no reference to the closely related `wallet_sanctions_check` or `reputation_query` siblings, leaving the agent to guess which screening tool to pick.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wallet_sanctions_checkAInspect
[Wallet Oracle] Is this address on the US Treasury OFAC SDN sanctions list? Exact match against every digital-currency address OFAC publishes (EVM, Tron, Bitcoin and others), with the sanctioned entity, program, and the list's publish date — Free. Is this address on the US Treasury OFAC SDN sanctions list? Exact match against every digital-currency address OFAC publishes (EVM, Tron, Bitcoin and others), with the sanctioned entity, program, and the list's publish date. Chain-agnostic.
Example: /v1/sanctions-check?address=0x8589427373D6D84E98730D7795D8f6f8731FDA16
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Required. Any wallet address (0x EVM, Tron T..., Bitcoin, Solana, ...). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose meaningful behavior: matching is exact (not fuzzy), coverage spans every digital-currency address OFAC publishes across EVM/Tron/Bitcoin, and the result includes the sanctioned entity, program, and list publish date. It omits freshness/caching, rate limits, and any auth or cost caveat beyond 'Free'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core sentence block is duplicated verbatim in the description, roughly doubling its length with zero added information. The example is useful, but the repetition is pure waste in an otherwise short definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must convey return content, and it does name the returned fields (entity, program, publish date). With one well-documented parameter and a clear scope, an agent has enough to invoke it correctly; only auth/rate-limit context is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single 'address' parameter is fully documented in the schema, so the baseline is 3. The example URL reinforces the expected address shape but adds no syntax beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a precise question ('Is this address on the US Treasury OFAC SDN sanctions list?') and specifies exact-match semantics against OFAC's published digital-currency addresses, chain-agnostic. That is a specific verb+resource an agent can act on. It does not, however, differentiate itself from the sibling wallet_check or sanity_check tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the sanctions-screening framing, and 'Free' hints at a cost consideration, but there is no explicit when-to-use vs alternatives statement and no when-not-to-use guidance (e.g. fuzzy/near-match screening would need a different tool).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
49 tool updates
- Added
atr - Added
basis - Added
broker_sync_balances - Added
broker_sync_connections - Added
broker_sync_positions - Added
broker_sync_prop_firms - Added
broker_sync_register_user - Added
broker_sync_transactions - Added
chain_balance - Added
chain_block - Added
chain_ens - Added
chain_nonce - Added
chain_token_balance - Added
chain_tx - Added
defi_tvl - Added
earnings_calendar - Added
filings_8k_events - Added
filings_filing - Added
filings_freshness - Added
filings_insider_summary - Added
filings_insider_trades - Added
filings_latest_preview - Added
filings_search - Added
funding_oi - Added
fvg - Added
gas - Added
hyperliquid - Added
kalshi_market - Added
kalshi_probability - Added
liquidity_levels - Added
long_short_ratio - Added
macro_calendar - Added
market_clock - Added
market_overview - Added
momentum_score - Added
ohlcv - Added
orderbook - Added
price - Added
protocol_health_list_protocols - Added
protocol_health_refresh_all - Added
protocol_health_score - Added
protocol_health_scoreboard - Added
protocol_health_sync_universe - Added
protocol_health_track_protocol - Added
rates - Added
sentiment - Added
volatility - Added
wallet_check - Added
wallet_sanctions_check
10 tool updates
- Removed
filings_8k_events - Removed
filings_filing - Removed
filings_freshness - Removed
filings_insider_summary - Removed
filings_insider_trades - Removed
filings_latest_preview - Removed
filings_search - Added
token_risk - Removed
wallet_check - Removed
wallet_sanctions_check
49 tool updates
- First observed
filings_8k_events - First observed
filings_filing - First observed
filings_freshness - First observed
filings_insider_summary - First observed
filings_insider_trades - First observed
filings_latest_preview - First observed
filings_search - First observed
identity_get_challenge - First observed
identity_get_nonce - First observed
identity_get_test_key - First observed
identity_jwks - First observed
identity_register - First observed
identity_sandbox_register - First observed
identity_status - First observed
identity_submit_response - First observed
memory_delete - First observed
memory_deletions - First observed
memory_get - First observed
memory_history - First observed
memory_prepare - First observed
memory_search - First observed
memory_store - First observed
memory_update - First observed
paywall_create_route - First observed
paywall_delete_route - First observed
paywall_get_tenant - First observed
paywall_import_routes - First observed
paywall_list_routes - First observed
paywall_list_settlements - First observed
paywall_signup - First observed
paywall_update_route - First observed
registry_create_api_key - First observed
registry_featured_tools - First observed
registry_lookup - First observed
registry_onboarding_message - First observed
registry_register_tool - First observed
registry_report_tool - First observed
registry_search_tools - First observed
registry_tool_badge - First observed
registry_tool_detail - First observed
reputation_query - First observed
reputation_statement - First observed
reputation_status - First observed
reputation_tiers - First observed
reputation_transparency - First observed
sanity_check - First observed
sanity_check_batch - First observed
wallet_check - First observed
wallet_sanctions_check
Related MCP Connectors
Paid APIs agents really pay for (x402 index) + SEC filings, wallet risk, OFAC, EVM reads, news, DNS
Real SEC, 13F, insider, congress & macro data your AI agent can cite. Hosted MCP, 24 tools.
Web search, point-in-time crypto market data, verified strategy track records and 160+ agent tools.
Crypto data, Solana pre-trade checks, sanctions, papers, language tasks. 90 tools, USDC, 21 chains.
Related MCP Servers
AlicenseAqualityBmaintenanceEnables AI agents to access crypto market signals including regime, sentiment, price, risk, and text tools like summarization and fact-checking, backed by a live production-grade classifier.633 npmMIT- AlicenseNot gradedqualityAmaintenanceWall Street data feed for AI agents, providing access to 100M+ source-traced SEC records, institutional holdings, insider trades, congress trading, and more via MCP tools.MIT

Signal8 MCP Serverofficial
AlicenseAqualityBmaintenanceProvides AI agents with direct access to SEC filing intelligence, company fundamentals, dilution risk scoring, and cross-company analytics for financial research.101146 npm1MIT- AlicenseNot gradedqualityDmaintenanceReal-time prediction market intelligence for AI agents. Query Polymarket and Kalshi markets, wallet profiles, smart money leaderboards, social pulse signals, price candlesticks, and orderbook data — 13 agents, one MCP connection. Powered by 1.1TB+ of historical data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.