Skip to main content
Glama

DPX — Institutional Cross-Border Settlement

Server Details

AI-native stablecoin settlement rail replacing SWIFT for institutional cross-border payments. 14 tools covering settlement quotes, execution, ESG scoring, oracle status, fee verification, competitor comparison, rail health, investment context, and MPP-gated macro intelligence. Settles via Base mainnet USDC at ~1.385% all-in.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

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

MCP client
Glama
MCP server

Full call logging

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

Tool access control

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

Managed credentials

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

Usage analytics

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

100% free. Your data is private.
Tool DescriptionsA

Average 4.4/5 across 51 of 55 tools scored.

Server CoherenceA
Disambiguation4/5

Most tools have clearly distinct purposes, especially within the same domain (e.g., intelligence.contagion vs. intelligence.tectonic). However, the high number of tools in areas like stability or intelligence could cause initial confusion, but detailed descriptions clarify differences.

Naming Consistency5/5

All tools follow a consistent hierarchical dot notation with snake_case (e.g., agent.kya_register, esg.score, oracle.stability). This pattern is predictable and well-maintained across all 55 tools.

Tool Count3/5

55 tools is high, covering many domains (compliance, intelligence, market, banking, settlement). While each tool seems justified, the server could potentially be split into smaller, more focused servers. The count is at the upper boundary of what is reasonable for a single server.

Completeness4/5

The tool surface covers the full lifecycle of cross-border settlement: compliance, quoting, execution, tracking, and integration. Minor gaps exist (e.g., no explicit tool for cancellation or dispute resolution), but core workflows are well-supported.

Available Tools

56 tools
agent.kya_registerAInspect

KYA — Know Your Agent. Three-tier registration model — compliance burden scales with settlement risk, no documents ever required. ANONYMOUS: agent name only, $1K/day cap, instant. REGISTERED: add ownerEntity + ownerEmail (self-attested, no verification), $25K/day cap, instant. VERIFIED: add ownerLei (active GLEIF LEI) — DPX calls the public GLEIF API, confirms ACTIVE status, and grants VERIFIED instantly. No documents, no manual review; LEI issuers (LOUs) have already done identity verification and DPX inherits it. VERIFIED agents get institutional caps (governed by mandate), FATF R.16 attestation on every settlement, and full AP2 mandate support. Legal basis: FATF R.16 originator = owner entity (not the agent); MiCA Art. 45/72 accepts LEI; GENIUS Act satisfied by entity attestation.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesHuman-readable name for this agent.
mandateNoOptional AP2-compatible spend mandate (REGISTERED/VERIFIED only). Caps are clamped to tier limits for REGISTERED agents.
ownerLeiNo20-char GLEIF LEI. Providing a valid active LEI instantly grants VERIFIED tier — no documents. Get your LEI at gleif.org.
frameworkNoAgent framework: "claude", "gpt-4o", "gemini", "custom", etc.
protocolsNoSupported protocols: ["x402", "ap2", "mcp", "a2a"].
publicKeyNoOptional public key for credential signature verification.
ownerEmailNoContact email. Required for REGISTERED tier ($25K/day cap). Self-attested, not verified.
ownerEntityNoOrganization or person that owns/operates this agent. Required for REGISTERED tier.

Output Schema

ParametersJSON Schema
NameRequiredDescription
agentIdNoUnique agent identifier (agt_...). Store this.
kyaLevelNo
kyaScoreNoTrust score 0–100.
tierCapsNomaxNotionalUsd and dailyCapUsd effective for this agent.
tierNoteNoExplanation of tier and how to upgrade.
leiVerifiedNotrue if LEI was confirmed via GLEIF API.
leiEntityNameNoLegal name from GLEIF record (VERIFIED only).
Behavior5/5

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

Annotations indicate a write operation (readOnlyHint=false) and no destructive behavior. The description adds significant behavioral context: it explains the instant processing for ANONYMOUS/REGISTERED, the real-time GLEIF API call for VERIFIED, no documents or manual review, and the legal basis (FATF R.16, MiCA, GENIUS Act). This far exceeds the annotation-provided information.

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

Conciseness4/5

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

The description is relatively verbose but well-structured: it opens with the three-tier model, then explains each tier's requirements and outcomes, and ends with legal basis. Every sentence adds value, though some repetition could be trimmed. Front-loading the model helps quick comprehension.

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

Completeness5/5

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

Given the tool's complexity (8 params, nested mandate object, multiple tiers) and the presence of an output schema, the description is remarkably complete. It covers all tiers, how to achieve each, caps, verification process, and regulatory references. No gaps or ambiguities remain.

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

Parameters5/5

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

The schema covers all 8 parameters (100% coverage), but the description adds critical context: ownerLei triggers instant VERIFIED tier, ownerEmail/ownerEntity are required for REGISTERED, mandate caps are clamped to tier limits for REGISTERED. This enriches the agent's understanding beyond the schema's brief descriptions.

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

Purpose5/5

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

The description clearly states the tool's purpose: registering an agent under a three-tier KYA model. It specifies 'KYA — Know Your Agent' and details the three tiers (ANONYMOUS, REGISTERED, VERIFIED), distinguishing this registration tool from the sibling 'agent.kya_verify' which likely handles verification of existing agents.

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

Usage Guidelines4/5

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

The description provides implicit guidelines on when to use each tier based on compliance burden and caps (e.g., ANONYMOUS for low risk up to $1K/day, VERIFIED for institutional caps). It also explains what parameters are needed for each tier. However, it lacks explicit guidance on when not to use the tool or alternatives, such as using agent.kya_verify instead for existing agents.

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

agent.kya_verifyA
Read-only
Inspect

Verify a registered DPX agent and receive a signed 1-hour credential. Returns KYA level, effective spend caps (tier or mandate), owner verification status, mandate active status, and FATF R.16 compliance attestation. Attach credential.signature as X-Agent-Credential header and agentId as X-Agent-Id header on DPX /settle requests — enables mandate enforcement, per-agent audit trail, and FATF attestation. Credential expires in 1 hour; call again to refresh before expiry.

ParametersJSON Schema
NameRequiredDescriptionDefault
agentIdYesAgent ID from agent.kya_register (agt_...).

Output Schema

ParametersJSON Schema
NameRequiredDescription
mandateNoActive mandate if present, null if expired.
kyaLevelNo
kyaScoreNo
verifiedNo
credentialNoagentId, issuedAt, expiresAt, mandateId, attestation (kyaLevel, ownerVerified, mandateActive, fatfCompliant, dailyCapUsd, maxNotionalUsd), signature
Behavior5/5

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

Discloses credentials expiry (1 hour) and downstream usage beyond annotations. Annotations show readOnlyHint=true, and description adds behavioral context (signing, headers, FATF attestation) without contradiction.

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

Conciseness5/5

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

Three sentences, front-loaded with core action, returns, and usage. Every sentence adds value with no redundancy or fluff.

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

Completeness5/5

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

Covers purpose, return values, usage instructions, and expiry. Output schema exists, but description still lists key return fields. Complete for this tool type.

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

Parameters3/5

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

Only one parameter (agentId) with 100% schema coverage. Description does not add extra meaning beyond the schema's already clear description, so baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Verify a registered DPX agent and receive a signed 1-hour credential.' It specifies the returned data (KYA level, spend caps, etc.) and differentiates from sibling tools like agent.kya_register.

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

Usage Guidelines5/5

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

Explicitly instructs when to use: before DPX /settle requests, with header attachment details. Also advises refreshing before credential expiry, providing clear usage context.

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

agent.mandate_createAInspect

Create or update an AP2-compatible spend mandate for a REGISTERED or VERIFIED DPX agent. Sets per-agent settlement constraints: max notional per settlement, daily cap, optional counterparty whitelist (LEIs or wallets), allowed currency pairs, ESG floor, and expiry. ANONYMOUS agents cannot hold mandates — register with ownerEntity + ownerEmail first. REGISTERED agents have mandate caps clamped to their tier limit ($25K). VERIFIED agents (GLEIF LEI confirmed) set their own caps with no platform ceiling. Mandate is AP2-formatted for interoperability with Google Agent Payments Protocol.

ParametersJSON Schema
NameRequiredDescriptionDefault
agentIdYesAgent ID from agent.kya_register.
esgFloorNoMin counterparty ESG score (0 = no floor).
issuedByNoOrganization issuing this mandate.
expiresAtNoUnix timestamp for mandate expiry.
dailyCapUsdYesMax USD per calendar day (UTC).
currencyPairsNoAllowed pairs e.g. ["USD|EUR"]. Empty = any pair.
maxNotionalUsdYesMax USD per single settlement.
counterpartyWhitelistNoLEIs or wallet addresses. Empty = any counterparty.

Output Schema

ParametersJSON Schema
NameRequiredDescription
agentIdNo
mandateNoFull mandate object.
mandateIdNoUnique mandate ID (mnd_...).
ap2CompatibleNo
effectiveCapsNoActual caps after tier clamping.
Behavior4/5

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

Discloses behavioral traits: creates or updates, AP2 formatting, clamping based on agent tier, expiry. Annotations indicate mutation but not destructive. No contradiction. Lacks detail on idempotency but adequate.

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

Conciseness5/5

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

Concise (~100 words), well-structured with purpose first, then agent type rules, then parameter context. No unnecessary details.

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

Completeness5/5

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

Given 8 parameters, 3 required, agent status-dependent behavior, and output schema present, the description covers all essential aspects: agent prerequisites, mandate constraints, AP2 formatting. Complete for agent selection and invocation.

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

Parameters4/5

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

Schema has 100% description coverage (baseline 3). Description adds significant value: agentId source, clamped caps for REGISTERED, LEIs/wallet addresses for whitelist, empty array semantics for currencyPairs and counterpartyWhitelist.

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

Purpose5/5

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

Clearly identifies verb (create/update) and resource (spend mandate), specifies AP2 compatibility and agent types (REGISTERED/VERIFIED). Distinguishes from siblings like agent.kya_register and agent.kya_verify.

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

Usage Guidelines4/5

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

Provides context on when to use (set per-agent constraints) and explicit exclusions (ANONYMOUS agents cannot hold mandates). Explains behavior differences for REGISTERED vs VERIFIED agents. Could be more explicit about alternatives but sufficient.

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

analytics.overviewA
Read-only
Inspect

Get live DPX performance analytics. Returns current stability score, ESG composite scores, live fee breakdown, oracle health across all data sources, and a settlement readiness assessment. Use for dashboards, reporting, and AI-driven monitoring of protocol health.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
feesNo
esgScoreNoProtocol ESG composite score 0–100
timestampNoISO 8601 analytics timestamp
oracleHealthNoHealth status per oracle data source
stabilityScoreNoCurrent oracle stability score 0–100
settlementReadyNoTrue if conditions are suitable for settlement
Behavior4/5

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

Annotations already declare readOnlyHint true and destructiveHint false, indicating a safe read operation. The description adds important behavioral context: the data is 'live' and returns a specific set of metrics, which goes beyond the annotations.

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

Conciseness5/5

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

The description is two sentences long: the first identifies the tool's function and outputs, the second provides usage guidance. No unnecessary words; front-loaded with key information.

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

Completeness5/5

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

Given no parameters and the presence of an output schema, the description covers all necessary aspects: what the tool does, what it returns, and when to use it. No gaps.

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

Parameters4/5

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

There are no parameters (schema coverage 100%), so the description does not need to explain them. The baseline for zero parameters is 4.

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

Purpose5/5

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

The description clearly states the verb 'Get' and resource 'live DPX performance analytics', and lists specific outputs (stability score, ESG scores, fee breakdown, oracle health, settlement readiness). This distinguishes it from sibling tools that cover individual aspects.

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

Usage Guidelines4/5

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

The description explicitly recommends use for 'dashboards, reporting, and AI-driven monitoring of protocol health', providing clear context. It does not explicitly state when not to use or list alternatives, but the context implies it is for high-level overviews.

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

compliance.pep_screenA
Read-onlyIdempotent
Inspect

Screen an individual by name against the OpenSanctions PEP (Politically Exposed Person) dataset. PEPs include heads of state, senior government officials, senior executives of state-owned enterprises, senior politicians, senior military officers, judicial officials, and their close associates and family members. Returns match confidence, position/role, nationality, related entities, and an overall risk level (HIGH / MEDIUM / LOW / NONE). HIGH or MEDIUM matches require Enhanced Due Diligence (EDD) per FATF Recommendations 12 and 13 before settlement. Optionally filter by country.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesFull name to screen (e.g. "Mario Draghi").
countryNoISO-2 country code to narrow the search (e.g. "IT"). Optional.

Output Schema

ParametersJSON Schema
NameRequiredDescription
matchedNo
matchesNoPer match: caption, datasets, position, nationality, birthDate, relatedEntities, riskLevel, matchScore
overallRiskNo
totalMatchesNo
fatfComplianceNoEDD required flag, FATF R.12/13 attestation, note
Behavior4/5

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

Annotations already indicate a safe, read-only operation. The description adds context on return fields (confidence, risk level) and regulatory implications (EDD requirements), which is valuable beyond annotations.

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

Conciseness5/5

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

Four concise sentences, front-loaded with action, no redundancy. Every sentence adds distinct value.

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

Completeness5/5

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

For a read-only screening tool with annotations and output schema, the description provides complete context: what it screens, outputs, and regulatory significance.

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

Parameters3/5

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

Schema coverage is 100%, so baseline is 3. The description adds no new parameter information beyond what the schema provides, but context on usage is sound.

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

Purpose5/5

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

The description clearly states the tool screens an individual against the OpenSanctions PEP dataset, defines PEPs, and lists outputs. It is specific and distinct from sibling tools like compliance.ubo_chain.

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

Usage Guidelines3/5

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

Usage is implied through the description (when you need PEP screening), but there is no explicit guidance on when to use this tool versus alternatives or when not to use it.

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

compliance.regulatory_calendarA
Read-onlyIdempotent
Inspect

Returns a structured calendar of upcoming and in-effect compliance obligations across MiCA (EU crypto-asset markets regulation), SFDR (Sustainable Finance Disclosure Regulation), CSRD (Corporate Sustainability Reporting Directive), the US GENIUS Act (payment stablecoin framework), and FATF Recommendations 15/16. For each event: framework, jurisdiction, requirement summary, effective date, impact level, and article reference. Also returns a DPX alignment section mapping each framework to the specific DPX endpoints that satisfy it. Use this before settlement workflow design, compliance gap analysis, or regulatory reporting.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
inEffectNoCurrently active requirements, most recent first
upcomingNoEvents not yet in effect, sorted by effective date ascending
dpxAlignmentNoPer-framework mapping to DPX endpoints that satisfy each obligation
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so description adds value by detailing the output structure (events, frameworks, DPX alignment). No contradictions.

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

Conciseness4/5

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

Well-structured with front-loaded purpose, detailed output list, and usage guidance. Slightly verbose but each sentence adds unique value.

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

Completeness5/5

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

Complete for a zero-parameter tool. Includes all relevant regulatory frameworks, output fields, and DPX alignment. Output schema exists but description covers essential context.

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

Parameters4/5

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

No parameters (schema coverage 100%). Description adds meaning by detailing output contents, compensating for lack of parameter documentation.

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

Purpose5/5

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

The description clearly specifies the tool returns a structured calendar of compliance obligations across multiple regulations (MiCA, SFDR, CSRD, GENIUS Act, FATF). It distinguishes from sibling tools like compliance.pep_screen and compliance.ubo_chain by focusing on regulatory calendar rather than screening or chain analysis.

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

Usage Guidelines4/5

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

Explicitly states 'Use this before settlement workflow design, compliance gap analysis, or regulatory reporting.' Provides clear use cases but does not mention when not to use or alternative tools.

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

compliance.ubo_chainA
Read-onlyIdempotent
Inspect

Trace the beneficial ownership chain for any legal entity up to 3 levels deep using GLEIF relationship records, then screen every node in the chain against the OpenSanctions consolidated sanctions list (OFAC SDN, EU, UN, UK OFSI). Returns chain structure (SUBJECT → DIRECT_PARENT → ULTIMATE_PARENT), per-node sanctions status, LEI lapse flags, overall CLEAR / REVIEW_REQUIRED / BLOCKED verdict, and FATF R.16 beneficial ownership compliance attestation. Required for correspondent banking due diligence, FATF R.12/13 UBO identification, and MiCA Article 72 counterparty risk management.

ParametersJSON Schema
NameRequiredDescriptionDefault
leiYes20-character GLEIF LEI of the entity to trace (e.g. "2594007XIACKNMUAW223").
deepNoSet true to attempt 3-level traversal including intermediate nodes. Default false (direct + ultimate parent only).

Output Schema

ParametersJSON Schema
NameRequiredDescription
chainNoPer-node: level, role, lei, entityName, country, leiStatus, sanctions (matched, score, datasets), riskFlag
fatfR16NoFATF R.16 beneficial ownership compliance attestation
riskFlagsNoNodes with sanctions hits or lapsed LEIs
chainDepthNo
overallStatusNo
ultimateBeneficialOwnerNolei, entityName, country, leiStatus of the UBO
Behavior4/5

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

Annotations declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, destructiveHint=false. The description adds value by detailing the output structure (chain, sanctions status, LEI flags, verdict, FATF attestation) and the screening process against multiple sanctions lists, going beyond annotations without contradiction.

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

Conciseness4/5

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

The description is a single paragraph that front-loads the main action and summarises output and use cases efficiently. It is slightly dense but contains no superfluous words.

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

Completeness4/5

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

Given the existence of an output schema, the description adequately covers the tool's purpose, method, and key outputs. It addresses complexity by explaining depth parameter and use cases, leaving no major gaps.

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

Parameters3/5

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

Schema coverage is 100% with descriptions for both parameters. The description does not add additional meaning beyond the schema, meeting the baseline for high coverage.

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

Purpose5/5

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

The description clearly states the verb 'trace' and resource 'beneficial ownership chain', specifying depth and sanctions screening. It distinguishes from sibling compliance.pep_screen by focusing on ownership chains rather than individual PEP screening.

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

Usage Guidelines4/5

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

The description explicitly lists use cases: correspondent banking due diligence, FATF R.12/13 UBO identification, and MiCA Article 72 counterparty risk management. It does not explicitly state when not to use, but context from sibling tools implies alternatives like pep_screen for individual screening.

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

dpx.metricsA
Read-onlyIdempotent
Inspect

Live performance metrics for the DPX settlement infrastructure — pulled directly from production telemetry. Returns request volumes, error rates, growth trends, per-service breakdown, and spike analysis across all active DPX workers. Free — designed for investor due diligence, analyst queries, and Standard Metrics / portfolio management integrations. No auth required.

ParametersJSON Schema
NameRequiredDescriptionDefault
windowNoTime window for metrics. "7d" = last 7 days, "30d" = last 30 days. Default: 30d.

Output Schema

ParametersJSON Schema
NameRequiredDescription
windowNo
peakDayNo
summaryNo
servicesNo
errorRateNo
weeklyTrendNo
dailyAverageNo
totalRequestsNo
Behavior5/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=true. Description adds valuable info: 'No auth required' and 'Free', which are not in annotations. No contradictions.

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

Conciseness5/5

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

Three concise sentences, front-loaded with purpose and source, then details, then usage context. No filler or repetition.

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

Completeness5/5

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

Given one optional parameter and presence of output schema, description covers purpose, return data, use cases, authentication, and cost. No gaps.

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

Parameters3/5

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

Only one optional parameter 'window' with enum values and full schema description coverage (100%). Description does not add extra meaning beyond schema, matching baseline for high coverage.

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

Purpose5/5

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

Description explicitly states tool returns live performance metrics for DPX settlement infrastructure, lists specific data types (request volumes, error rates, etc.), and mentions use cases (investor due diligence, portfolio management). It clearly distinguishes from sibling tools like analytics.overview or oracle.*.

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

Usage Guidelines4/5

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

Provides clear context: designed for investor due diligence, analyst queries, and Standard Metrics integrations. Implicitly excludes non-performance use cases. Does not explicitly state when not to use, but context is sufficient.

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

esg.batchA
Read-only
Inspect

Screen up to 50 entities in a single call. Accepts LEIs or company names (GLEIF-resolved). Returns results ranked by composite ESG score descending — highest scoring counterparties first. Useful for portfolio-level compliance screening, supplier due diligence, and TMS pre-payment checks. Name resolution is slower than direct LEI input.

ParametersJSON Schema
NameRequiredDescriptionDefault
leisNoArray of LEIs to screen (fastest path — no GLEIF resolution needed).
namesNoArray of company names to screen (resolved via GLEIF — slower, allows ≤3s per name).

Output Schema

ParametersJSON Schema
NameRequiredDescription
totalNo
failedNo
resultsNoEntities sorted by composite score descending. Each item includes lei, entityName, score object, or an error note.
succeededNo
Behavior4/5

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

The description adds that it screens up to 50 entities, returns ranked results, and that name resolution is slower. This goes beyond annotations which only indicate readOnly and openWorld. No contradictions with annotations.

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

Conciseness5/5

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

Three sentences, no fluff, front-loaded with the core function. Every sentence adds unique value.

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

Completeness3/5

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

The description covers purpose, input types, output ordering, and use cases. However, it is ambiguous about whether both leis and names can be used together. The presence of an output schema partially compensates, but this gap reduces completeness.

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

Parameters4/5

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

Schema coverage is 100%, so baseline 3. The description adds the constraint of up to 50 entities and the performance note about name resolution, which is not in the schema. This provides additional value beyond the schema descriptions.

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

Purpose5/5

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

The description clearly states it screens up to 50 entities by LEI or company name, returning results ranked by composite ESG score descending. This distinguishes it from sibling tools like esg.lookup (single entity) and esg.portfolio (portfolio view).

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

Usage Guidelines4/5

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

It lists concrete use cases: portfolio-level compliance screening, supplier due diligence, and TMS pre-payment checks. It also notes that name resolution is slower, implying LEIs are preferred for speed. However, it does not explicitly contrast with sibling tools or state when not to use it.

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

esg.lookupA
Read-onlyIdempotent
Inspect

Resolve a company name, domain, or ticker to a LEI via GLEIF and return the full ESG score. Removes the need for callers to have a LEI. Returns Environmental (40%), Social (35%), and Governance (25%) pillar scores, composite 0–100, fee surcharge tier, and per-source breakdown (SEC EDGAR, OSHA, BLS SOII, EU E-PRTR, ESMA, World Bank WGI, GLEIF). Use when you have a company name but not a LEI.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesCompany name, domain, or ticker to look up (e.g. "Apple Inc", "siemens.com", "MSFT")
countryNoISO-2 country code to narrow results (e.g. "US", "DE"). Optional but improves match accuracy.
narrateNoSet true to include a 2–3 sentence plain-English compliance narrative generated by the AI synthesis layer.

Output Schema

ParametersJSON Schema
NameRequiredDescription
foundNo
scoreNoFull ESG score object with composite, environmental, social, governance, feeTier, feeSurcharge, sources, coverage
resolvedNo
narrationNoPlain-language compliance narrative (only when narrate=true)
Behavior5/5

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

Annotations already indicate read-only, idempotent, non-destructive. The description adds valuable behavioral context: it returns pillar scores with weights, composite 0–100, fee surcharge tier, and per-source breakdown. No contradiction with annotations; in fact, it enhances understanding of what the tool does beyond safety profile.

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

Conciseness5/5

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

Four short, focused sentences. Front-loaded with the primary action. No redundant or generic phrasing. Every sentence adds value (purpose, need removal, output details, usage context).

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

Completeness5/5

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

Given an output schema already defines return structure, and annotations cover safety, the description completes the picture by listing the exact pillar weights, source breakdowns (SEC EDGAR, OSHA, etc.), and usage scenario. There is no missing context for the agent to decide to invoke this tool.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all three parameters well. The description adds minimal extra meaning beyond contextualizing the 'q' parameter as a name/domain/ticker and why it's useful (removes need for LEI). With full coverage, baseline is 3; the description does not significantly compound parameter understanding.

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

Purpose5/5

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

The description starts with a specific verb 'Resolve a company name, domain, or ticker to a LEI via GLEIF and return the full ESG score.' It clearly distinguishes from siblings like esg.batch or esg.portfolio by focusing on single-entity lookup. Also explicitly states 'Use when you have a company name but not a LEI.'

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

Usage Guidelines4/5

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

Explicitly says to use when you have a company name but not a LEI, which is strong usage guidance. However, it does not mention when NOT to use (e.g., if you already have a LEI, another tool like esg.score might be more direct). Missing explicit exclusion of alternatives among siblings.

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

esg.portfolioA
Read-only
Inspect

Score an entire counterparty portfolio in one call (up to 200 entities by LEI or name). Returns portfolio-level composite E/S/G scores, tier distribution, aggregate fee surcharge impact in basis points, worst offenders (bottom 10% by composite), top performers, MiCA Article 72 ongoing monitoring status, and SFDR PAI flags. The canonical pre-settlement compliance check for treasury systems and TMS integrations.

ParametersJSON Schema
NameRequiredDescriptionDefault
leisNoLEIs to score (fastest — no name resolution).
labelNoOptional label for this portfolio (e.g. "Q3 2026 Counterparties").
namesNoCompany names to score (GLEIF-resolved).

Output Schema

ParametersJSON Schema
NameRequiredDescription
labelNo
entitiesNo
portfolioNocomposite, environmental, social, governance, tier, avgFeeSurcharge, totalFeeImpactBps
complianceNomicaArticle72, highRiskCount, sfdr flags
distributionNobyTier counts, min, max, median
topPerformersNo
worstOffendersNoBottom 10% entities with weakest pillar identified
Behavior4/5

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

Annotations already indicate read-only (readOnlyHint=true). The description adds significant behavioral context: returns portfolio-level composite scores, tier distribution, fee impact, worst offenders, top performers, MiCA status, SFDR flags, and the 200-entity limit. No contradiction with annotations.

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

Conciseness5/5

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

Two concise sentences: first gives core purpose and constraint, second lists return values. Front-loaded with the primary action, every sentence adds value without redundancy.

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

Completeness4/5

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

Covers use case, input, and output well. Output schema exists so return values can be detailed there. Minor omission: no mention of behavior if input exceeds 200 entities, but otherwise complete for an agent to decide.

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

Parameters4/5

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

Schema description coverage is 100% with good param descriptions. The description adds extra value by noting that LEI input is fastest and avoids name resolution, which helps the agent choose between 'leis' and 'names'.

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

Purpose5/5

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

The description clearly states the action ('Score an entire counterparty portfolio in one call') and the resource (counterparty portfolio), with explicit constraints (up to 200 entities by LEI or name). It distinguishes from likely single-entity tools like esg.score.

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

Usage Guidelines4/5

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

Positions the tool as 'The canonical pre-settlement compliance check for treasury systems and TMS integrations', clearly indicating when to use. Does not explicitly state when not to use, but the context is strong enough for an agent to infer appropriate usage.

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

esg.scoreA
Read-onlyIdempotent
Inspect

Get the live counterparty risk score (ESG-denominated) for a wallet address or the protocol default. Returns Environmental, Social, and Governance risk scores (0–100 each), composite weighted average, and the compliance-adjusted settlement fee percentage this score produces. Updated hourly from 6 institutional data sources: WorldBank, IMF, OECD, UN SDG API, ClimateMonitor, and SEC EDGAR. Required by EU SFDR Principal Adverse Impact reporting and CSRD financed emissions disclosure for institutional clients.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressNoWallet address (0x...) to score. Omit for protocol default.

Output Schema

ParametersJSON Schema
NameRequiredDescription
tierNoESG tier label
feePctNoESG fee percentage applied at settlement
socialNoSocial score 0–100
addressNoScored wallet address or "default"
sourcesNoData sources used
esgScoreNoComposite ESG score 0–100
updatedAtNoISO 8601 last update timestamp
governanceNoGovernance score 0–100
environmentalNoEnvironmental score 0–100
Behavior5/5

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

Annotations already indicate read-only, open-world, and idempotent behavior. The description adds valuable context: data is updated hourly from 6 institutional sources (WorldBank, IMF, etc.), and the output includes a composite weighted average and settlement fee percentage. No contradiction with annotations.

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

Conciseness4/5

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

The description is a single dense paragraph that packs purpose, output, data sources, and regulatory relevance. It is not verbose but could be slightly restructured for even better readability. Still efficient.

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

Completeness5/5

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

Given the simple input (one optional parameter) and presence of an output schema and detailed annotations, the description fully covers purpose, update frequency, data sources, and compliance use cases. It leaves no obvious gaps.

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

Parameters3/5

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

The schema already covers the single optional parameter with a clear description. The description adds minimal extra meaning beyond stating the protocol default case. With 100% schema coverage, baseline is 3.

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

Purpose5/5

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

The description clearly states the tool retrieves a live counterparty risk score (ESG) for a wallet address or the protocol default. It specifies the output (E,S,G scores, composite, settlement fee) and differentiates from sibling tools like analytics.overview or fees.schedule which serve different purposes.

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

Usage Guidelines4/5

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

The description explicitly ties usage to EU SFDR and CSRD reporting, giving clear regulatory contexts. However, it does not explicitly state when not to use this tool or compare it to alternatives among siblings, which would improve score.

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

esg.trendA
Read-onlyIdempotent
Inspect

Get the historical ESG composite trend for a specific entity by LEI. Returns score history, trend direction (IMPROVING / STABLE / DETERIORATING), and delta over the requested window. Data accumulates each time the entity is scored via esg.lookup, esg.batch, or esg.portfolio. Useful for due diligence, MiCA Article 72 ongoing monitoring reports, and detecting counterparties whose ESG posture is degrading.

ParametersJSON Schema
NameRequiredDescriptionDefault
leiYes20-character GLEIF LEI.
daysNoLookback window in days (7–365). Default 90.

Output Schema

ParametersJSON Schema
NameRequiredDescription
leiNo
daysNo
deltaNoScore change over the window (positive = improving)
trendNo
currentNo
historyNo
baselineNo
dataPointsNo
Behavior4/5

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

Annotations already indicate safe, idempotent read. The description adds a key behavioral trait: data accumulates from other esg scoring tools (lookup, batch, portfolio), which is crucial for understanding data freshness and dependencies.

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

Conciseness5/5

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

The description is three sentences, front-loaded with the key action, and each sentence adds value: purpose, data accumulation, use cases. No fluff.

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

Completeness4/5

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

Given the tool's complexity (trend with data accumulation), annotations cover safety, schema covers params, and output schema presumably covers return format. The description explains data accumulation and use cases, making it fairly complete. Minor gap: no mention of delta calculation details, but output schema should handle that.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already explains both parameters (lei, days) with details. The description does not add new semantic information beyond stating 'by LEI' and 'over the requested window', which is already implied.

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

Purpose4/5

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

The description clearly states the tool gets historical ESG composite trends by LEI, specifying outputs like score history, trend direction, and delta. It distinguishes itself from siblings implicitly (trend vs. point scores) but does not explicitly name alternatives.

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

Usage Guidelines4/5

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

The description provides explicit use cases: due diligence, MiCA Article 72 monitoring, and detecting degrading ESG posture. However, it does not include when not to use or contrast with sibling tools like esg.score or esg.lookup.

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

esg.watchAInspect

Register an entity for ongoing ESG monitoring. DPX checks the score daily and fires a webhook when the composite score shifts by ≥ thresholdPoints. Satisfies MiCA Article 72 ongoing monitoring requirements. Returns a watchId for status checks and cancellation. Webhook payload includes previous/current score, delta, and tier change.

ParametersJSON Schema
NameRequiredDescriptionDefault
leiYes20-character GLEIF LEI of the entity to monitor.
webhookUrlYesHTTPS URL to POST score change alerts to. Must be HTTPS.
thresholdPointsNoFire webhook if composite score changes by ≥ N points. Default 5. Minimum 1.

Output Schema

ParametersJSON Schema
NameRequiredDescription
leiNo
watchIdNoUUID — use to check status (GET /esg/watch/:id) or cancel (DELETE /esg/watch/:id)
createdAtNo
entityNameNo
baselineTierNo
baselineScoreNoComposite score at registration (used as first comparison point)
Behavior5/5

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

Discloses key behaviors: daily checks, threshold-based webhook, watchId for follow-up, and webhook payload details (previous/current score, delta, tier change). No contradiction with annotations (readOnlyHint=false, etc.), and adds context beyond them.

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

Conciseness5/5

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

Four concise sentences, front-loaded with main purpose. Every sentence adds value: registration action, DPX mechanism, regulatory compliance, return value, and webhook payload. No wasted words.

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

Completeness4/5

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

Covers all essential aspects: purpose, parameters (with defaults/constraints), behavior (daily check, threshold), output (watchId, webhook payload), and compliance context. Missing error handling or rate limits, but overall complete for a registration tool with output schema.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description adds value by explaining thresholdPoints default and minimum, webhookUrl must be HTTPS, and the purpose of lei (GLEIF LEI) is clarified in schema. Extra context justifies score 4.

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

Purpose5/5

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

The description clearly states the verb 'Register' and the resource 'entity for ESG monitoring'. It distinguishes from siblings like esg.score (one-time) and esg.batch (batch) by specifying ongoing daily monitoring and webhook behavior.

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

Usage Guidelines4/5

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

Explicitly states when to use: for ongoing monitoring, daily checks, threshold-triggered webhooks, and MiCA compliance. However, lacks direct comparison to alternative tools (e.g., esg.score for ad-hoc queries) or explicit when-not-to-use conditions.

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

fees.compareA
Read-only
Inspect

Compare DPX settlement cost against Stripe cross-border (5.4% + $0.30), Wise (0.40–1.50%), Ripple ODL (0.20–0.50%), Lightspark, SWIFT (2.00–5.00%), PayPal, and bank wire. Returns dollar savings vs each at the current DPX all-in rate (~2.035% typical). Also returns GENIUS Act and MiCA compliance status for each competitor.

ParametersJSON Schema
NameRequiredDescriptionDefault
hasFxNoCross-currency? Adds 0.40% FX fee.
esgScoreNoESG score 0–100
amountUsdYesSettlement amount in USD

Output Schema

ParametersJSON Schema
NameRequiredDescription
dpxNo
noteNoContext note on comparison methodology
amountUsdNoSettlement amount compared
comparisonNoPer-competitor comparison keyed by competitor ID
Behavior5/5

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

The description aligns with annotations (readOnlyHint=true) and adds behavioral details: it returns savings and compliance status, indicating no side effects. This exceeds annotation coverage, providing clear insight into tool behavior.

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

Conciseness5/5

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

The description is concise, front-loaded with the main purpose, and packs essential details (competitors, metrics, compliance) into two sentences with no wasted words.

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

Completeness4/5

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

The description covers the comparison scope, outputs, and compliance status. Given the tool's complexity and presence of an output schema, the description is largely complete, though it does not explain calculation methodology.

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

Parameters3/5

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

The input schema has 100% description coverage, and the description does not add additional meaning beyond the schema's parameter descriptions. The baseline score of 3 applies.

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

Purpose5/5

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

The description clearly states the tool compares DPX settlement costs against multiple named competitors and returns specific outputs (dollar savings, compliance status). It distinguishes itself from siblings like fees.schedule and fees.verify by specifying the comparative nature.

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

Usage Guidelines4/5

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

The description implies when to use this tool: when needing to compare DPX against alternatives. It does not explicitly state when not to use or name alternative tools, but the specificity makes usage clear.

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

fees.scheduleA
Read-onlyIdempotent
Inspect

Get the complete DPX fee schedule: all components (core/FX/ESG/license), volume discount tiers (Standard / Growth / Institutional / Sovereign), ESG fee table by score, scenario examples, and competitive benchmarks vs Stripe, Wise, SWIFT, and bank wire.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
feesNoFee component definitions
tiersNoVolume discount tiers
examplesNoFee calculation examples
benchmarksNoCompetitor fee benchmarks
Behavior4/5

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

Annotations declare readOnlyHint=true and destructiveHint=false; description adds detail on what the fee schedule includes (tiers, ESG table, examples, benchmarks), providing useful behavioral context beyond annotations.

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

Conciseness5/5

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

Single, front-loaded sentence that efficiently lists all major content areas without waste. Every phrase adds value.

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

Completeness5/5

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

Given no parameters and an existing output schema, the description covers all relevant aspects: components, tiers, ESG, examples, benchmarks. Fully adequate for a zero-input read tool.

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

Parameters4/5

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

Input schema has zero parameters, so there is nothing to document. Baseline of 4 is appropriate; description adds no redundant param info.

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

Purpose5/5

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

Clearly states 'Get the complete DPX fee schedule' and enumerates specific components, tiers, and benchmarks, distinguishing it from sibling tools like fees.compare and fees.verify.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus siblings. With multiple fee-related tools, context on when to pick this one is missing.

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

fees.verifyA
Read-onlyIdempotent
Inspect

Verify that the off-chain fee quote matches what the on-chain DPXSettlementRouter contract will charge. Returns feesMatch (true/false). Call after get_quote and before settle to confirm fee integrity.

ParametersJSON Schema
NameRequiredDescriptionDefault
hasFxNoCross-currency settlement?
esgScoreNoESG score 0–100
amountUsdYesSettlement amount in USD

Output Schema

ParametersJSON Schema
NameRequiredDescription
deltaNoAbsolute difference in basis points
feesMatchNoTrue if off-chain quote matches on-chain contract
onChainFeeNo
offChainFeeNo
recommendationNoPROCEED | INVESTIGATE
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, which the description aligns with. The description adds that it compares off-chain quotes to on-chain charges, providing behavioral context beyond annotations. No contradictions.

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

Conciseness5/5

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

The description consists of two concise sentences. The first states purpose and result, the second gives usage order. No wasted words.

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

Completeness4/5

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

The tool is simple and has an output schema (returns boolean), so the description need not explain return format. It provides workflow context (after get_quote, before settle) which is sufficient for a verification tool. It does not detail error scenarios, but that is minor.

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

Parameters3/5

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

Schema descriptions cover 100% of parameters, so the baseline is 3. The description does not add additional meaning to the parameters beyond what the schema already provides. It subtly implies the role of amountUsd as the settlement amount, but not explicitly.

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

Purpose5/5

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

The description clearly states the verb 'Verify' and identifies the resource as 'fee quote vs on-chain contract charge'. It also specifies the return value 'feesMatch (true/false)'. This distinguishes it from sibling tools like fees.compare (comparing quotes) and fees.schedule (scheduling).

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

Usage Guidelines4/5

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

The description explicitly instructs to call after get_quote and before settle, providing a clear workflow context. It does not mention when not to call or alternatives, but the guidance is sufficient for correct usage.

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

integration.statusA
Read-onlyIdempotent
Inspect

Check the status of a DPX integration verification session. Polls Base mainnet for receipt of the $0.01 USDC handshake payment. Returns "pending" until payment is detected on-chain, then "verified" with the txHash and a Basescan explorer link. Poll every 10–15 seconds after sending the payment.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesverificationId returned by integration.verify.

Output Schema

ParametersJSON Schema
NameRequiredDescription
idNo
statusNoCurrent verification state.
txHashNoTransaction hash of the $0.01 payment. Present when verified.
messageNo
explorerNoBasescan URL for the verification transaction.
verifiedAtNoISO timestamp of on-chain confirmation. Present when status is "verified".
walletAddressNo
Behavior5/5

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

Adds significant behavior beyond annotations: describes polling mechanism, payment detection, return states ('pending', 'verified'), and output details (txHash, Basescan link). Annotations already indicate read-only and idempotent, which the description aligns with.

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

Conciseness5/5

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

Extremely concise: three sentences that front-load the purpose and provide actionable instructions. No wasted words.

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

Completeness5/5

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

Given the simple tool with one parameter and existence of an output schema, the description covers purpose, usage pattern, and expected outputs (states, txHash, explorer link). Complete for the context.

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

Parameters3/5

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

Schema coverage is 100% with the 'id' parameter well-described. The description echoes the schema but adds no new semantic depth. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the resource ('DPX integration verification session') and the action ('check status'). It distinguishes from siblings like integration.verify by specifying it's for status checking after verification.

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

Usage Guidelines4/5

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

Provides explicit polling guidance: 'Poll every 10–15 seconds after sending the payment.' This tells when to use the tool. No explicit exclusion of alternatives, but the context is clear for this specific workflow.

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

integration.verifyAInspect

Initiate a $0.01 USDC onboarding handshake for a new DPX integration. Returns the DPX treasury address and payment instructions. The client sends $0.01 USDC on Base mainnet to confirm their wallet is funded and settlement rails are clear. Call integration.status to poll for confirmation. Required for all new integrations before production settlements are enabled.

ParametersJSON Schema
NameRequiredDescriptionDefault
apiKeyNoOptional: the DPX API key being registered for this integration. Stored as a hash — never logged in plaintext.
walletAddressYesThe client wallet address (0x...) that will send the $0.01 verification payment.

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusNoAlways "pending" on creation.
paymentNo
pollingNo
expiresAtNoISO timestamp — verification window closes after 24 hours.
verificationIdNoSession ID — use with integration.status to poll for payment confirmation.
Behavior4/5

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

Beyond annotations (readOnlyHint=false), the description reveals that the client must send $0.01 USDC on Base mainnet, that the API key is stored as a hash and never logged, and explains the return (treasury address and payment instructions). It does not cover multiple invocation behavior or error handling, but provides sufficient behavioral context.

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

Conciseness5/5

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

The description is four sentences long, front-loaded with the primary action, and every sentence adds essential information without redundancy or fluff.

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

Completeness5/5

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

Given that an output schema exists, the description fully explains the tool's purpose, prerequisites, return values, subsequent step (polling with integration.status), and specific details like chain (Base) and amount ($0.01 USDC), making it sufficient for correct agent invocation.

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

Parameters3/5

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

Schema description coverage is 100% (both parameters are described in the schema), and the description repeats those descriptions verbatim, adding no new information. Baseline of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool's action ('Initiate a $0.01 USDC onboarding handshake'), the target resource ('new DPX integration'), and distinguishes it from sibling tools like integration.status by specifying that polling is a separate step.

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

Usage Guidelines4/5

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

The description explicitly states that this tool is required for all new integrations before production settlements, and directs users to call integration.status for confirmation. However, it does not exclude other scenarios or mention alternatives for similar tasks.

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

intelligence.aftershockA
Read-onlyIdempotent
Inspect

Aftershock Intelligence — models the secondary waves that follow a primary cascade event. Takes a primary shock (origin node, event type, magnitude, elapsed hours) and returns three aftershock waves: Wave 1 (0–72h immediate secondary effects), Wave 2 (1–4 weeks policy response distortions), Wave 3 (1–6 months structural changes now permanently locked in). Identifies which nodes are rebounding, which face amplified pressure, and which are structurally altered. Companion to market.cascade — run cascade first, then aftershock to see the full picture. POST with origin, eventType, magnitude, elapsedHours.

ParametersJSON Schema
NameRequiredDescriptionDefault
originYesOrigin node ID from the primary cascade (e.g. "geo.conflict", "climate.drought").
eventTypeNoDescription of the primary event.
magnitudeYesPrimary shock magnitude 1–100.
elapsedHoursNoHours elapsed since the primary event. Default 24.
horizonHoursNoForward horizon to model in hours. Default 4320 (6 months).

Output Schema

ParametersJSON Schema
NameRequiredDescription
wave1NoImmediate (0–72h): rebound, amplified, structural nodes.
wave2NoPolicy response phase (1–4 weeks).
wave3NoStructural lock-in (1–6 months).
synthesisNo
Behavior4/5

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

Annotations already indicate readOnly, openWorld, idempotent. Description adds details about wave definitions and node states, which enhances transparency without contradiction.

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

Conciseness5/5

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

Compact, front-loaded with purpose, then detailed outputs, then usage instruction. Every sentence adds value.

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

Completeness5/5

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

Despite no output schema shown, description explains return values (three waves, node states). With full schema and annotations, the description completes the picture.

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

Parameters3/5

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

Schema covers all 5 parameters fully. Description lists some parameters (origin, magnitude, elapsedHours) but adds no new meaning beyond schema. Baseline 3.

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

Purpose5/5

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

The description clearly states it models aftershock waves from a primary cascade, specifying inputs, outputs (three waves), and companions. It distinguishes from siblings like intelligence.contagion.

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

Usage Guidelines5/5

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

Explicitly instructs to run market.cascade first, then aftershock. Provides usage context: after a primary event, to see secondary effects. No ambiguity.

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

intelligence.contagionA
Read-onlyIdempotent
Inspect

Contagion Intelligence — simulates how a macro or financial shock spreads through 30 nodes across 6 domains (financial systems, real economies, commodity networks, policy anchors, social systems, physical infrastructure) using an epidemiological R-value model. Returns system R trajectory, per-epoch spread map, superspreader nodes, containment forecast, and AI briefing. R < 1.0 = self-limiting; R ≥ 1.0 = expanding. Call /contagion/nodes first to discover valid origin IDs. POST with origin and magnitude.

ParametersJSON Schema
NameRequiredDescriptionDefault
originNoOrigin node ID. Call intelligence.contagion with listNodes:true to discover valid IDs.
listNodesNoIf true, returns all valid origin node IDs instead of running a simulation.
magnitudeNoInitial shock magnitude 1–100.

Output Schema

ParametersJSON Schema
NameRequiredDescription
systemRNoSystem-level R value. ≥1.0 means spreading.
spreadMapNoPer-epoch infection state across all nodes.
synthesisNo
containmentNoForecast of when/if containment is achieved.
superspreadersNoNodes with highest R contribution.
Behavior4/5

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

Annotations already indicate read-only, idempotent, non-destructive; description adds context (simulation, R-value model, output types) without contradicting annotations. Adds value beyond annotations.

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

Conciseness5/5

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

Three sentences with no fluff: first states purpose and model, second explains key R-value metric, third gives prerequisite and usage. Front-loaded and efficient.

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

Completeness5/5

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

Given output schema exists, description lists all key outputs (trajectory, map, superspreaders, forecast, briefing) and explains the core concept (R-value). Prerequisite call is noted. No gaps for the intended use case.

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

Parameters3/5

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

Schema covers all parameters with descriptions (100% coverage). Description integrates parameters into usage flow but does not provide additional meaning beyond the schema; baseline 3 is appropriate.

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

Purpose4/5

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

The description clearly states it simulates shock spread using an R-value model across 30 nodes and 6 domains, with specific outputs listed. It distinguishes itself from siblings like 'aftershock' or 'resonance' through the contagion focus, but lacks explicit differentiation statement.

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

Usage Guidelines4/5

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

Explicitly advises to call '/contagion/nodes' first for valid origin IDs and explains R-value interpretation (self-limiting vs expanding). Does not mention when to avoid or alternatives among siblings.

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

intelligence.gender_riskA
Read-onlyIdempotent
Inspect

Gender Risk & Opportunity Intelligence — maps the structural relationship between GBV prevalence, legal discrimination, female labour force participation, and economic outcomes across 18 countries. Returns two independent scores: gbvRiskScore (0–100 suppression risk — high GBV → female LFPR suppression → GDP drag → fiscal stress → sovereign risk premium) and opportunityScore (0–100 reform upside — improving GBV indicators, closing LFPR gender gaps, and strengthening legal rights precede FDI inflows and consumer credit expansion). Five transmission mechanisms. Live FRED economic stress feedback. AI synthesis. Data: WHO GHO, World Bank WDI, FRED. 12h cache. No input required — GET.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
countriesNoPer-country: gbvRiskScore, opportunityScore, LFPR gap, WBL index, GDP per capita, transmission mechanisms.
synthesisNo
regionalSummaryNo
Behavior5/5

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

Annotations already declare readOnly and idempotent. The description adds significant behavioral context: 12h cache, data sources (WHO, World Bank, FRED), transmission mechanisms, and that it synthesizes multiple datasets. No contradictions.

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

Conciseness5/5

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

The description is a single, dense paragraph that front-loads the core purpose and efficiently conveys all necessary information without redundancy. Every sentence contributes value.

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

Completeness5/5

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

Given no required input, the description fully explains output scores, data sources, cache duration, and methodology. With an output schema present, the agent has complete understanding of what the tool returns.

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

Parameters5/5

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

With zero parameters, schema coverage is 100%. The description adds full meaning by explaining the output scores and their interpretation, exceeding the baseline of 4 for no-param tools.

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

Purpose5/5

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

The description precisely states it maps structural relationships between GBV prevalence, legal discrimination, and economic outcomes, returning two specific scores. It clearly distinguishes from sibling intelligence tools by its unique domain and data sources.

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

Usage Guidelines4/5

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

The description indicates it's a GET request with no input, implying use when gender risk intelligence is needed. However, it lacks explicit guidance on when to prefer this over sibling tools like intelligence.contagion or intelligence.tectonic, though the domain specificity makes it clear.

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

intelligence.resonanceA
Read-onlyIdempotent
Inspect

Resonance Intelligence — detects when multiple independent macro forces are oscillating in phase across 28 signals in 5 domains, amplifying each other rather than cancelling. A single shock is manageable; resonance turns a bad quarter into a systemic crisis. Returns per-signal phase angles, resonance clusters (groups of 3+ aligned signals), amplitude amplification factor, system resonance score (0–100), and historical danger-zone comparison to crisis precedents (2008, 2011, 2020, 1997 EM). No input required — GET.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
synthesisNo
dangerZoneMatchNoSimilarity to historical crisis resonance patterns.
resonanceClustersNoGroups of 3+ signals in mutual resonance.
amplificationFactorNoConstructive interference gain across dominant cluster.
systemResonanceScoreNo0–100. Higher = more dangerous in-phase alignment.
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description adds value by explaining the concept of resonance, the signals involved, and the return data (phase angles, clusters, etc.). No contradictions.

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

Conciseness5/5

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

Three sentences with no wasted words. First sentence defines purpose, second explains significance, third lists outputs. Perfectly front-loaded and concise.

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

Completeness5/5

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

Given zero parameters, full annotations, and existence of an output schema, the description adequately covers purpose, behavioral context, and return data. No gaps identified.

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

Parameters4/5

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

With zero parameters and 100% schema coverage, the description correctly notes 'No input required — GET.' This adds no extra meaning beyond the schema but is appropriately minimal.

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

Purpose4/5

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

The description clearly states the tool detects resonance of macro forces across signals and domains, providing a specific verb-resource pair. However, it does not explicitly differentiate from sibling tools like 'intelligence.aftershock' or 'intelligence.contagion', which could have overlapping purposes.

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

Usage Guidelines3/5

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

The description implies use case (detecting systemic crises) but lacks explicit guidance on when to use versus alternatives, or when not to use. No exclusions or context for selection among siblings.

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

intelligence.subscribeAInspect

Register a webhook to receive alerts when a DPX intelligence signal crosses a threshold. Supported signals: stability (overall 0–100 score), cascade (shock propagation risk), macro_stress, climate, fx, or any. The cron checks hourly and fires the webhook on crossing — edge-triggered, not repeated every hour. Returns a subscriptionId for status checks and cancellation. Use for treasury alert systems, TMS integrations, or autonomous agent monitoring loops.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelNoOptional label for your own tracking.
signalNoSignal to monitor. Default: stability.
directionNoFire when signal goes above or below threshold. Default: above.
thresholdYesScore value (0–100) that triggers the webhook.
webhookUrlYesHTTPS URL to POST alerts to.

Output Schema

ParametersJSON Schema
NameRequiredDescription
signalNo
deleteUrlNo
directionNo
statusUrlNo
thresholdNo
currentScoreNoSignal score at registration time
subscriptionIdNo
Behavior4/5

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

Annotations indicate readOnlyHint=false (mutation) and destructiveHint=false. The description adds important behavioral traits: hourly cron check, edge-triggered (not repeated), returns subscriptionId. It does not describe webhook payload or cancellation details, but overall adds value beyond annotations.

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

Conciseness5/5

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

Description is concise with three sentences, front-loaded with purpose, and no redundant information. Every sentence adds value: purpose, supported signals, behavior, return value, and use cases.

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

Completeness4/5

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

Given that an output schema exists (though not shown), the description covers the tool's core behavior, supported signals, and use cases. It does not cover error handling or payload format, but is sufficiently complete for a creation tool with good annotations.

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

Parameters3/5

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

Schema description coverage is 100%, so baseline is 3. Description reinforces that default signal is stability and direction is above, but these are already in the schema. It adds context about the cron and edge-triggering, but not enough to raise the score.

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

Purpose5/5

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

Description clearly states the tool registers a webhook for DPX intelligence signal thresholds, lists supported signals, and explains edge-triggered behavior. The verb 'register' and resource 'webhook for alerts' are specific, and the purpose is distinct from sibling tools like oracle.intelligence or oracle.stability, though not explicitly differentiated.

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

Usage Guidelines4/5

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

Description provides clear usage context: 'Use for treasury alert systems, TMS integrations, or autonomous agent monitoring loops.' However, it does not explicitly state when not to use or mention alternative tools, missing some exclusion guidance.

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

intelligence.subscription.deleteA
DestructiveIdempotent
Inspect

Cancel an intelligence subscription by ID. Stops future webhook alerts for that subscription. The alert log is retained for audit purposes.

ParametersJSON Schema
NameRequiredDescriptionDefault
subscriptionIdYesUUID returned by intelligence.subscribe.

Output Schema

ParametersJSON Schema
NameRequiredDescription
deletedNo
subscriptionIdNo
Behavior4/5

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

Annotations already indicate destructive and idempotent behavior. The description adds value by specifying what is stopped (webhook alerts) and what is retained (logs), providing behavioral context beyond annotations. No contradiction.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the primary purpose, and contains no redundant or unnecessary information. Highly efficient.

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

Completeness5/5

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

For a simple tool with one parameter and an output schema, the description adequately covers purpose, effect, retention, and idempotency. No additional context is needed for correct invocation.

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

Parameters3/5

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

Schema coverage is 100% with the only parameter 'subscriptionId' described as 'UUID returned by intelligence.subscribe.' The description does not add further meaning to this parameter. Baseline of 3 applies.

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

Purpose5/5

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

The description clearly states the action ('Cancel'), the resource ('intelligence subscription'), and the mechanism ('by ID'). It distinguishes from siblings like intelligence.subscribe (create) and intelligence.subscription.get (retrieve).

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

Usage Guidelines4/5

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

The description explains the effect ('Stops future webhook alerts') and retention policy ('alert log is retained'), providing context for use. However, it does not explicitly state when not to use the tool or mention alternative tools for related actions.

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

intelligence.subscription.getA
Read-onlyIdempotent
Inspect

Check the status of an intelligence subscription by ID. Returns current signal score, last fired timestamp, total alerts fired, and subscription configuration. Use after intelligence.subscribe to verify a subscription is active.

ParametersJSON Schema
NameRequiredDescriptionDefault
subscriptionIdYesUUID returned by intelligence.subscribe.

Output Schema

ParametersJSON Schema
NameRequiredDescription
signalNo
directionNo
lastScoreNo
thresholdNo
lastFiredAtNo
lastCheckedAtNo
subscriptionIdNo
totalAlertsFiredNo
Behavior4/5

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

Annotations already indicate read-only, idempotent, non-destructive. Description adds what the tool returns (signal score, last fired, etc.), which is beyond annotations.

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

Conciseness5/5

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

Two sentences, front-loaded with purpose, no unnecessary words. Every sentence adds value.

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

Completeness4/5

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

Given output schema exists, the description fully explains purpose, usage context, and return data. Could mention authorization or error conditions but overall sufficient.

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

Parameters3/5

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

Schema coverage is 100% and description repeats the schema's parameter description ('UUID returned by intelligence.subscribe'), adding minimal new information. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states 'Check the status of an intelligence subscription by ID' and lists the returned data. It differentiates from siblings by specifying usage after intelligence.subscribe.

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

Usage Guidelines4/5

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

Explicitly says 'Use after intelligence.subscribe to verify a subscription is active', providing clear usage context. No explicit when-not or alternative tools, but sibling names provide context.

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

intelligence.tectonicA
Read-onlyIdempotent
Inspect

Tectonic Intelligence — maps slow-moving structural stress across 22 fault lines in 5 domains (demographic, fiscal, environmental, infrastructure, geopolitical). Each node carries current stress (0–100), accumulation rate (%/yr), tipping threshold, and estimated years to rupture. Where market.cascade traces an acute shock, tectonic surfaces latent pressure before it ruptures. Returns per-node stress state, rupture sequence, horizon timeline, and AI synthesis briefing. No input required — GET.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
synthesisNoAI briefing on the most dangerous structural accumulations.
faultLinesNoPer-node: domain, label, stress, accumulationRate, yearsToRupture, tippingThreshold.
systemStressNoComposite tectonic stress 0–100.
ruptureSequenceNoOrdered fault lines by proximity to rupture.
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint. Description adds context that it requires no input, is a GET, and returns specific data fields. No contradictions.

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

Conciseness5/5

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

Concise yet comprehensive: front-loads purpose, explains data structure, differentiates from sibling, lists return values, and states no input. Every sentence adds value.

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

Completeness5/5

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

Given zero parameters and existence of output schema, description fully covers what the tool does and returns. Sufficient for agent to understand tool's purpose and output.

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

Parameters4/5

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

No parameters, so description need not add parameter info. Baseline 4 applies as schema coverage is 100% and description clarifies no input needed.

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

Purpose5/5

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

Description explicitly states it maps slow-moving structural stress across fault lines and domains, with clear output details. Contrasts with sibling market.cascade to distinguish purpose.

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

Usage Guidelines4/5

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

Provides context for when to use this tool versus market.cascade (latent pressure vs acute shock). Also notes no input required. Lacks explicit exclusions or alternative sibling guidance.

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

market.cascadeA
Read-onlyIdempotent
Inspect

Butterfly Effect Cascade Intelligence — models how a shock in one macro domain propagates through the interconnected web of climate, geopolitical, economic, and commodity systems. Given an origin event (e.g. armed conflict escalation, agricultural drought, central bank rate decision, rare earth export restriction) and a magnitude score, returns a time-ordered cascade chain showing which downstream systems are hit, in what sequence, with what attenuated signal strength, and an AI synthesis briefing on the highest-impact transmission paths. Covers 24 nodes across 4 domains: climate (drought, flood, carbon price, wildfire, sea-level stress, heatwave), geopolitical (sanctions, conflict, trade tariffs, regime change, election shock, port blockade), economic (rate decisions, inflation, sovereign debt, banking stress, currency crisis, recession), and commodity (oil, gas, grain, rare earth/lithium, copper, water, fertilizer). Purely macro intelligence — no settlement or stablecoin mechanics.

ParametersJSON Schema
NameRequiredDescriptionDefault
originNoOrigin node ID. Call market.cascade with listNodes:true to discover valid IDs (e.g. "geo.conflict", "climate.drought", "commodity.oil", "macro.rate_decision").
eventTypeNoFree-text description of the specific event (e.g. "Russia-Ukraine escalation", "Sahel drought season", "Fed emergency 75bps hike").
listNodesNoIf true, returns all valid origin node IDs and descriptions instead of running a cascade. Use this first to discover valid origin values.
magnitudeNoShock magnitude 1–100. 100 = maximum plausible shock for this event type. 40–60 = significant but not extreme.
horizonHoursNoForward time horizon in hours (1–720). Default: 168 (1 week). Use 24 for immediate cascade, 720 for full 30-day view.

Output Schema

ParametersJSON Schema
NameRequiredDescription
originNoOrigin node metadata.
cascadeNoTime-ordered propagation chain — each entry has node, magnitude, arrivalHours, via path, and mechanism.
eventTypeNoEvent description provided.
synthesisNoAI intelligence briefing on transmission paths, concentrated risk, feedback loops, and forward signals.
computedAtNoISO timestamp of computation.
horizonHoursNoTime horizon modeled.
inputMagnitudeNoClamped input magnitude.
Behavior5/5

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

Annotations declare readOnlyHint, openWorldHint, idempotentHint true, and destructiveHint false. The description adds behavioral context: returns time-ordered cascade, attenuated signal strength, AI synthesis, covers 24 nodes across 4 domains, and explicitly states 'Purely macro intelligence — no settlement or stablecoin mechanics.' No contradiction.

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

Conciseness4/5

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

The description is slightly verbose (e.g., listing all 24 nodes) but well-structured: purpose first, then node categories, then usage instructions. Every sentence adds information, though some details could be trimmed without losing clarity.

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

Completeness5/5

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

Given the tool's complexity (5 parameters, no required, output schema exists), the description covers purpose, domain nodes, usage guidelines, and output characteristics. It is fully sufficient for an AI agent to select and invoke the tool correctly.

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

Parameters4/5

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

Schema coverage is 100% with clear descriptions for all 5 parameters. The description adds value by explaining the domain nodes and the listNodes discovery pattern, going beyond the schema's basic parameter descriptions.

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

Purpose5/5

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

The description explicitly states the tool models shock propagation across macro domains (climate, geopolitical, economic, commodity) and returns a cascade chain with AI synthesis. It clearly differentiates from siblings like market.fx or market.shipping which handle specific domains, and none of the siblings perform cascade intelligence.

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

Usage Guidelines4/5

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

The description explains when to use the tool (macro shock analysis) and instructs to call with listNodes:true to discover valid origin values. While it doesn't provide explicit 'when not to use' scenarios, the context is clear enough for an AI agent to decide.

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

market.fxA
Read-onlyIdempotent
Inspect

FX Settlement Corridor Intelligence — per-pair execution risk assessment for 10 major currency corridors against USD: EUR, GBP, JPY, CAD, AUD, CHF, MXN, BRL, CNY, INR. Maps live FRED spot rates to settlement advice for each pair: SETTLE_NOW / SETTLE_WITH_HEDGE / DELAY_SHORT / DELAY_REVIEW / AVOID. Returns DXY dollar regime (STRONG_DOLLAR / NORMAL / WEAK_DOLLAR), regional block risk rollup (G4, Americas, Asia-Pacific), best corridors to settle through now, worst corridors to avoid or hedge, and recommended actions. Distinct from oracle.stability (which covers peg deviation and macro settlement gates) — this tool answers "which currency pairs are risky to settle through right now?" Data: FRED spot rates (DEXUSEU, DEXUSUK, DEXJPUS, etc.), DXY (DTWEXBGS). 1h cache.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dxyNoDXY value, trend, regime, and settlement impact summary.
corridorsNoPer-pair risk, spot rate, advice, and settlement cost.
overallRiskNoFAVORABLE / NORMAL / MODERATE / HIGH / CRITICAL
bestCorridorsNoPairs with NORMAL or FAVORABLE risk — settle now.
worstCorridorsNoPairs with HIGH or CRITICAL risk — delay or hedge.
executiveSummaryNoPlain-language summary of FX settlement conditions.
recommendedActionsNoActionable guidance for treasury teams.
Behavior4/5

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

Annotations already provide readOnlyHint, openWorldHint, idempotentHint, destructiveHint. The description adds behavioral context: data sources (FRED spot rates, DXY), cache duration (1h), and output structure (risk categories, regime, blocks, recommendations). No contradictions.

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

Conciseness4/5

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

The description is detailed but front-loaded with the main purpose. Every sentence adds value: listing currencies, explaining outputs, data source, caching, and sibling differentiation. Slightly long but appropriate for the complexity.

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

Completeness5/5

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

Given the tool's complexity (multiple currencies, output fields, data sources, caching, and sibling context), the description is fully complete. It explains all key aspects without relying on the output schema (which exists). An agent can correctly decide when and how to invoke it.

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

Parameters4/5

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

No parameters; schema coverage is 100%. Per guidelines, 0 parameters yields baseline 4. The description does not need to explain params.

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

Purpose5/5

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

The description clearly states the tool provides per-pair execution risk assessment for 10 major currency corridors against USD, mapping spot rates to settlement advice categories (SETTLE_NOW etc.) and returning DXY regime, regional risk, and recommendations. It distinguishes from sibling oracle.stability by specifying what question this tool answers.

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

Usage Guidelines4/5

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

The description explicitly contrasts with oracle.stability to guide selection: this tool answers 'which currency pairs are risky to settle through right now?' while oracle.stability covers peg deviation and macro gates. Though no explicit when-not scenarios, the differentiation is clear.

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

market.shippingA
Read-onlyIdempotent
Inspect

Shipping & Logistics Stress Intelligence — composite view of global freight market conditions across ocean, air, truck, and rail. Tracks energy-driven shipping costs (Brent crude, diesel), 8 key global trade routes with disruption status, and trade flow signals. Returns a settlementRelevance section mapping logistics conditions to cross-border payment corridor risk: invoice delay risk, trade finance stress, and affected corridors. Useful for treasury teams with supply chain financing exposure, trade finance desks, and agents pricing cross-border payments on goods-backed corridors. Data: FRED (Brent crude), EIA (US diesel). 4h cache.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
regimeNoSTABLE / MODERATE / ELEVATED / SEVERE_DISRUPTION
keyRoutesNoPer-route disruption status and stress score.
synthesisNoNarrative briefing on freight conditions and implications.
energyCostNoBrent crude, diesel price, marine fuel proxy.
freightModesNoPer-mode (ocean/air/truck/rail) cost index and stress signal.
compositeScoreNoComposite stress score 0–100 (higher = more stress).
settlementRelevanceNoInvoice delay risk, trade finance stress, affected corridors.
Behavior4/5

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

Annotations already indicate readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=true, so the tool is safe and non-destructive. The description adds valuable behavioral context beyond annotations: data sources (FRED, EIA), a 4-hour cache, and the specific output structure (settlementRelevance mapping). No contradictions.

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

Conciseness4/5

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

The description is somewhat verbose but well-structured, with the core purpose front-loaded. Each sentence adds useful information (target users, data sources, cache). Could be slightly more concise, but overall no wasted content.

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

Completeness5/5

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

For a zero-parameter tool with an output schema, the description is highly complete. It explains the composite view, what metrics are tracked (energy costs, 8 routes, trade flows), the settlementRelevance output, target users, data sources, and cache behavior. An agent has all necessary context to invoke this tool correctly.

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

Parameters4/5

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

The input schema has no parameters, so schema coverage is 100%. With zero parameters, the description naturally adds no parameter information, but a baseline of 4 is appropriate since the schema fully covers the parameter semantics.

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

Purpose5/5

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

The description clearly states the tool provides a composite view of global freight market conditions across ocean, air, truck, and rail, with specific tracking of energy costs, trade routes, and trade flow signals. It distinguishes itself from siblings like market.fx and market.cascade by focusing specifically on shipping logistics stress, and mentions a unique 'settlementRelevance' section.

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

Usage Guidelines4/5

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

The description explicitly identifies target users (treasury teams, trade finance desks, agents pricing cross-border payments) and contexts where the tool is useful (supply chain financing exposure, goods-backed corridors). It does not explicitly state when not to use it or name alternatives, but the context is clear enough for an agent to decide.

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

mercury.accountsA
Read-onlyIdempotent
Inspect

List all Mercury bank accounts and balances connected to the DPX Settlement Agent. Returns account IDs, names, available balance, current balance, and currency for each account. Use account IDs with mercury.transactions to fetch payment history, or mercury.send to initiate a payment. Works with both Mercury sandbox and production environments.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
countNoNumber of accounts returned
totalNoTotal balance across all accounts in USD
accountsNo
environmentNosandbox or production
Behavior3/5

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

Annotations already provide readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds that it returns account IDs, names, balances, currency, and works with both environments. This adds some context but does not disclose any behavioral traits beyond what annotations and schema already convey.

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

Conciseness5/5

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

Three sentences with no wasted words: first sentence states purpose and return fields, second sentence guides usage with sibling tools, third sentence mentions environment compatibility. Front-loaded and efficient.

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

Completeness5/5

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

Given no parameters and presence of output schema (which explains return values), the description is complete. It covers purpose, return fields, usage with siblings, and environment compatibility. No gaps.

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

Parameters4/5

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

The input schema has no parameters, so schema description coverage is 100% (vacuously). According to calibration, zero parameters baseline is 4. The description does not need to add parameter semantics.

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

Purpose5/5

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

The description clearly states the tool lists Mercury bank accounts and balances, specifying the returned fields (account IDs, names, balances, currency). It distinguishes itself from sibling tools by mentioning how to use account IDs with mercury.transactions and mercury.send.

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

Usage Guidelines4/5

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

The description explicitly states when to use the tool (to list accounts) and how to use the output with sibling tools. It also mentions compatibility with sandbox and production environments. While it lacks explicit when-not guidance, the context is clear given it's a read-only list.

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

mercury.ach_authorizeA
Destructive
Inspect

Screen an ACH payment through the DPX compliance oracle before execution. Runs FATF R16, GENIUS Act, MiCA, and AML checks against the recipient. Returns APPROVED / FLAGGED / BLOCKED with full compliance reasoning.

Use this tool BEFORE every ACH payment via mercury.send. ACH is hard to reverse — compliance pre-screening prevents blocked transactions and BSA/AML exposure.

Workflow:

  1. mercury.ach_authorize (screen only, autoExecute:false) → review decision

  2. If APPROVED → set autoExecute:true to send, or call mercury.send directly

  3. If FLAGGED → manual review required before proceeding

  4. If BLOCKED → do not proceed

ParametersJSON Schema
NameRequiredDescriptionDefault
noteNoPayment memo / note (optional).
amountYesPayment amount in USD.
purposeNoPayment purpose category (optional — required by Mercury for domesticWire, recommended for ACH). E.g. "Vendor", "Contractor", "Expenses".
accountIdYesSource Mercury account ID (from mercury.accounts).
autoExecuteNoIf true and compliance returns APPROVED, immediately sends the ACH payment. Default false — screen first, execute separately.
recipientIdYesMercury saved recipient ID (from mercury.send / POST /mercury/recipients).
externalMemoNoExternal memo / reference visible to recipient (optional).
recipientNameYesLegal name of the recipient entity or individual — used for compliance screening.
idempotencyKeyNoIdempotency key for safe retries. Auto-generated if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
tierNoCompliance tier — FAST_PATH, STANDARD, ENHANCED, or HOLD.
_nextNoGuidance on next action.
reasonNoHuman-readable decision summary.
decisionNoCompliance decision.
executedNoTrue if autoExecute:true and ACH was sent.
mercuryIdNoMercury transaction ID (present when executed).
authorizedNoTrue if compliance approved the payment.
complianceNoFull compliance oracle response including framework attestations.
requiresReviewNoTrue when decision is FLAGGED — manual review required.
Behavior5/5

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

Description discloses that the tool can optionally execute the payment (destructive), as indicated by autoExecute parameter and annotations (destructiveHint: true). No contradiction. Provides context on compliance checks and irreversibility of ACH.

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

Conciseness5/5

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

Well-structured with clear sections: purpose, usage guideline, numbered workflow. Every sentence adds value without redundancy. Front-loaded with the core purpose.

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

Completeness5/5

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

Given 9 parameters, compliance integration, and workflow, the description is complete. It explains decision outcomes, autoExecute behavior, and prerequisites (recipientId from mercury.send). Output schema exists but not shown; description covers what agent needs to know.

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

Parameters4/5

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

Schema has 100% coverage with descriptions, but the description adds workflow context for autoExecute and clarifies recipientName's role in compliance screening. However, most parameters are already well-documented in schema.

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

Purpose5/5

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

The description clearly states the tool screens an ACH payment via compliance oracle before execution, returning APPROVED/FLAGGED/BLOCKED. This distinguishes it from sibling tools like mercury.send, which sends payments without pre-screening.

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

Usage Guidelines5/5

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

Explicit guidelines: use before every ACH payment, with a detailed workflow (authorize with autoExecute:false, review decision, proceed or not). Clearly states when to use (before each ACH) and what to do for each outcome.

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

mercury.sendA
Destructive
Inspect

Initiate a Mercury bank payment from a connected account. Supports all Mercury payment rails: ACH (0–1 days), Wire (0–1 days), Real-Time Payment / RTP (instant), International Wire (1–3 days), and Check (7–10 days).

For International Wire — the primary DPX cross-border use case — provide SWIFT/BIC code and beneficiary bank details. DPX oracle conditions and FX corridor risk should be checked via oracle.stability and market.fx before executing.

Can optionally tag the payment for automatic DPX on-chain routing — when dpxRoute:true is set, the payment memo includes the DPX executor wallet address and the Mercury webhook picks it up for USDC settlement on Base mainnet.

Use sandbox:true (default) for dry-run testing. Set sandbox:false only when ready to move real funds.

Typical cross-border flow:

  1. market.fx → check FX corridor risk for the destination currency

  2. mercury.accounts → get source accountId

  3. mercury.send (sandbox:true) → confirm payment parameters

  4. settlement.quote → get DPX fee quote for the USDC leg

  5. mercury.send (sandbox:false) → execute (requires explicit user confirmation)

  6. mercury.transactions → verify payment posted

ParametersJSON Schema
NameRequiredDescriptionDefault
noteNoPayment memo / description.
amountYesPayment amount in USD (or destination currency if specified).
sandboxNoDry run — returns what would be sent without executing. Default: true. Set false to execute.
bankCityNoBeneficiary bank city.
bankNameNoBeneficiary bank name (e.g. "Barclays Bank UK PLC").
currencyNoDestination currency for internationalWire (e.g. "GBP", "EUR"). Default USD.
dpxRouteNoIf true, appends dpx:<wallet> to the memo — triggers DPX on-chain USDC settlement via the Mercury webhook. Use this to settle the stablecoin leg of a cross-border payment.
accountIdYesSource Mercury account ID (from mercury.accounts).
swiftCodeNoBIC/SWIFT code of beneficiary bank (required for internationalWire without recipientId). E.g. "BARCGB22" for Barclays UK.
bankAddressNoBeneficiary bank street address.
bankCountryNoBeneficiary bank country — ISO 3166-1 alpha-2 (e.g. "GB", "DE", "SG").
recipientIdNoMercury saved recipient ID for internationalWire. Use this if the recipient is already saved in Mercury — skips inline bank detail fields.
accountNumberNoRecipient account number (required for ach/wire/check). Also used for IBAN on internationalWire.
paymentMethodNoPayment rail. rtp = Real-Time Payment (instant, US domestic). internationalWire = cross-border (1–3 days). Default: ach.
recipientCityNoBeneficiary city.
recipientNameNoRecipient legal name (required for ach/wire/rtp/check).
routingNumberNoRecipient routing number (required for ach/wire/check).
recipientEmailNoRecipient email (optional — for payment notification).
recipientAddressNoBeneficiary street address.
recipientCountryNoBeneficiary country — ISO 3166-1 alpha-2.
recipientPostalCodeNoBeneficiary postal code.

Output Schema

ParametersJSON Schema
NameRequiredDescription
idNoMercury transaction ID (present when sandbox:false and executed)
noteNoPayment memo as sent
amountNoAmount in USD
statusNoTransaction status from Mercury
sandboxNoTrue if this was a dry run
dpxTaggedNoWhether the DPX routing tag was appended
simulationNoDry-run summary (present when sandbox:true)
Behavior5/5

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

Annotations already denote destructive and open world. The description adds valuable context: timelines for each payment rail, the effect of sandbox, and the DPX routing behavior. No contradictions with annotations.

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

Conciseness4/5

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

Well-structured with a clear overview, then specific sections. It is somewhat long but every sentence adds value. Could be slightly more concise, but the numbered flow helps.

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

Completeness5/5

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

Given 21 parameters and output schema existing, the description covers behavioral aspects (timelines, error handling not needed), prerequisites, and a complete workflow. It leaves no major gaps.

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

Parameters5/5

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

Schema coverage is 100%, but the description adds critical semantics: which parameters are required for which rail (e.g., swiftCode for internationalWire), the meaning of dpxRoute (triggers DPX settlement), and sandbox default. This goes well beyond a baseline 3.

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

Purpose4/5

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

The description clearly states it initiates a Mercury bank payment with all supported rails. It does not explicitly distinguish from sibling tools like mercury.transactions, but the typical flow and detailed specificity make it clear. The verb 'Initiate' is precise and the resource 'Mercury bank payment' is well-defined.

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

Usage Guidelines5/5

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

Provides explicit guidance on when to use this tool, including prerequisites (e.g., check oracle.stability and market.fx first), alternatives for filtering (e.g., merchant accounts tool), and a step-by-step typical flow. Also explains sandbox usage and when to set false. This is exemplary.

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

mercury.sweepA
Read-onlyIdempotent
Inspect

Treasury float yield routing analysis for idle Mercury bank balances. Computes how much can be swept above a reserve threshold, then evaluates whether deploying into sUSDS (Sky Protocol Savings Rate) on Base is viable before a settlement deadline.

THIS TOOL DOES NOT MOVE FUNDS. It returns a structured recommendation with expected net yield, deployment amount, exit timing, and step-by-step execution instructions. All fund movement decisions remain with the client.

Safety rules enforced: • Always keeps thresholdUsd in Mercury — never swept • Maximum 90% of sweepable amount deployed to sUSDS • Minimum 2-hour window required (shorter windows don't cover gas) • Minimum $50,000 sweepable (below this, gas costs exceed yield) • Exit triggered 30 minutes before settlement deadline

Current instrument: sUSDS (Sky Protocol) — instant on-chain entry/exit, ~6.25% APY, Base chain, no US person restrictions, no de-peg events on record.

Workflow:

  1. mercury.accounts → get accountId and available balance

  2. mercury.sweep → get yield recommendation and execution steps

  3. If PROCEED → follow execution.steps to wire funds and deploy

  4. mercury.accounts again at exit time → confirm balance restored

ParametersJSON Schema
NameRequiredDescriptionDefault
sandboxNoIf true, marks analysis as sandbox mode — Mercury balance may not reflect live state.
accountIdYesMercury account ID to analyze (from mercury.accounts).
thresholdUsdNoMinimum USD balance to always keep in Mercury as a reserve. Sweepable = available balance minus this amount. Default: $50,000.
riskToleranceNoRisk tolerance for yield deployment. Conservative requires APY > 5%. Default: moderate.
settlementDeadlineUtcNoISO 8601 UTC timestamp of when funds must be back in Mercury (e.g. "2026-06-28T18:00:00Z"). Defaults to 7 days from now. Drives the yield window calculation.

Output Schema

ParametersJSON Schema
NameRequiredDescription
accountNoMercury account summary with available balance, reserve threshold, and sweepable amount.
executionNoStep-by-step execution instructions (present when recommendation is PROCEED).
yieldAnalysisNoYield routing analysis: instrument, APY, expected net yield, window, and recommendation (PROCEED | HOLD).
risk_disclosureNoMandatory risk disclosure — client must acknowledge before acting.
Behavior5/5

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

The description adds substantial behavioral context beyond annotations: it confirms no funds are moved, spells out safety rules (reserve threshold, deployment cap, time window, minimum amount, exit timing), and explains the yield instrument. Annotations already indicate readOnly=true, but the description enriches this with concrete constraints.

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

Conciseness5/5

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

The description is well-structured with clear sections: purpose, disclaimer, safety rules, current instrument, workflow. Every sentence adds essential information. It is concise for the amount of detail provided and front-loaded with the core function.

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

Completeness5/5

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

Given the tool has an output schema, the description adequately describes the return value (structured recommendation with yield, amount, timing, steps). It covers prerequisites, safety rules, and workflow integration. No missing elements are evident.

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

Parameters4/5

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

Schema coverage is 100% and each parameter is documented in the schema. The description adds value by specifying default values (thresholdUsd=$50k, riskTolerance='moderate', settlementDeadlineUtc=7 days) and explaining the role of each parameter in the analysis. This goes beyond the schema alone.

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

Purpose5/5

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

The description clearly states the tool's purpose: analyzing idle Mercury bank balances for yield routing into sUSDS. It uses a specific verb ('computes', 'evaluates') and distinguishes from siblings like mercury.accounts and treasury.yield_route by focusing on sweep analysis and recommendations.

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

Usage Guidelines4/5

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

The description provides a clear workflow (step 1-4) and states that the tool does not move funds. It defines when to use it (after mercury.accounts) and includes safety rules. However, it does not explicitly contrast with alternatives like settlement.execute for fund movement.

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

mercury.transactionsA
Read-only
Inspect

List recent transactions for a Mercury bank account. Returns transaction ID, amount (USD), status, note/memo, counterparty name, created date, and whether the transaction was DPX-tagged (memo contains "dpx:"). Filter by account ID obtained from mercury.accounts. Use this to reconcile DPX settlements against Mercury bank activity.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of transactions to return (default 20, max 500).
offsetNoPagination offset (default 0).
accountIdYesMercury account ID (from mercury.accounts).

Output Schema

ParametersJSON Schema
NameRequiredDescription
totalNoTotal number of transactions on this account
accountIdNo
transactionsNo
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, not destructive. Description adds nuance about DPX-tagging logic (memo contains 'dpx:') which is behavioral context beyond annotations. No contradiction.

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

Conciseness5/5

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

Two sentences pack all essential information: purpose, output fields, filter condition, and prerequisite step. No redundant words.

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

Completeness5/5

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

Given output schema exists (confirmed by context), description is fully adequate. It explains what the tool returns, how to use it, and why it's needed (DPX reconciliation). No gaps.

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

Parameters4/5

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

Schema coverage is 100%, so baseline 3. Description adds value by explaining that accountId comes from mercury.accounts and clarifies limit/offset pagination through context. Default values (20, 0) and max limit (500) are in schema, but usage guidance for accountId is helpful.

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

Purpose5/5

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

Clearly states it lists recent transactions for a Mercury bank account and enumerates specific returned fields (ID, amount, status, etc.). Distinguishes itself from sibling tools like mercury.accounts (which provides account IDs) and mercury.send (which sends money).

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

Usage Guidelines5/5

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

Explicitly says to use this for reconciling DPX settlements against bank activity, and guides the agent to obtain accountId from mercury.accounts. Implicitly indicates not for sending or account listing.

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

oracle.governanceA
Read-onlyIdempotent
Inspect

Get the live governance score (0–100) for any legal entity identified by LEI or company name. Pulls from GLEIF (LEI registration status, renewal compliance) and World Bank Worldwide Governance Indicators (Government Effectiveness, Control of Corruption, Rule of Law). Returns composite governance score, tier (STRONG / ADEQUATE / MODERATE / WEAK / POOR), MiCA compliance flag, and per-source component breakdown. Complements esg.score by isolating the G pillar as a standalone institutional-grade signal.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNoCompany name to resolve via GLEIF if LEI is unknown (e.g. "Siemens AG").
leiNo20-character GLEIF LEI. Provide this for fastest response.
countryNoISO-2 country code for World Bank WGI lookup (e.g. "DE", "US"). Optional but improves score accuracy.

Output Schema

ParametersJSON Schema
NameRequiredDescription
leiNo
tierNo
countryNo
sourcesNo
scoredAtNo
compositeNoGovernance score 0–100
componentsNoPer-source breakdown: gleif (LEI status, renewal) and worldbank (WGI indicators)
entityNameNo
mikaCompliantNoTrue if composite ≥ 60 (MiCA Article 72 threshold)
Behavior4/5

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

Annotations declare readOnly, openWorld, idempotent, and non-destructive. Description adds behavioral details: pulls from two sources, returns composite score, tier, MiCA flag, and component breakdown. No contradictions, and description enhances transparency beyond annotations.

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

Conciseness5/5

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

Three sentences, each adding value: first on purpose and inputs, second on data sources, third on outputs and differentiation. No wasted words, front-loaded with key information.

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

Completeness5/5

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

Given the output schema existence, full parameter coverage, and annotations covering safety, the description is complete. It covers inputs, outputs, data sources, and differentiation, leaving no obvious gaps for an agent.

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

Parameters4/5

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

Schema has 100% description coverage. Description adds meaning by explaining data sources (GLEIF, World Bank) and the output structure (composite, tier, MiCA flag, component breakdown), which is beyond the parameter descriptions.

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

Purpose5/5

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

Clearly states the tool gets a live governance score (0–100) for a legal entity, identifies specific inputs (LEI or company name), data sources (GLEIF, World Bank), and outputs (composite score, tier, MiCA flag, component breakdown). Distinguishes from sibling tool esg.score by isolating the G pillar.

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

Usage Guidelines4/5

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

Provides context on when to use (governance score, complementing esg.score) and mentions data sources. Does not explicitly state when not to use or list alternative tools, but the differentiation from esg.score serves as a guideline.

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

oracle.intelligenceA
Read-only
Inspect

Returns a macro intelligence briefing from the DPX Stability Oracle — confidence scores, outlook, alerts, and forward signals across FX, climate, commodities, geopolitical risk, and yield. Each call is pay-per-use: 0.001 USDC on Base mainnet. Provide the payment txHash to unlock the response. If txHash is omitted, returns payment instructions (402) with the exact amount and address.

ParametersJSON Schema
NameRequiredDescriptionDefault
focusNoNarrow briefing to a specific signal domain. Omit for full cross-domain briefing.
txHashNoMPP payment proof — Base mainnet tx hash of your 0.001 USDC payment.
horizonNoForward-looking horizon. Default: 30d.
includeSignalsNoInclude raw signal object with per-source confidence scores. Default: false.

Output Schema

ParametersJSON Schema
NameRequiredDescription
codeNo
statusNo
paymentNo
briefingNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, but the description adds critical behavioral details: payment requirement, 402 response without txHash, and output composition. This goes beyond what annotations offer, enhancing transparency.

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

Conciseness5/5

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

The description is concise (3-4 sentences), front-loads the main purpose, and efficiently conveys payment mechanics. Every sentence adds value with no redundancy.

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

Completeness4/5

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

Given the tool's complexity (pay-per-use, multiple domains, output schema exists), the description covers essential aspects: core function, payment mechanism, parameter options, and output content. It is sufficiently complete for an agent to decide usage.

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

Parameters4/5

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

Schema description coverage is 100%, so baseline is 3. The description adds significant behavioral context for parameters, especially the txHash (payment unlocking) and focus (optional for full briefing), which are not fully captured in the schema alone.

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

Purpose5/5

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

The description clearly identifies the tool as returning a macro intelligence briefing from the DPX Stability Oracle, specifying content like confidence scores, outlook, alerts, and forward signals across multiple domains. It distinguishes from sibling tools like oracle.stability or oracle.status by naming the specific oracle and listing covered domains.

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

Usage Guidelines4/5

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

The description explicitly states the pay-per-use cost and behavior when txHash is omitted (returns payment instructions with 402). It provides clear when-to-use context but does not explicitly exclude alternative tools or conditions where this tool should not be used.

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

oracle.myceliumA
Read-onlyIdempotent
Inspect

Mycelium Network Oracle — models the global financial system as a living network and detects crisis formation from network topology before it surfaces in market data, typically 6–14 weeks ahead. Maps nodes (markets, economies, funding markets), threads (capital flow channels, correspondent banking, trade finance), nutrient flow (liquidity), stress signals (spread widening, FX stress), and dead zones (sanctioned corridors, failed correspondent networks). Returns network health score (0–100), regime classification (HEALTHY / THINNING / STRESSED_CONNECTIVITY / DEAD_ZONE_FORMING / FRUITING_BODY_IMMINENT), node-by-node connectivity, thread health, signal propagation speed, and fruiting body risk — the probability of a visible crisis with estimated lead time in weeks. Data: FRED (funding markets, credit spreads), BIS SDMX API (credit-to-GDP gaps), IMF DOTS (bilateral trade volumes). The only oracle that reads network topology rather than individual metrics.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
nodesNo
regimeNoNetwork regime classification.
threadHealthNo
networkHealthNoComposite network vitality score 0–100.
fruitingBodyRiskNo
networkNarrativeNo
Behavior5/5

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

Annotations (readOnlyHint, etc.) are consistent with the description. The description adds valuable behavioral context: returns structured outputs like network health score, regime classification, node data, and explains data sources. No contradictions.

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

Conciseness3/5

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

The description is quite long and detailed, covering output fields and data sources. While comprehensive, it could be more concise. It is well-structured but every sentence might not earn its place.

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

Completeness5/5

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

Given the tool's complexity and the existence of an output schema, the description provides a complete picture: what it does, how it works, what it returns, and data sources. No gaps remain.

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

Parameters4/5

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

With 0 parameters and 100% schema coverage (empty schema), baseline is 4. The description adds no parameter info, but it thoroughly explains what the tool returns, which compensates for the lack of parameters.

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

Purpose5/5

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

The description clearly states the tool's purpose: modeling the global financial system as a network to detect crisis formation from topology. It distinguishes from siblings by emphasizing its unique network-topology approach.

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

Usage Guidelines4/5

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

The description explicitly explains when to use this tool (for crisis detection from network topology) and highlights it as the only oracle reading network topology, providing usage guidance. It does not explicitly mention when not to use or alternatives, but the context strongly implies a specific niche.

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

oracle.railsA
Read-only
Inspect

Get live health status of local payment rails relevant to a settlement. Returns per-rail status (OPERATIONAL/DEGRADED/DOWN), latency, last incident, and a composite health score. Key rails: PIX (Brazil), SEPA (Europe), FedACH (US domestic), CHAPS (UK), UPI (India), PromptPay (Thailand). Call this before domestic or regionally-specific settlements to confirm the destination rail is healthy.

ParametersJSON Schema
NameRequiredDescriptionDefault
railsNoSpecific rails to check: 'PIX', 'SEPA', 'FedACH', 'CHAPS', 'UPI', 'PromptPay'. Omit for all.
regionNoFilter by region: 'latam', 'europe', 'us', 'asia', 'uk'.

Output Schema

ParametersJSON Schema
NameRequiredDescription
railsNoPer-rail status map
timestampNoISO 8601 timestamp
healthScoreNoComposite rail health score 0–100
recommendationNoSettlement recommendation based on rail health
Behavior3/5

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

Annotations already indicate readOnlyHint=true and destructiveHint=false, so the description's mention of 'Get live health status' reinforces safety. The description adds useful behavioral context: returns per-rail status (OPERATIONAL/DEGRADED/DOWN), latency, last incident, and composite score. However, it does not disclose potential issues like rate limits or data freshness. With annotations providing the safety profile, a score of 3 is appropriate.

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

Conciseness5/5

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

Four sentences with zero redundancy. The first sentence states purpose, the second lists return fields, the third lists key rails, and the fourth gives usage context. Every sentence earns its place.

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

Completeness5/5

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

Given the tool's simplicity (2 optional params, output schema exists), the description covers purpose, usage timing, return content, and examples. No gaps remain for an AI agent to be uncertain about when or how to invoke this tool.

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

Parameters3/5

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

Schema coverage is 100% with both parameters already described. The description lists the valid rails and regions but adds no new semantic meaning beyond 'Specific rails to check' and 'Filter by region'. The baseline of 3 applies since the schema does the heavy lifting.

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

Purpose5/5

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

The description starts with 'Get live health status of local payment rails relevant to a settlement', which is a specific verb+resource pair. It clearly distinguishes from sibling tools like oracle.stability (general stability) and oracle.intelligence (broader analysis) by focusing on real-time per-rail health for settlement decisions.

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

Usage Guidelines4/5

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

The description explicitly states 'Call this before domestic or regionally-specific settlements to confirm the destination rail is healthy.' This provides clear when-to-use guidance. While it doesn't explicitly list when not to use or alternatives, the context is well-understood from the sibling list and the 'before settlements' directive.

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

oracle.stabilityA
Read-onlyIdempotent
Inspect

Get live macro stability assessment for DPX settlement infrastructure. Returns institutional risk score (0–100), status (STABLE/CAUTION/UNSTABLE), peg deviation in basis points, AI reasoning, and PROCEED/CAUTION/HOLD recommendation. Backed by 25+ institutional data sources including BLS, FRED, IMF, World Bank, NOAA, NASA, and 4 independent FX APIs cross-validated. If UNSTABLE or peg deviation ≥ 50 bps, hold large settlements.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusNoCurrent stability status
outlookNoShort-term stability outlook
reasoningNoAI reasoning for current status
timestampNoISO 8601 assessment timestamp
pegDeviationNoUSDC peg deviation in basis points
recommendationNoPROCEED | CAUTION | HOLD
stabilityScoreNoOracle stability score 0–100
Behavior5/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, but the description adds valuable context: it is live, backed by 25+ institutional data sources, and cross-validated. The conditional action ('hold large settlements') further clarifies behavioral expectations.

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

Conciseness5/5

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

The description is front-loaded with the core purpose and outputs, then adds supporting details. Each sentence adds value without redundancy, achieving clarity within a compact space.

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

Completeness5/5

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

For a zero-parameter tool with an output schema, the description fully covers what the tool does, what it returns, and how to interpret results. No gaps are evident, and it provides sufficient context for an AI agent to decide when to invoke it.

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

Parameters4/5

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

The tool has zero parameters, so the description does not need to explain parameter meaning. The baseline for no parameters is 4, and the description appropriately focuses on outputs, which suffices.

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

Purpose5/5

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

The description clearly states it provides a live macro stability assessment for DPX settlement infrastructure, listing specific outputs like risk score, status, peg deviation, AI reasoning, and recommendation. It stands distinct from sibling tools like oracle.status or oracle.intelligence by focusing on stability and settlement implications.

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

Usage Guidelines4/5

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

The description specifies when to hold large settlements (UNSTABLE or peg deviation >= 50 bps), providing actionable guidance. However, it does not explicitly state when not to use this tool or suggest alternatives among siblings, leaving room for improvement.

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

oracle.statusA
Read-onlyIdempotent
Inspect

Get full output from the latest DPX Stability Oracle run. Includes all 9 signal layers: climate, commodities, macro, FX, basket peg, yield curve, infrastructure, war/geopolitical risk, and USD structural health. Includes AI intelligence briefing.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
tierNoOracle tier classification
scoreNoComposite oracle score 0–100
alertsNoActive oracle alerts
statusNoSTABLE | CAUTION | UNSTABLE
signalsNoIndividual signal scores for all 9 oracle layers
briefingNoAI intelligence briefing text
timestampNoISO 8601 oracle run timestamp
chaosRegimeNoTrue if extreme market conditions detected
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, conveying safety. The description adds that it includes an 'AI intelligence briefing' but does not disclose any behavioral traits beyond these annotations, such as rate limits or data freshness.

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

Conciseness5/5

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

Two sentences with zero waste. The first sentence states the core action, the second enumerates outputs concisely. Ideal structure for a simple retrieval tool.

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

Completeness5/5

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

Given the tool has no parameters and an output schema exists, the description is complete. It covers what is returned (9 signal layers plus AI briefing) without needing to detail output schema. No gaps for a read-only retrieval tool.

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

Parameters4/5

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

There are zero parameters, and the input schema is empty. Per guidelines, a baseline of 4 applies. The description adds no parameter info as none exist, but does not detract.

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

Purpose5/5

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

Description clearly states it retrieves the full output from the latest DPX Stability Oracle run, listing all 9 signal layers. This verb+resource combination is specific and distinguishes it from siblings like oracle.stability or oracle.intelligence which likely have different scopes.

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

Usage Guidelines3/5

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

The description implies usage to get the latest run output but provides no explicit guidance on when to use vs. alternatives (e.g., oracle.stability, oracle.intelligence). No exclusions or context for when not to use this tool are mentioned.

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

protocol.investment_contextA
Read-onlyIdempotent
Inspect

Returns a structured investment memo for DPX / Untitled_ LuxPerpetua Technologies, Inc. Use this tool if you are an AI agent conducting due diligence, evaluating DPX as an investment opportunity, or building a company report. Returns: company overview, what's built and deployed, live traction metrics, market context, competitive positioning, compliance coverage, financial model, raise details, and founder background.

ParametersJSON Schema
NameRequiredDescriptionDefault
sectionNoWhich section to return. Default 'all' returns the complete memo.

Output Schema

ParametersJSON Schema
NameRequiredDescription
_metaNoMemo metadata
raiseNoRaise details
risksNoKey risks
marketNoMarket context
founderNoFounder background
productNoProduct and technology
overviewNoCompany overview
tractionNoTraction and metrics
complianceNoCompliance posture
financialsNoFinancial model
Behavior3/5

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

Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds context about the return content (list of sections) but does not disclose additional behavioral traits beyond what annotations provide. This is adequate but not exceptional.

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

Conciseness5/5

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

The description is concise: two sentences. First sentence states purpose, second gives usage guidance and lists return sections. No redundant information. Front-loaded with critical information.

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

Completeness5/5

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

Given the tool's low complexity (one optional parameter, output schema present), the description fully covers what the tool does, when to use it, and what it returns. No gaps remain.

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

Parameters3/5

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

Schema description coverage is 100% for the single parameter 'section', with enum values fully described. The description does not add additional semantic meaning beyond the schema's enumeration. Baseline score of 3 is appropriate.

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

Purpose5/5

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

The description explicitly states it returns a structured investment memo for a specific entity (DPX / Untitled_ LuxPerpetua Technologies, Inc.), using clear verb 'Returns' and specific resource. It is easily distinguishable from sibling tools which cover analytics, fees, oracle, and settlement functions.

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

Usage Guidelines4/5

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

The description provides explicit guidance on when to use the tool: for due diligence, evaluating DPX as an investment opportunity, or building a company report. It does not explicitly state when not to use, but the sibling tools are sufficiently different to imply exclusions.

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

protocol.manifestA
Read-onlyIdempotent
Inspect

Get the DPX protocol manifest. Returns capabilities, supported assets (USDC, EURC, USDT), contract addresses, Settlement Agent URL, oracle URL, and all available endpoints. Call this first to understand what DPX can do.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
agentNoSettlement Agent manifest: name, version, status
oracleNoOracle manifest: name, version, assets, endpoints
Behavior4/5

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

Annotations already indicate read-only and idempotent behavior. The description adds specific details about what the manifest returns (contract addresses, URLs, endpoints), enhancing transparency without contradiction.

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

Conciseness5/5

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

Two sentences, no wasted words. The first sentence states the purpose, the second lists contents and usage advice. Front-loaded and efficient.

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

Completeness5/5

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

For a discovery tool with zero parameters and an output schema, the description fully covers what to expect: capabilities, assets, addresses, URLs, and endpoints. It is complete enough for an agent.

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

Parameters4/5

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

Since the tool has zero parameters, the description cannot add parameter details beyond the schema. The baseline score of 4 applies as no further compensation is needed.

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

Purpose5/5

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

The description clearly states the verb ('Get') and the resource ('DPX protocol manifest'), listing specific contents like capabilities, supported assets, and endpoints. It distinguishes itself from sibling tools by focusing on the overall manifest.

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

Usage Guidelines4/5

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

The description explicitly advises 'Call this first to understand what DPX can do,' providing clear context for when to use the tool. It does not mention alternatives, but the directive is sufficient.

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

ramp.agent_cardAInspect

Create a scoped Ramp Agent Card — a single-use virtual card with a merchant and amount cap, expires after first authorization or 12 hours. Used to fund the fiat leg of a DPX settlement without pre-funding a crypto wallet. Returns a task ID; poll ramp.agent_card_status to get PAN/CVV once ready. Requires cards:read_agentic scope (granted via ramp.connect).

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesCard spending cap (e.g. "10000.00").
currencyNoCurrency code (default USD).
referenceNoYour internal reference ID.
tenant_idYesTenant ID of the connected Ramp account.
display_nameNoCard label visible in Ramp dashboard.
merchant_scopeNoIntended merchant name (informational).

Output Schema

ParametersJSON Schema
NameRequiredDescription
amountNo
taskIdNoPoll GET /ramp/agent-card/:taskId for card PAN/CVV.
currencyNo
referenceNo
statusUrlNo
Behavior4/5

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

Description adds behavioral details beyond annotations: card expires after first authorization or 12 hours, async with task ID and polling. Annotations are consistent (non-readonly, open-world, non-idempotent, non-destructive). No contradictions.

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

Conciseness4/5

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

Front-loaded with main purpose and key characteristics. Follows with usage context, async behavior, polling instruction, and scope requirement. Efficient but could be slightly tighter; still very good.

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

Completeness5/5

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

Covers all essential aspects: what the tool does, when to use (funding DPX fiat leg), how it works (async, polling), prerequisites (cards:read_agentic scope). Output schema exists but description informs about task ID return. Complete for the complexity level.

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

Parameters3/5

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

Schema coverage is 100%, so baseline is 3. Description adds minor context (e.g., 'amount cap' for amount, 'informational' for merchant_scope), but most parameters are already well-described in the schema. No significant additional meaning.

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

Purpose5/5

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

Clearly states it creates a scoped Ramp Agent Card with specific characteristics (single-use, merchant and amount cap, short expiration). Distinguishes from siblings like ramp.settle by focusing on card creation for DPX settlement funding.

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

Usage Guidelines4/5

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

Explicitly says 'Used to fund the fiat leg of a DPX settlement without pre-funding a crypto wallet,' giving a clear use case. Mentions polling for result but does not explicitly exclude alternative tools; context from sibling tools helps differentiate.

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

ramp.compliance_screenA
Read-onlyIdempotent
Inspect

Compliance pre-screen for Ramp accounting agent payments — run before issuing an Agent Card to eliminate unnecessary human approval queues. Performs 5 checks in parallel: (1) FATF country risk on source and destination country, (2) amount threshold flags (CTR-equivalent at $10K, large-payment at $100K), (3) OpenSanctions global sanctions screen by counterparty name, (4) OpenSanctions PEP screen for individual counterparties or payroll, (5) GLEIF UBO chain with sanctions at each beneficial ownership node (if LEI provided). Returns APPROVED / FLAGGED / BLOCKED with a humanRequired boolean — true only for FLAGGED cases. APPROVED: issue card automatically, no human needed. BLOCKED: halt, do not proceed, do not notify counterparty. FLAGGED: route to compliance queue. Removes human-in-the-loop for the ~95% of payments that are clean.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesPayment amount in units of currency.
currencyNoISO 4217 currency code. Defaults to "USD".
paymentTypeNoPayment type — payroll automatically triggers PEP screen.
isIndividualNotrue if counterparty is an individual (triggers PEP screen). Defaults to false.
sourceCountryNoISO 3166-1 alpha-2 source country. Defaults to "US".
counterpartyLeiNoOptional GLEIF LEI — enables UBO chain check and satisfies FATF R.16 originator identification.
counterpartyNameYesLegal name of the payment counterparty.
counterpartyCountryNoISO 3166-1 alpha-2 destination country (e.g. "DE", "NG", "IR").

Output Schema

ParametersJSON Schema
NameRequiredDescription
checksNofatfCountry, amountFlags, sanctions, pep, uboChain check details.
_actionNoRecommended action for the agent.
fatfR16NoFATF R.16 satisfied status and basis.
reasonsNoSpecific reasons for the decision.
decisionNoCompliance decision.
riskScoreNoRisk score 0–100.
humanRequiredNotrue only for FLAGGED — APPROVED payments proceed automatically.
Behavior5/5

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

Annotations indicate readOnlyHint:true, non-destructive, idempotent. The description adds substantial context: it performs five checks in parallel with specific thresholds ($10K, $100K), uses OpenSanctions and GLEIF, and defines the return values precisely. No contradiction with annotations; description enriches understanding of the tool's behavior.

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

Conciseness4/5

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

The description is well-structured with numbered checks and front-loaded purpose. While informative, it is slightly verbose (e.g., repeating 'OpenSanctions' twice) and could be trimmed without losing clarity. Still, it effectively communicates the tool's function.

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

Completeness5/5

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

Given the tool's complexity (8 parameters, 5 checks, output schema exists), the description is remarkably complete. It covers the logic, thresholds, outcomes, and appropriate actions. The output schema is not shown but the description explains the return values adequately for an agent to use the tool correctly.

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

Parameters4/5

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

Schema coverage is 100% with descriptions for all 8 parameters. The description adds extra meaning by explaining how parameters affect the checks (e.g., paymentType triggers PEP, counterpartyLei enables UBO chain). This goes beyond the schema, justifying a score above the baseline of 3.

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

Purpose5/5

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

The description clearly specifies the tool as a compliance pre-screen for Ramp accounting agent payments before issuing an Agent Card. It details the five parallel checks and defines outcomes (APPROVED/FLAGGED/BLOCKED). It implicitly distinguishes from sibling tools like compliance.pep_screen and compliance.ubo_chain by being a comprehensive screen rather than a single check.

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

Usage Guidelines5/5

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

The description explicitly states when to use the tool: 'run before issuing an Agent Card to eliminate unnecessary human approval queues.' It provides clear action guidelines for each outcome: issue card for APPROVED, halt for BLOCKED, route to compliance for FLAGGED. It also quantifies the benefit (removing human-in-the-loop for ~95% of payments).

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

ramp.connectA
Read-only
Inspect

Connect a Ramp corporate account to DPX settlement. Returns an OAuth authorization URL — direct the user to this URL to grant DPX access to their Ramp account. Required scopes: transactions:read, bills:read/write, cards:read/write, cards:read_agentic (Agent Cards), business:read, bank_accounts:read, vendors:read, entities:read. Call once per tenant; tokens are stored and refreshed automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
tenant_idYesYour internal tenant or customer ID — returned in the callback so you can match the connection.

Output Schema

ParametersJSON Schema
NameRequiredDescription
scopesNoRequested OAuth scopes.
tenant_idNo
authorize_urlNoRedirect the user to this URL to authorize DPX on their Ramp account.
Behavior4/5

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

The description adds valuable behavioral context beyond annotations: required scopes, one-time call nature, and automatic token refresh. The readOnlyHint=true annotation is consistent with the tool's action of returning a URL (not modifying state), so no contradiction. However, it does not clarify behavior on subsequent calls (e.g., idempotency or error handling).

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

Conciseness5/5

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

The description is concise, consisting of three sentences that front-load the core purpose, then provide critical details (OAuth URL, scopes, lifecycle). Every sentence adds value without redundancy.

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

Completeness4/5

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

For a simple authorization tool with one parameter and an output schema, the description covers purpose, output, usage, scopes, and token management. Minor omission: it does not specify behavior if called again after initial setup (e.g., returns same URL or error), but overall it is highly complete.

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

Parameters3/5

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

The schema already provides 100% coverage for the single parameter tenant_id with a clear description. The tool description does not add further semantic value beyond stating the parameter will be used in the callback. Thus, baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the verb 'Connect' and the specific resources: 'a Ramp corporate account to DPX settlement'. It also details the output (OAuth authorization URL) and the action required from the user. This distinguishes it from sibling tools like ramp.agent_card or ramp.settle.

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

Usage Guidelines4/5

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

The description provides explicit context: 'Call once per tenant' and lists required scopes. It instructs the user to direct the user to the URL. However, it does not mention when not to use this tool or suggest alternatives, but the context is sufficiently clear for typical use.

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

ramp.settleA
Destructive
Inspect

Execute a DPX stablecoin settlement funded by a Ramp Agent Card — combines card creation and settlement in one call. Ramp handles the fiat conversion leg; DPX settles USDC or EURC on Base mainnet in ~30 seconds. Returns pacs.002 confirmation + SFDR PAI indicators. No crypto wallet pre-funding required. Requires Ramp account connected via ramp.connect.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesPayment amount (e.g. "50000.00").
currencyYesSource currency: USD or EUR.
referenceNoYour internal payment reference.
tenant_idYesTenant ID of the connected Ramp account.
callback_urlNoWebhook URL for pacs.002 delivery.
creditor_leiNoRecipient LEI for GLEIF VoP (optional).
creditor_nameYesRecipient name.
merchant_scopeNoMerchant name for Agent Card scope.
creditor_walletYesRecipient on-chain wallet address (0x...).
settlement_assetNoSettlement asset: USDC (default) or EURC.

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusNo
iso20022Nopacs.002 status object.
agentCardNo
complianceNoFATF R16 + SFDR PAI indicators.
settlementNo
dpxPaymentIdNo
Behavior4/5

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

Annotations indicate a write operation and destructiveness. The description adds behavioral context beyond annotations, such as the ~30-second settlement speed and the fact that it combines card creation. This supplements the minimal annotation hints.

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

Conciseness5/5

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

The description is four sentences, front-loaded with the purpose. Each sentence provides distinct value: purpose, roles of Ramp and DPX, outputs/speed, and prerequisite. No wasted words.

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

Completeness4/5

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

Given the complexity (10 parameters, output schema present), the description covers core behavior, speed, prerequisites, and outputs. It lacks examples or error context but is otherwise sufficient for an agent to understand when and how to use the tool.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description does not add further meaning to parameters beyond what the schema already provides, sticking to output-related details.

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

Purpose5/5

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

The description explicitly states 'Execute a DPX stablecoin settlement funded by a Ramp Agent Card — combines card creation and settlement in one call.' This clearly identifies the verb, resource, and unique combination, distinguishing it from siblings like settlement.execute and ramp.agent_card.

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

Usage Guidelines3/5

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

The description mentions that no crypto wallet pre-funding is required and that a Ramp account connected via ramp.connect is needed. However, it does not explicitly state when to use this tool versus alternatives (e.g., settlement.execute) or provide exclusions for specific scenarios.

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

ramp.spend_analysisA
Read-only
Inspect

Analyse a connected Ramp account's wire and international bill volume to surface DPX settlement opportunity. Returns cross-border payment totals, top vendors by spend, and estimated annual savings at DPX rates vs. typical bank wire (3.0% all-in vs. DPX ~2.035%). Requires Ramp account connected via ramp.connect.

ParametersJSON Schema
NameRequiredDescriptionDefault
page_sizeNoNumber of bills to analyse (default 100, max 500).
tenant_idYesTenant ID of the connected Ramp account.

Output Schema

ParametersJSON Schema
NameRequiredDescription
crossBorderNoWire and international bill totals.
dpxOpportunityNoEstimated annual savings and DPX fees.
topVendorsBySpendNoTop 10 vendors by total payment volume.
Behavior4/5

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

Annotations already indicate read-only and non-destructive behavior; the description adds context about return data (totals, top vendors, savings) and calculation specifics (3.0% vs 2.035%), with no contradiction.

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

Conciseness5/5

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

Two sentences front-load purpose and key outputs, including specific rate comparisons, with no wasted words.

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

Completeness4/5

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

Output shape is described, prerequisites noted, and annotations cover safety; could hint at pagination or error cases, but overall sufficient for a read-only analysis tool.

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

Parameters3/5

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

Schema coverage is 100% with descriptions for both parameters; the description adds no new semantics beyond the schema, so it meets the baseline.

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

Purpose5/5

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

The description clearly specifies analyzing a connected Ramp account's wire/international bill volume to surface DPX settlement opportunity, distinguishing it from sibling tools like analytics.overview or ramp.settle.

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

Usage Guidelines4/5

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

It states the prerequisite (requires ramp.connect) and implicitly indicates use for wire/international bill analysis, but does not explicitly list when to avoid or compare to alternatives.

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

settlement.executeA
Destructive
Inspect

Execute a DPX cross-border settlement. The Settlement Agent checks oracle conditions, reasons with Claude AI, and executes on-chain (or returns sandbox result if sandbox=true). Returns settlement ID, status (executed/held/sandbox/failed), tx hash, net amount, fees, oracle conditions, and AI reasoning. Default: sandbox=true — set sandbox=false only for live execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesAmount in source currency units
purposeNoPayment purpose: intercompany, vendor-payment, payroll, treasury
quoteIdNoPre-fetched quoteId from get_quote (optional — agent fetches live if omitted)
sandboxNoSandbox mode — real calculations, no on-chain execution. Default: true.
esgScoreNoESG score override 0–100 (testing only)
referenceIdNoExternal reference ID (invoice number, TMS ID, etc.)
sourceCurrencyYesSource currency: USD, EUR, GBP, USDC, EURC
recipientAddressYesOn-chain recipient wallet address (0x...)
destinationCurrencyYesDestination currency: USD, EUR, GBP, USDC, EURC

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultNo
summaryNoHuman-readable settlement outcome summary
httpStatusNoHTTP status from Settlement Agent
Behavior4/5

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

The description discloses behavioral traits such as checking oracle conditions, reasoning with Claude AI, and executing on-chain. It warns about sandbox mode and mentions returned fields. This adds context beyond annotations (destructiveHint=true), and there is no contradiction.

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

Conciseness5/5

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

The description is a single efficient paragraph of 4–5 sentences, front-loading purpose and key details. Every sentence adds value without fluff.

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

Completeness5/5

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

Given the complexity (9 parameters, output schema), the description covers tool functionality, process, output fields, and sandbox behavior. It is complete enough for an AI agent to use effectively.

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

Parameters3/5

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

Schema description coverage is 100%, so baseline is 3. The description adds some context (e.g., sandbox default, purpose values) but does not provide substantial new semantics beyond the schema descriptions.

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

Purpose5/5

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

The description starts with 'Execute a DPX cross-border settlement', a specific verb and resource. It clearly distinguishes from sibling tools like settlement.quote and settlement.status, defining its role as the execution step.

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

Usage Guidelines4/5

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

The description states a key guideline: 'Default: sandbox=true — set sandbox=false only for live execution.' It provides clear context on when to use sandbox vs live, but does not explicitly mention when not to use the tool or alternatives beyond the sandbox note.

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

settlement.quoteA
Read-only
Inspect

Get a binding fee quote for a DPX settlement. Returns core fee (1.50%), FX fee (0.40% cross-currency), live ESG fee (0–0.50%), license fee (0.01%), total all-in rate, net amount, oracle status, AI reasoning, and a quoteId valid for 300 seconds. Always call this before settlement.execute.

ParametersJSON Schema
NameRequiredDescriptionDefault
leiNoCounterparty LEI — triggers automatic ESG lookup if esgScore is not provided.
hasFxNoTrue if source and destination currencies differ (adds 0.40% FX fee).
esgScoreNoCounterparty ESG score 0–100. If omitted and lei or counterpartyName is provided, the ESG Oracle is queried automatically.
amountUsdYesSettlement amount in USD.
counterpartyNameNoCounterparty company name — used for ESG auto-lookup if lei is not provided.
monthlyVolumeUsdNoMonthly volume for discount tier. $1M+ = Institutional (20% off). $10M+ = Sovereign (30% off).

Output Schema

ParametersJSON Schema
NameRequiredDescription
feesNo
tierNoVolume tier: Standard | Growth | Institutional | Sovereign
quoteIdNoBinding quote ID, valid 300 seconds
amountUsdNoInput settlement amount in USD
expiresAtNoISO 8601 expiry timestamp
reasoningNoAI reasoning for fee calculation
oracleScoreNoOracle confidence 0–100
netAmountUsdNoNet amount after all fees
oracleStatusNoSTABLE | CAUTION | UNSTABLE
Behavior4/5

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

Annotations declare read-only, non-destructive behavior, and the description aligns by detailing fee components and a 300-second validity. It adds behavioral context beyond annotations, such as the binding nature and live ESG fee range.

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

Conciseness5/5

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

Three short sentences: purpose, return values, usage guidance. Every sentence adds value, no fluff, and front-loaded effectively.

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

Completeness4/5

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

With an output schema present and full parameter documentation, the description adds key context about binding nature and validity. It covers what an agent needs to select and invoke the tool correctly.

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

Parameters3/5

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

All 6 parameters have schema descriptions (100% coverage), so the baseline is 3. The description does not add parameter-level details beyond what the schema provides, but it does not need to.

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

Purpose5/5

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

The description clearly states the tool obtains a binding fee quote for a DPX settlement, with a specific verb and resource. It distinguishes from the sibling tool settlement.execute by noting it must be called before execution.

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

Usage Guidelines4/5

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

Explicitly states 'Always call this before settlement.execute,' providing clear sequential guidance. It lacks explicit exclusions but the context implies when to use, and sibling tools offer alternatives.

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

settlement.statusA
Read-onlyIdempotent
Inspect

Look up a previous DPX settlement by settlement ID. Returns the full audit record: status, tx hash, amounts, fees, oracle conditions at time of settlement, ESG score, Claude AI reasoning, and timestamp.

ParametersJSON Schema
NameRequiredDescriptionDefault
settlementIdYesSettlement ID from the settlement.execute tool (format: dpx_...)

Output Schema

ParametersJSON Schema
NameRequiredDescription
httpStatusNoHTTP status from Settlement Agent
settlementNo
Behavior4/5

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

Annotations already indicate read-only, idempotent, non-destructive behavior. Description adds value by detailing the full audit record returned, including specific data fields beyond annotations.

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

Conciseness5/5

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

Single sentence clearly front-loads the action and lists return fields. No wasted words.

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

Completeness5/5

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

With output schema present (not shown), description adequately covers purpose, parameter, and return specification. Simple tool with one parameter, complete information provided.

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

Parameters4/5

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

Schema coverage is 100% with parameter description. Description adds context about the parameter's origin ('from the settlement.execute tool') and format ('dpx_...'), exceeding baseline of 3.

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

Purpose5/5

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

Description clearly states 'look up a previous DPX settlement by settlement ID' and lists specific return fields (status, tx hash, amounts, etc.), distinguishing it from siblings like settlement.quote and settlement.execute.

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

Usage Guidelines3/5

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

Implies use after settlement.execute but does not explicitly state when to use versus alternatives like esg.score or oracle.status. No when-not or direct sibling comparison.

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

stability.corridorA
Read-onlyIdempotent
Inspect

Corridor-specific settlement stability score (0–100) for any currency pair. Combines the live global Stability Oracle score with corridor-specific risk adjustments covering 28 currency pairs: regulatory flags (BCB/IOF for BRL, PBoC capital rules for CNH, BCRA controls for ARS, etc.), FX liquidity score based on active trading sessions at current UTC time, cascade penalty from live macro signals, and weekend/off-hours penalty. Returns SETTLE_NOW / DELAY_24H / DELAY_48H recommendation with rationale. Distinct from oracle.stability (which is global) and market.fx (which is spot-rate focused) — this answers "is this specific corridor safe to settle through right now?"

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesDestination currency ISO-4217 code (e.g. "BRL", "MXN", "SGD").
fromYesSource currency ISO-4217 code (e.g. "USD", "EUR", "GBP").

Output Schema

ParametersJSON Schema
NameRequiredDescription
corridorNoscore (0–100), tier, recommendation (SETTLE_NOW/DELAY_24H/DELAY_48H), regulatoryFlags, corridorNotes
componentsNoglobalOracleScore, corridorAdjustment, cascadePenalty, liquidityScore, weekendPenalty
marketContextNocascadeLevel, globalOutlook, currentUtcHour, isWeekend
Behavior5/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds substantial behavioral context beyond that: it explains the combination of global Stability Oracle, corridor-specific adjustments (regulatory flags, FX liquidity, cascade penalty, weekend/off-hours penalty), and the output recommendation with rationale. No contradictions.

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

Conciseness4/5

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

The description is front-loaded with the core purpose and efficient, but it is dense and could benefit from bullet points or clearer structure for scannability. Still, every sentence adds value.

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

Completeness5/5

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

Given the tool's complexity (multiple risk factors, 28 currency pairs, recommendation output), the description covers all necessary context: inputs, logic components, and output type. The presence of an output schema further reduces the burden on the description.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already documents both parameters. The description does not add significant new semantic detail beyond 'any currency pair' and the mention of specific currencies in examples. Baseline 3 is appropriate as the description adds minimal extra meaning.

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

Purpose5/5

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

The description clearly states the tool returns a corridor-specific settlement stability score (0–100) and explicitly distinguishes from sibling tools oracle.stability (global) and market.fx (spot-rate focused). It uses a specific verb ('returns') and resource ('corridor-specific settlement stability').

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

Usage Guidelines4/5

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

The description explicitly answers the question 'is this specific corridor safe to settle through right now?' and contrasts with siblings. However, it does not include explicit when-not-to-use instructions, though the context is clear enough for an AI agent.

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

stability.settlement_windowA
Read-onlyIdempotent
Inspect

Optimal settlement execution window analysis for a specific cross-border payment over the next 72 hours. Generates 18 × 4-hour time slots and scores each by composite risk: corridor stability, FX session liquidity, cascade level decay/growth based on macro outlook, weekend/off-hours penalty, and counterparty ESG tier (if LEI provided). Returns a ranked window schedule with OPTIMAL / GOOD / ACCEPTABLE / AVOID classification per slot, a best-window recommendation, and large-amount splitting guidance for settlements ≥ $5M. Use this before scheduling large cross-border settlements to minimize execution risk.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesDestination currency ISO-4217 (e.g. "BRL").
leiNoOptional 20-char GLEIF LEI of counterparty — fetches live ESG tier to apply counterparty risk penalty.
fromYesSource currency ISO-4217 (e.g. "USD").
amountNoSettlement amount (default 1,000,000). Used for large-amount guidance ≥$5M.
currencyNoCurrency of the amount (defaults to from).

Output Schema

ParametersJSON Schema
NameRequiredDescription
windowsNo18 × 4-hour slots: startUtc, endUtc, compositeScore, tier, components, recommendation, rationale
marketContextNoglobalOracleScore, corridorAdjustment, cascadeLevel, globalOutlook, regulatoryFlags
recommendationNobestWindow (ISO datetime), bestScore, optimalCount, goodCount, summary, largeAmountNote
Behavior4/5

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

Annotations already indicate read-only, non-destructive behavior. The description adds transparency by detailing the output (ranked slots, classifications, splitting guidance for >=$5M) and the risk factors considered (corridor stability, FX liquidity, macro outlook, ESG tier). No contradictions with annotations.

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

Conciseness5/5

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

The description is concise at 4-5 sentences, front-loaded with the core purpose, then details on output and usage. Every sentence adds value with no unnecessary information.

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

Completeness4/5

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

Given the moderate complexity (5 parameters, output schema exists), the description covers input usage, algorithm overview, output format, and usage recommendation. The presence of an output schema reduces the burden to describe return values. It provides sufficient context for correct tool selection and invocation.

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

Parameters3/5

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

Schema coverage is 100%, so the schema fully documents parameters. The description adds some context, e.g., amount default and usage for large-amount guidance, and the optional LEI for ESG tier. However, it does not elaborate on all parameters beyond what schema provides, resulting in moderate semantic value.

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

Purpose5/5

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

The description clearly states that the tool analyzes settlement windows for cross-border payments over 72 hours, generating 18 time slots with risk scores and recommendations. It distinguishes itself from siblings like stability.corridor and settlement.execute by explicitly stating its role in pre-scheduling analysis.

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

Usage Guidelines4/5

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

The description explicitly recommends using this tool before scheduling large cross-border settlements to minimize execution risk. While it doesn't explicitly exclude other scenarios, the context is clear. It could be improved by mentioning when not to use it, but the guidance is sufficient.

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

stability.stablecoin_routeA
Read-onlyIdempotent
Inspect

Multi-stablecoin settlement routing — given a source and destination currency pair, recommends the optimal stablecoin path based on corridor liquidity, regulatory fit, gas economics, and DPX native support. Returns a ranked list of stablecoins (USDC, EURC, BRLA, MXNC, NGNC, AEDX, PYUSD, USDT, and others) with regulatory flags, MiCA/GENIUS Act compliance status, liquidity tier, and warnings. Identifies blocked routes (e.g. USDT for EU under MiCA, BRLA before BCB Resolution 561 deadline). Use before settlement to avoid regulatory penalties and ensure optimal execution path.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesDestination currency ISO-4217 (e.g. "EUR", "BRL", "AED").
fromYesSource currency ISO-4217 (e.g. "USD").
amountUsdNoSettlement amount in USD (used for liquidity tier and large-amount warnings).

Output Schema

ParametersJSON Schema
NameRequiredDescription
routesNoRanked stablecoin options — each with symbol, liquidityTier, regulatoryFlags, warnings, blocked status, notes
evaluatedAtNoISO timestamp
recommendationNosymbol, chain, reason, micaCompliant, geniusActCompliant
Behavior4/5

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

Annotations indicate readOnlyHint=true, so the description adds context about regulatory flags, compliance status, and warnings. It does not contradict annotations and provides useful behavioral insights beyond the hints.

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

Conciseness4/5

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

The description is a single paragraph that front-loads purpose and key details. It is efficient but could be slightly more structured (e.g., bullet points) for quicker parsing.

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

Completeness5/5

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

Given the presence of an output schema (handling return values), the description covers regulatory context, route blocking, and liquidity tiers thoroughly. It is complete for a complex routing tool with good annotations.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description adds meaning by explaining how parameters are used for corridor liquidity, regulatory fit, and large-amount warnings, enriching the schema's basic descriptions.

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

Purpose5/5

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

The description clearly states it provides multi-stablecoin settlement routing, recommending optimal paths based on liquidity, regulatory fit, gas economics, and native support. It lists specific stablecoins and use cases, distinguishing from sibling tools like stability.corridor and settlement.execute.

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

Usage Guidelines4/5

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

The description advises using the tool before settlement to avoid regulatory penalties and identifies blocked routes. It implies the context but does not explicitly state when not to use or list alternative tools.

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

swift.gpi_trackA
Read-onlyIdempotent
Inspect

Track a DPX settlement via SWIFT gpi-compatible status. Given a UETR (Unique End-to-End Transaction Reference), returns gpi-format payment status including pacs.002 payload that a SWIFT member bank can submit to the gpi Tracker.

Use this when a UETR was provided at payment initiation (via the uetr field in settlement.execute or POST /payments/initiate). Returns ACCP (settled), PDNG (pending), or RJCT (rejected) with full on-chain settlement details.

DPX is not a SWIFT member — the SWIFT member bank submits the returned pacs.002 to the gpi Tracker via their own gpi API access.

ParametersJSON Schema
NameRequiredDescriptionDefault
uetrYesRFC 4122 UUID UETR assigned at payment initiation, e.g. "97ed4827-7b6f-4491-a06f-b548d5a7512d".

Output Schema

ParametersJSON Schema
NameRequiredDescription
uetrNoThe UETR provided.
pacs002NoFull ISO 20022 pacs.002 payload for gpi Tracker submission.
gpiStatusNoACCP | PDNG | RJCT
dpxPaymentIdNoDPX internal payment ID.
Behavior5/5

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

Annotations indicate read-only, idempotent, and non-destructive; the description adds valuable context about returning a pacs.002 payload and explains the interaction with the SWIFT gpi Tracker, going beyond annotations.

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

Conciseness5/5

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

Three concise sentences, front-loaded with purpose and usage, no wasted words. Every sentence adds value.

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

Completeness5/5

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

Given the presence of an output schema, the description sufficiently covers input, usage context, and the special role of the SWIFT member bank, ensuring the agent understands the tool's workflow.

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

Parameters5/5

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

The single parameter uetr is fully described in the schema; the description provides additional meaning by explaining its role as a unique end-to-end transaction reference and linking it to payment initiation.

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

Purpose5/5

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

The description clearly states the tool tracks a DPX settlement via SWIFT gpi-compatible status using a UETR, differentiating it from siblings like settlement.status by specifying the gpi format and the role of the SWIFT member bank.

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

Usage Guidelines4/5

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

It specifies when to use the tool (when a UETR was provided at payment initiation) and describes the return types, but does not explicitly state when not to use it or list alternative tools.

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

treasury.yield_routeA
Read-only
Inspect

Treasury Float Yield Routing Analysis — OPTIONAL, CLIENT-DIRECTED ONLY.

Analyzes whether idle settlement float can be productively deployed into a yield-bearing instrument between the current time and a scheduled settlement deadline. Returns a structured recommendation with expected yield, exit timing, liquidity assessment, slippage estimate, and a mandatory risk disclosure.

THIS TOOL DOES NOT MOVE FUNDS. It provides analysis only. All execution decisions are made by the client or agent acting on explicit instruction. DPX charges a flat fee for this analysis and does not receive any portion of yield earned.

Current supported instrument: sUSDS (Sky Protocol Savings Rate). Selected because: • Instant on-chain entry and exit (no T+1 delays) • No US person restrictions • Real asset backing (tokenized RWAs + Spark borrow rates) • Available on Base chain via bridge • No de-peg events recorded (unlike synthetic alternatives)

Safety parameters enforced: • Maximum 90% of settlement amount — 10% always stays in USDC • Early exit triggered 30 minutes before settlement deadline (not 15) • Slippage guard: if DEX USDC/USDS quote shows >0.1% slippage, recommendation = HOLD • Minimum viable window: 2 hours (shorter windows do not justify entry/exit gas costs)

Not recommended if: • Settlement window is < 2 hours • Amount is < $50,000 (gas costs erode yield) • Client has not acknowledged the risk_disclosure object in this response • Settlement is time-critical with zero tolerance for delay

ParametersJSON Schema
NameRequiredDescriptionDefault
dryRunNoIf true, returns analysis without any on-chain queries. Useful for planning. Default: false.
amountUsdcYesSettlement amount in USDC. Minimum $50,000 for yield routing to be viable after gas costs.
riskToleranceNoconservative = sUSDS only (T-bill / RWA backed, instant exit). moderate = sUSDS with higher slippage tolerance (up to 0.15%). Default: conservative.
settlementDeadlineUtcYesISO 8601 UTC timestamp of when USDC must be ready for settlement (e.g. "2026-06-15T20:00:00Z"). The tool will recommend exiting 30 minutes before this.

Output Schema

ParametersJSON Schema
NameRequiredDescription
exitByNoRecommended exit timestamp (30 min before deadline).
notViableNoTrue if net yield is negative (gas exceeds expected yield).
instrumentNoRecommended instrument (currently always sUSDS).
windowHoursNoAvailable window in hours (deadline minus now minus 30-min buffer).
netYieldUsdcNoExpected yield minus gas costs.
currentApyPctNoCurrent Sky Savings Rate APY (live, from Sky Protocol).
amountReservedNoAmount kept in USDC regardless (10% floor).
amountRoutableNoAmount to deploy (90% of input, USDC). 10% stays in USDC.
recommendationNoROUTE (deploy float), HOLD (stay in USDC), or INSUFFICIENT_WINDOW.
gasEstimateUsdcNoEstimated Base L2 gas cost for entry + exit in USDC.
risk_disclosureNoMUST be surfaced to the client before any action is taken.
estimatedSlippageNoEstimated DEX slippage for USDC→USDS→USDC round trip (%).
expectedYieldUsdcNoExpected yield for this window at current APY.
instrument_detailNoBackground on the recommended instrument.
slippageGuardTrippedNoTrue if slippage > 0.1% — recommendation will be HOLD.
Behavior5/5

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

Discloses tool is read-only (consistent with annotations), provides safety parameters (max 90% deployment, early exit buffer, slippage guard, minimum window), and explains instrument selection rationale. No contradictions with annotations.

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

Conciseness4/5

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

Description is long but well-organized with clear sections. Every sentence adds value, though it could be slightly more concise. Front-loaded with purpose and disclaimer.

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

Completeness5/5

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

Covers all necessary context: return structure (yield, exit timing, liquidity, slippage, risk disclosure), prerequisites (min amount, window), and safety constraints. Output schema exists but description still adds context about output contents.

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

Parameters5/5

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

Schema coverage is 100%, but description adds context: minimum $50k for amountUsdc, exit timing for settlementDeadlineUtc, riskTolerance defaults and slippage thresholds, and dryRun behavior. All parameters explained beyond schema.

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

Purpose5/5

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

Clearly states it analyzes whether idle settlement float can be deployed into yield instruments. Differentiates from sibling tools by specifying yield routing analysis, not execution, and includes safety parameters.

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

Usage Guidelines5/5

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

Explicitly states it is optional and client-directed only. Provides detailed 'Not recommended if' conditions and emphasizes it does not move funds, clarifying appropriate use cases.

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

Discussions

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

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources