EUDR Compliance & TRACES-NT Agent
This server is an autonomous EUDR compliance and multi-chain escrow agent that verifies deforestation-free supply chains, generates EU customs filings, and settles B2B/crypto payments.
Plot & GIS validation: Verify WGS84 coordinates, auto-heal inverted/self-intersecting polygons, enforce the 4ha rule, and subdivide oversized parcels into compliant sub-plots.
Deforestation & satellite analysis: Audit canopy loss against the 2020-12-31 cutoff and render NDVI/SAR/optical satellite visualizations.
Due Diligence Statements: Generate TRACES-NT XML, compact 5-pillar evaluations, and DTX-style audit bundles with SHA-256/Merkle integrity checks.
EU customs & trade compliance: Produce TARIC document codes (C081/Y120/Y121/Y122), EU SWE-C clearance certificates, inspection-rate simulation, statutory exemptions, and EORI/VAT (VIES) validation.
Supply chain & risk intelligence: Benchmark Article 29 country risk tiers, chain downstream DDS references, verify producer registries (CAR, SIPUHH, MARD, etc.), and score KFS checklists.
Payment order management: Create USDC subscription/micro-payment orders across Base, Polygon, Arbitrum, Ethereum, and Solana, confirm on-chain hashes, and execute gasless EIP-3009 transfers with budget guardrails.
Multi-chain escrow: Create, fund, release, arbitrate, milestone-release, or auto-slash USDC escrows tied to EUDR compliance outcomes.
Blockchain attestation: Issue/verify EIP-712 oracle signatures and execute Solana SPL-USDC direct-split settlements and Solana Pay links.
Security & marketplace: Inspect payloads for prompt injection/malicious code, publish procurement RFQs, and submit competitive supplier bids.
Notifications & feedback: Send Telegram compliance alerts and accept agent evolution proposals.
Finance & cost tools: Estimate compliance pricing and underwrite trade credit for EUDR-cleared commodities.
Integrates with European Commission services such as VIES for real-time VAT verification and TRACES-NT for official EUDR Due Diligence Statement generation.
Allows EUDR compliance workflows to connect with SAP ERP and customs systems, enabiling submission of compliance data and Due Diligence Statements through the platform's API.
π² EUDRAgent.com | Autonomous EUDR Compliance & Multi-Chain Escrow Platform
EUDRAgent is an enterprise-grade autonomous compliance automation and Due Diligence Statement (DDS) generation engine for the European Union Deforestation Regulation (Regulation (EU) 2023/1115).
Equipped with high-resolution satellite radar (Copernicus Sentinel-1/2 SAR & Optical), 4ha polygon self-healing, EU TRACES-NT XML customs clearance, autonomous Reverse-Auction B2B procurement, sub-5ms cognitive firewall via security-gate-x402, European Customs (EU SWE-C / TARIC) automated pre-clearance, and multi-chain smart escrows across Solana Mainnet-Beta (SPL-USDC), Polygon PoS, Base, and Arbitrum One.
π½οΈ 4-Step Instant Demo (2-Second Automated Audit)
![]()
π‘ Why EUDRAgent? (The Enterprise Solution)
β The Legacy Problem | β | β The EUDRAgent Solution |
4% Global Revenue Fines & Seized Cargo | β | 0% Fine Guarantee & Verified Customs Clearance |
Weeks of Manual GIS Parcel Inspection | β | 2-Second Multi-Satellite Radar & Optical Scan |
Topological Polygon Defects & Coordinate Reversals | β | Autonomous Self-Healing GIS (Bowties, WGS84, 4ha Rule) |
Port Demurrage & Customs Clearance Holds | β | Automated EU SWE-C Port Pre-Clearance Simulation |
Rejected TRACES-NT XML Customs Filings | β | 1-Click Validated TRACES-NT XML & UCC DE 12 03 |
Ambiguity in Import TARIC Document Codes | β | Automated TARIC C081, C082, Y120, Y121, Y122 Formatter |
Trading Counterparty Fraud & Data Tampering | β | Anchor Solana Escrow + EIP-712 Oracle Slashing |
Smallholder Payment Delays & High Gas Fees | β | Sub-Second Direct Split via Solana SPL-USDC & Solana Pay |
Prompt Injections & Supply Chain Hallucinations | β | Sub-5ms Cognitive Firewall via |
Manual Procurement Inefficiencies | β | Autonomous A2A Reverse-Auction Marketplace |
Related MCP server: Agent Audit Trail MCP Server
πͺπΊ European Customs & EU SWE-C Gateway (DG TAXUD / UCC Interoperability)
Under Regulation (EU) 2023/1115 Articles 26, 27, and 28, customs authorities must verify the existence of a valid Due Diligence Statement (DDS) before releasing goods for free circulation:
1. Official EU TARIC Document Codes (Box 44 / DE 12 03 000 000)
TARIC Code | Regulatory Scope | Statutory Rationale & Action |
| Standard / Simplified EUDR DDS | Due Diligence Statement reference number + verification code registered via TRACES-NT. Mandatory for release for free circulation. |
| Downstream Operator Pass-Through | Reference to an existing valid upstream DDS (Article 4(8)). Eliminates redundant coordinate submissions. |
| Goods Outside EUDR Scope | Declaration that the consignment does not fall within Regulation (EU) 2023/1115 Annex I scope (Article 1(2)). |
| 100% Recycled Waste Exemption | Goods produced entirely from post-consumer waste materials (Annex I Footnote 1). |
| Transport Packaging Exemption | Wooden pallets, packing cases, and paper wrappers used exclusively to support or protect primary merchandise. |
2. Union Customs Code (UCC) Data Element 12 03 000 000 Generator
Generates ready-to-file electronic customs payloads matching European national customs systems:
ATLAS (Germany - Zoll)
DMS / AGS (Netherlands - Douane Nederland)
DELTA-IE (France - DGDDI)
PLDA / IDMS (Belgium - Douane & Accijnzen)
VUE (Spain - Agencia Tributaria)
3. Article 16 Inspection Rates & Major Port Clearance Profiles
EUDRAgent calculates pre-arrival inspection channel probabilities based on Article 29 country benchmarking:
High-Risk Origin (e.g. MM, KP, BY): 9% minimum statutory inspection rate (
ORANGE_DOCUMENTARY_CHECK).Standard-Risk Origin (Default): 3% statutory inspection rate (
AUTOMATED_GREEN_LANE).Low-Risk Origin (e.g. FI, SE, NO, NZ): 1% statutory inspection rate (
AUTOMATED_GREEN_LANE).Supported Hubs: Port of Rotterdam (
NLRTM), Antwerp-Bruges (BEANR), Hamburg (DEHAM), Valencia (ESVLC), Le Havre (FRLEH), Genoa (ITGOA).
4. EC EUDR Information System User Guide v3.0 Digital Workflow Compliance
EUDRAgent is natively aligned with the European Commission's Information System User Guide v3.0 (released September 2026 for Dec 30, 2026 enforcement):
Dual-Identifier Security (DDS Ref + Verification No.): When a statement reaches
AVAILABLEstatus, both a uniqueDDS Reference Numberand anti-tamperVerification Numberare paired. Required for EU Customs Box 44 / DE 12 03 000 000 clearance.5-Tier Role-Based Workflow: Native protocol support for EUDR Operators, Micro/Small Primary Producers (MSPO), SME Downstream Traders, Non-SME Downstream Operators (mandatory active verification on substantiated concern), and Authorised Representatives.
Smallholder Simplified Declaration (SD) Identifier: 1-time simplified declaration key for qualified smallholders and cooperatives to prevent global supply chain exclusion.
DDS Grouping & Group Head Liability: Hierarchical bundling of tens of thousands of parcels under a legally-binding
Group Headmaster statement with 1:1 raw material lot mapping.V3 Enterprise API Readiness: Full compatibility with the unified SOAP/HTTPS
EUDRDueDiligenceStatementServiceV3and REST JSON-LD endpoints.
π Autonomous 4-Node Inter-Agent Mesh Ecosystem
EUDRAgent is natively integrated into the @nohosa001-pixel Autonomous Agent Mesh, operating over the Model Context Protocol (MCP) JSON-RPC 2.0 with cryptographic verification:
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β EUDR Compliance Agent (Port 8000) β
β β’ Copernicus Sentinel-1/2 SAR / Optical Telemetry β
β β’ WGS84 Geodesic Polygon Self-Healing (<4ha Rule) β
β β’ Official TRACES-NT B2G Customs XML Compiler β
βββββββββββ¬βββββββββββββββββββββββ¬ββββββββββββββββββββββββ
β β
MCP / JSON-RPC β β MCP / JSON-RPC
Cognitive Shield β β Clean Supplier Web
βΌ βΌ
ββββββββββββββββββββββββββββββββββββββββ βββββββββββββββββββββββββββββββββββββββ
β Node 2: security-gate-x402 β β Node 3: x402-cleanweb-agent β
β β’ Sub-5ms Cognitive Firewall β β β’ Autonomous Web Scraping β
β β’ EIP-712 Domain 3 Truth Oracle β β β’ HTML Bloat & Ad Stripping β
β β’ Universal Direct Split Escrow β β β’ Smallholder Cooperative Dossiers β
β β’ Solana Ed25519 Mainnet Attestor β β β’ Production Web Intelligence β
ββββββββββββββββββββββββββββββββββββββββ βββββββββββββββββββββββββββββββββββββββ
β
β Cross-Check ESG
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Node 4: minerals-oracle-x402 β
β β’ Critical Minerals Valuation (Li, Ni, Cu, Co, Ti) β
β β’ EUDR Forest Conflict ESG Cross-Check & Traceability Audits β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ‘ Multi-Chain Escrow & Settlement Rails
EUDRAgent supports dual-layer smart contracts for frictionless B2B trade execution, eliminating commercial default risk while ensuring zero-deforestation compliance:
1. Solana Mainnet-Beta SPL-USDC Escrow Rail (High Throughput)
Settlement Token: Native SPL-USDC (
EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v, 6 decimals).Speed & Cost: 400ms finality, ~$0.00025 network fee.
Anchor Smart Contract:
programs/eudr-escrow/src/lib.rswithinitialize_escrow,settle_direct_split, andslash_non_compliant.Oracle Attestation: Ed25519 cryptographic truth proof (
EUDR_FOREST_SOLANAdomain).Solana Pay: Dynamic QR payloads & deep links (
solana:<recipient>?amount=...&spl-token=...).Treasury Account:
411ksMz9RHYVtVMe6RUUErzZYtrU9zzvkgzswKbqx9qp.
2. Multi-Chain EVM Payment Vaults (Polygon, Base, Arbitrum)
Polygon PoS (137):
0x45ecBfAa2F4B0Bc6ccD3eB2dB9B1Ca49CF121861(Native USDC:0x3c49...3359).Base Mainnet (8453):
0x28292D76E07E5539F15F3b97935dE8E0432E76DD(Native USDC:0x8335...2913).Arbitrum One (42161):
0x28292D76E07E5539F15F3b97935dE8E0432E76DD(Native USDC:0xaf88...5831).Smart Contract:
AgentEscrow.solwith EIP-712 off-chain oracle verification (0x90F8...C9C1).
π Live Cloud Portals & Diagnostic Endpoints
Portal / API Route | Target URL | Description |
π SaaS Official Landing Page | Interactive 4-country satellite radar sandbox & transparent pricing | |
π₯οΈ Operator Console | 4ha polygon self-healing, multi-satellite analysis, & TRACES-NT DDS generation | |
πΎ Supplier Pre-Clearance Portal | Mobile-friendly self-assessment for overseas smallholders & cooperatives | |
π Interactive API Documentation | OpenAPI 3.1 / Swagger UI for ERP, SAP, and customs system integration | |
π‘οΈ Security Gate Diagnostics | Live 4-tier probe of connected | |
βοΈ Multi-Chain RPC Status | Real-time RPC block heights & USDC contracts for Polygon, Base, Arbitrum | |
βοΈ Solana Escrow Cluster | Live slot height, 400ms block time, and SPL-USDC mint status on Solana | |
π€ A2A Marketplace RFQ | Autonomous commodity procurement and reverse-auction clearing | |
π€ Model Context Protocol (MCP) | JSON-RPC 2.0 MCP endpoint for Claude Desktop, Cursor, Antigravity | |
π LLM Discovery Directory | LLM crawler & agent standard summary |
π€ Model Context Protocol (MCP) Integration
EUDRAgent provides a native MCP v2024-11-05 server exposing 32+ autonomous agent tools. Compatible with Claude Desktop, Cursor, Antigravity, and Zed.
Claude Desktop Setup (claude_desktop_config.json)
{
"mcpServers": {
"eudr-compliance": {
"command": "python",
"args": [
"C:\\Users\\nohos\\OneDrive\\λ°ν νλ©΄\\eudr-compliance-agent\\mcp_server_stdio.py"
]
},
"eudr-compliance-cloud": {
"url": "https://eudr-compliance-agent-7qxtp3324q-du.a.run.app/api/v1/mcp"
}
}
}32 Registered Autonomous Agent Tools (Selected)
Category | Tool Name | Description |
GIS & Self-Healing |
| WGS84 geodesic coordinates, polygon closure, and strict 4.0ha rule check |
Deforestation Radar |
| Sentinel-1/2 & GFC canopy loss analysis against 2020-12-31 cutoff baseline |
Satellite Radar Map |
| Generates Sentinel-2 NDVI canopy density SVG radar visualization |
EU Customs Clearance |
| Real-time EU Commission VIES VAT cross-border reverse charge check |
DDS Compilation |
| Compiles official TRACES-NT XML & JSON-LD Due Diligence Statement |
Audit Integrity |
| SHA-256 tamper-evident cryptographic chain audit verification |
Solana Direct Split |
| Settles SPL-USDC escrow with instant direct payout to farmers |
Solana Pay Link |
| Generates standard Solana Pay URI and QR code payload |
Web3 Oracle Attest |
| Issues EIP-712 Attestation as EUDR Oracle for EVM |
Web3 Oracle Verify |
| Verifies EIP-712 proof for on-chain |
x402 Security Shield |
| Prompt injection barrier, AST sandbox, & agronomic yield fact-check |
A2A RFQ Broadcast |
| Autonomous Buyer Agent broadcasts procurement RFQ to supplier network |
A2A Bid Submission |
| Supplier AI Agent submits competitive geolocated compliance bid |
ποΈ Core Architecture & The 4 EUDR Pillars
EUDR Supply Chain Payload (JSON / CSV / GeoJSON / Shapefile)
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 1. Geodesic Spatial & Topology Engine (SpatialValidator) β
β - Strict Article 9(1)(d) 4-Hectare Rule Enforcement β
β - Sub-second WGS84 Geodesic Ellipsoidal Area Calculation (GRS80/WGS84)β
β - Autonomous Polygon Self-Healing (Self-Intersection & Spike Repair) β
ββββββββββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 2. Multi-Constellation Satellite Radar (DeforestationAnalyzer) β
β - Strict Cut-off Baseline: 31 December 2020 β
β - Copernicus Sentinel-1 (C-Band Synthetic Aperture Radar - SAR) β
β - Copernicus Sentinel-2 (NDVI 10m Multi-Spectral Monitoring) β
β - Hansen Global Forest Change (GFC) & JRC Canopy Triangulation β
ββββββββββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 3. Legal Document & Risk Benchmarking Auditor (LegalAuditor) β
β - EU Country Risk Benchmarking (Low / Standard / High Risk Tiers) β
β - Origin Legality Verification (Land Titles, Harvest Permits) β
β - Free, Prior, and Informed Consent (FPIC) for Indigenous Peoples β
ββββββββββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 4. Cryptographic TRACES-NT DDS Statement Generator (DDSGenerator) β
β - EU Customs Direct B2G Submission Payload Packaging β
β - HMAC-SHA256 Cryptographic Digital Signature & Merkle Audit Trail β
β - Dual-rail Settlement: Solana Mainnet SPL-USDC & EVM AgentEscrow β
β - Article 31 (5-Year Record Retention) Immutable Evidence Bundle β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββπ Quick Start Guide
1. Installation
# Clone the repository
git clone https://github.com/nohosa001-pixel/eudr-compliance-agent.git
cd eudr-compliance-agent
# Create and activate virtual environment
python -m venv .venv
.\.venv\Scripts\activate # Windows (PowerShell)
source .venv/bin/activate # Linux / macOS
# Install dependencies (FastAPI, Shapely, PyProj, Eth-Account, Cryptography)
pip install -r requirements.txt2. Run Local Development Server
uvicorn app.main:app --reload --port 8000Open your browser at http://localhost:8000 to access the SaaS Landing Page, or http://localhost:8000/dashboard for the Operator Console.
3. Run Automated Test Suite (294 Tests)
python -m pytest -v tests/Validates the complete suite of 294 automated tests covering GIS self-healing, Copernicus satellite radar analysis, EIP-712 EVM escrows, Solana SPL-USDC Direct Splits, and Inter-Agent Mesh diagnostics.
π Programmatic API Usage Examples
1. Submit EUDR Due Diligence Evaluation
curl -X POST "http://localhost:8000/api/v1/eudr/evaluate" \
-H "Content-Type: application/json" \
-d '{
"operator_id": "VN-EXP-COFFEE-8821",
"operator_name": "Highland Agri Export Ltd",
"commodity": "COFFEE",
"hs_code": "0901.11.00",
"product_description": "Arabica Green Coffee Beans Premium Grade",
"net_mass_kg": 24000.0,
"plots": [
{
"plot_id": "VN-LAMDONG-001",
"country_code": "VN",
"geometry": {
"type": "Polygon",
"coordinates": [
[
[108.4380, 11.9400],
[108.4420, 11.9400],
[108.4420, 11.9435],
[108.4380, 11.9435],
[108.4380, 11.9400]
]
]
},
"declared_area_ha": 17.5,
"production_date_start": "2023-10-01",
"production_date_end": "2023-11-15",
"producer_name": "Da Lat Arabica Cooperative"
}
],
"documents": [
{
"document_type": "LAND_TITLE",
"document_id": "LURC-VN-2018-990",
"country_code": "VN",
"issuing_authority": "Lam Dong Department of Natural Resources",
"issue_date": "2018-05-12",
"expiry_date": "2038-05-12",
"plot_ids": ["VN-LAMDONG-001"]
}
]
}'2. Execute Solana SPL-USDC Direct Split Settlement
curl -X POST "http://localhost:8000/api/v1/escrow/solana/settle-eudr" \
-H "Content-Type: application/json" \
-d '{
"job_id": "job_timber_sumatra_01",
"buyer_wallet": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU",
"recipients": [
{"recipient": "411ksMz9RHYVtVMe6RUUErzZYtrU9zzvkgzswKbqx9qp", "amount": 1000.0, "role": "COOPERATIVE_FARMER"}
],
"attestation": {
"domain": "EUDR_FOREST_SOLANA",
"cluster": "mainnet-beta",
"job_id": "job_timber_sumatra_01",
"is_valid": true,
"deforestation_free": true,
"oracle_pubkey": "774hK5wmk5pStvsh5DH46pYPYYD3ro7tMfz1ASxcbiTK",
"signature": "41zgMmCsWVKU32Yk8QVNR3fpVrmnWXrguKsHmUTGLmspritarqPJuAXXfREpvAJoNxhWo14U6UQSh6dn9sgukATF"
}
}'π‘οΈ Enterprise 4-Pillar Regulatory Enhancements (2026/2027 Enforcement Ready)
To ensure zero-penalty compliance and streamline global primary producer onboarding, EUDRAgent includes 4 enterprise-grade statutory modules:
1. πΊοΈ ESRI Shapefile (.zip) Multi-Format Bulk Ingestion Engine
Pure-Python Parsing: Zero-dependency unpacking of
.shp,.dbf, and.prjfiles from compressed archives.Autonomous WGS84 Reprojection: Auto-detects local UTM / Projected Coordinate Systems (EPSG) via
pyprojand reprojects to WGS84 (EPSG:4326) with topological self-healing.Unified Import: Seamlessly accepts ESRI Shapefiles (
.zip), GeoJSON, CSV, KML, and Excel files in a single endpoint.
2. ποΈ EUDR Article 31 Statutory 5-Year WORM Audit Vault
5-Year Immutability: Enforces legal retention requirements (Article 31) using Write-Once-Read-Many (WORM) storage with automated 5-year expiration tagging.
Cryptographic Merkle Root: Generates a tamper-proof SHA-256 Merkle root across all plots, satellite telemetry, land titles, and supplier records.
1-Click Customs Inspection Bundle: Downloadable, pre-compiled statutory ZIP packages (
GET /api/v1/compliance/audit-vault/{id}/download) ready for EU Competent Authorities (CA).
3. π°οΈ EUDR Article 2(5) Forest Degradation & Plantation Conversion Detector
Structural Degradation Engine: Implements strict statutory definitions for the conversion of Primary Forest & Naturally Regenerating Forest into Commercial Plantations.
Sentinel-2 Multi-Spectral Texture Analysis: Evaluates canopy structure homogeneity, linear planting patterns (tree rows), harvesting tracks, and post-cutoff NDVI variance.
Autonomous Decision Logic: Flags parcels exhibiting structural plantation conversion post-December 31, 2020 as
HIGH_RISK_DEGRADEDto prevent EU border holds.
4. π± Smallholder Offline PWA Field Survey Mode
Deep Remote Offline Survey: Enables local enumerators to log smallholder production plots without internet access.
Walking GPS Polygon Logger: Real-time vertex recording with live Shoelace polygon area calculation and 4ha threshold verification.
Offline Indexed Queue & One-Click Sync: Queues field surveys locally and synchronizes directly with the EUDR compliance engine upon reconnection.
βοΈ Production Cloud Deployment
Deploy to Google Cloud Run (Seoul asia-northeast3)
.\deploy_gcp.ps1Automatically packages the container, injects production environment variables (Copernicus CDSE credentials, Multi-Chain RPCs, Solana Treasury Wallet), and deploys to Google Cloud Run with automated TLS and CDN acceleration.
π Regulated Annex I Commodities (EUDR)
EUDRAgent provides automatic classification and compliance verification across all 7 Annex I commodities:
β Coffee (HS Chapter 0901)
π« Cocoa (HS Chapter 1801β1806)
π΄ Oil Palm (HS Chapter 1511, 1207, 2306, 2905, 3823)
πͺ΅ Wood & Timber (HS Chapter 4401β4421, 4701β4707, 4801β4823, 9401, 9403)
π± Soya (HS Chapter 1201, 1208, 1507, 2304)
π² Rubber (HS Chapter 4001, 4005, 4006, 4007, 4008, 4011, 4012)
π₯© Cattle / Beef & Leather (HS Chapter 0102, 0201, 0202, 4101, 4104, 4107)
βοΈ Legal & Regulatory Disclaimer
This software assists operators and traders in fulfilling statutory compliance obligations under Regulation (EU) 2023/1115. Operators remain legally responsible for the final submission of Due Diligence Statements to EU competent authorities via the TRACES-NT portal.
π License
Released under the MIT License. Copyright © 2026 EUDRAgent.com. All rights reserved.
Available Tools
41 toolseudr_agent_eip3009_payB
Executes gasless, 1-turn autonomous USDC settlement via EIP-3009 (transferWithAuthorization). Zero native gas required by the calling agent.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Blockchain network for USDC transferWithAuthorization. | Base (Low Gas $0.01) |
| nonce | Yes | Unique 32-byte hex nonce for replay attack protection. | |
| agent_id | No | Unique calling agent identifier. | |
| signature | Yes | Compact 65-byte EIP-712 signature (0x + 130 hex characters). | |
| to_address | No | Optional recipient address (defaults to AgentPaymentVault). | |
| value_usdc | Yes | Authorized USDC amount in decimal (e.g. 1.50 for 15 plots). | |
| from_address | Yes | Agent EVM sender wallet address (0x...). | |
| valid_before | Yes | Unix timestamp expiration deadline for authorization. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does add real context: gasless, 1-turn, zero native gas required by the caller. However, it omits critical behavioral facts for a settlement tool β irreversibility, what happens on signature/nonce failure, and whether funds can be recalled.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with zero filler, front-loading the core action and following with the key differentiator (gasless, no native gas). Nothing redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter, 5-required payment tool with no annotations and no output schema, the description covers the mechanism but leaves gaps: no return/failure semantics, no confirmation of finality, and no guidance on the required signature/valid_before workflow. Adequate but incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 8 parameters are already documented in the schema, and the baseline is 3. The description adds only the EIP-3009 authorization framing and nothing about parameter formats or constraints beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Executes ... USDC settlement') and names the mechanism (EIP-3009 transferWithAuthorization), which distinguishes it from generic payment siblings. It does not explicitly contrast with close siblings like eudr_agent_micro_pay or eudr_create_payment_order, so an agent must infer the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says what the tool does but never states when to choose it over the many sibling payment tools (micro_pay, create_payment_order, escrow flows). No preconditions, exclusions, or alternative routing are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_agent_micro_payA
Executes autonomous real-time on-chain USDC micro-settlement per plot or batch. Human checkout is excluded.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Blockchain network for USDC micro-payment. | Base (Low Gas $0.01) |
| tx_hash | Yes | On-chain transaction hash proving USDC transfer to deposit wallet. | |
| agent_id | Yes | Unique autonomous agent identifier or wallet address. | |
| num_plots | Yes | Number of plots to verify ($0.10 USDC / plot). | |
| sender_wallet | Yes | Agent smart wallet or EOA address. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states it 'executes' settlement, but the input schema includes a tx_hash proving USDC transfer, creating ambiguity about whether the tool initiates the transfer or verifies/records an existing one. It does not disclose side effects (e.g., fund movement, irreversible actions), authorization requirements, or what happens on failure. The lack of clarity on the role of tx_hash is a significant gap for an on-chain operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core action, and contains no redundant words. 'Human checkout is excluded' is a succinct differentiator. It is appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an on-chain payment tool, the description is incomplete. It does not explain the expected outcome (e.g., settlement recorded, funds moved), prerequisites (e.g., budget availability, prior transaction), or how the tx_hash is used. The ambiguity between executing versus verifying a transfer leaves agents uncertain about preconditions and postconditions. No output schema exists, so the description should compensate, but it does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description mentions 'per plot or batch', which loosely maps to num_plots, but adds no extra semantic detail beyond what the schema already provides. Since all parameters are well-described in the schema, the description does not need to compensate, but it also does not enhance understanding beyond the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action: 'Executes autonomous real-time on-chain USDC micro-settlement per plot or batch.' It also differentiates itself by explicitly excluding human checkout, which distinguishes it from human-initiated payment tools like eudr_create_payment_order. The verb 'executes' and specific resource 'USDC micro-settlement' make the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives contextual guidance by stating it is for autonomous real-time settlement and excluding human checkout, implying this tool is for agent-driven micro-payments. However, it does not explicitly name alternative tools or provide conditions for when to choose this over e.g., eudr_create_payment_order. The exclusion of human checkout provides a clear boundary, but more explicit routing would be ideal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_arbitrate_agent_escrowA
Executes deterministic autonomous dispute arbitration using Copernicus satellite telemetry. If deforestation is detected post-2020: 100% refund to Buyer Agent; if deforestation-free: released to Seller Agent.
| Name | Required | Description | Default |
|---|---|---|---|
| plots | No | Production plots for satellite radar arbitration. | |
| reason | Yes | Dispute claim / cause. | |
| escrow_id | Yes | Unique Escrow ID under dispute. | |
| initiator_agent_id | Yes | Agent initiating dispute. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the core behavioral outcome: post-2020 deforestation triggers a 100% refund to the Buyer Agent, while deforestation-free status releases funds to the Seller Agent. However, it omits authorization requirements, irreversibility, escrow state changes, and edge-case handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two tightly written sentences with no wasted words. The purpose and conditional outcomes are front-loaded, making it easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex financial arbitration tool with no annotations and no output schema, the description covers the central decision logic and payout outcomes but leaves gaps around caller permissions, preconditions, and return behavior. It is adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters. The description adds only contextual meaning by linking the process to Copernicus satellite telemetry, but it does not provide additional syntax, format, or dependency details beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: deterministic autonomous dispute arbitration for an agent escrow. It clearly distinguishes the tool from generic escrow release siblings by its arbitration logic, though it does not explicitly name alternative tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage during a dispute and gives the decision rule based on post-2020 deforestation, but it does not state when to choose this tool over related siblings such as eudr_auto_slash_disputed_escrow or eudr_release_agent_escrow. No exclusions or prerequisites are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_auto_slash_disputed_escrowA
Executes autonomous on-chain slashing for escrows with verified deforestation violations, issuing EIP-712 BLOCKED attestation and refunding 100% of capital to Buyer.
| Name | Required | Description | Default |
|---|---|---|---|
| reason | No | Cause for slashing (e.g. 'Post-2020 deforestation confirmed by Sentinel radar'). | |
| escrow_id | Yes | Unique Escrow ID in DISPUTED status to automatically slash. | |
| slashing_penalty_pct | No | Percentage of locked escrow to refund to buyer. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It does disclose real consequences beyond the schema: autonomous on-chain execution, issuance of a BLOCKED attestation, and a full capital refund to Buyer. But it omits critical operational facts for an irreversible destructive action β required authorization/role, whether the slash can be reversed or challenged, and how failure cases are handled.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single front-loaded sentence with no wasted clauses: precondition, mechanism, and outcome in sequence. 'Autonomous' is mildly promotional and the sentence is dense, but nothing needs trimming.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a high-stakes, irreversible escrow-slashing mutation with no annotations and no output schema, the description covers the outcome and side effect (attestation + refund) but not the authorization requirements, irreversibility, or post-execution state. It is adequate but under-specified for the risk profile.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters are already documented, which sets the baseline at 3. The description only loosely mirrors one parameter ('refunding 100% of capital' maps to slashing_penalty_pct's default of 100) and adds no format, range, or interaction detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Executes slashing) against a specific resource (escrows) with an explicit precondition (verified deforestation violations), and names the concrete effects (EIP-712 BLOCKED attestation, 100% refund to Buyer). This is enough to distinguish it from siblings like eudr_release_agent_escrow or eudr_arbitrate_agent_escrow without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The precondition 'escrows with verified deforestation violations' (reinforced by the escrow_id schema note that the escrow must be in DISPUTED status) tells the agent when this is applicable. However, it never names an alternative or states when NOT to use it β e.g. versus arbitrate_agent_escrow or release_agent_escrow β leaving sibling selection to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_benchmark_countryA
Evaluates EUDR Article 29 country benchmarking risk tier (Low, Standard, High) and determines Article 13 simplified due diligence eligibility with official EU customs audit rates (1%, 3%, 9%).
| Name | Required | Description | Default |
|---|---|---|---|
| country_code | Yes | ISO 3166-1 alpha-2 country code of production origin (e.g. 'DE', 'ID', 'BR', 'MM', 'KP'). | |
| suspected_mixing | No | Whether bulk mixing with unknown or high-risk origin plots is suspected. | |
| suspected_circumvention | No | Whether transshipment laundering or regulatory circumvention is suspected. | |
| corruption_index_override | No | Optional CPI score override (0-100). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description must carry the full behavioral burden. It discloses that the tool evaluates and determines eligibility, and mentions official audit rates, but it does not clarify whether the operation is read-only, whether it has side effects, or what permissions are required. The behavioral context is adequate but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, information-dense sentence that front-loads the core purpose and includes specific regulatory references and output values. Every part earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is fairly complete: it explains the evaluation, the output tiers, and audit rates. It could benefit from more detail on the return format or behavioral traits, but it covers the essential information an agent needs to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds no parameter-specific semantics beyond what is in the schema, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Evaluates, determines) and resource (EUDR Article 29 country benchmarking risk tier, Article 13 simplified due diligence eligibility). It clearly distinguishes this tool from siblings by focusing on country-level risk tier assessment and customs audit rates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives. It explains what the tool does but does not mention any prerequisites, conditions, or sibling tools that might be more appropriate in certain contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_check_deforestationA
Performs satellite radar triangulation and canopy loss detection against the EUDR cut-off date of 31 December 2020. DO NOT use as an official regulatory legal filing without independent manual verification. Computed as an algorithmic heuristic data reference.
| Name | Required | Description | Default |
|---|---|---|---|
| plot_id | Yes | Identifier of the plot being audited. | |
| coordinates | Yes | WGS84 coordinates of the plot or centroid. | |
| cutoff_date | No | Regulatory baseline cut-off date (EUDR mandatory: 2020-12-31). | 2020-12-31 |
| country_code | Yes | ISO 3166-1 alpha-2 country code. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It reveals that the tool is an 'algorithmic heuristic data reference' and warns against official filing, which is useful. However, it doesn't describe the output format, potential side effects, error conditions, or any external calls. The heuristic nature is disclosed, but other behavioral aspects remain opaque.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no fluff. The core purpose is stated upfront, followed by a crucial warning and nature clarification. Every word earns its place, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and no annotations, so the description must explain what results look like and how to interpret them. It only states it's a heuristic reference, but doesn't describe return values, interpretation guidance, or prerequisites. Also, it doesn't guide when to use this versus sibling verification tools. This leaves significant gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for all four parameters (100% coverage), so the description adds little beyond that. It does mention the EUDR cut-off date explicitly, aligning with the default value, but doesn't elaborate on parameter syntax or relationships. Baseline 3 is appropriate given the schema already documents parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs satellite radar triangulation and canopy loss detection against the EUDR cut-off date. The verb 'performs' and the specific resource make the purpose unambiguous. It doesn't explicitly contrast with sibling tools, but the function is distinct enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes a strong warning not to use it as an official legal filing without manual verification, implying it is for heuristic reference. However, it doesn't explicitly state when to prefer this tool over alternatives like eudr_verify_plot, nor does it provide positive usage conditions. The caution is helpful but the guidance is incomplete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_confirm_paymentB
Validates on-chain transaction hash for a payment order and issues the activated Pro API Key.
| Name | Required | Description | Default |
|---|---|---|---|
| tx_hash | Yes | On-chain transaction hash confirming the USDC transfer. | |
| order_id | Yes | Payment order ID (e.g. 'ORD-XXXXXXXXXX'). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full burden of behavioral disclosure. It only states the action and result, but omits side effects (e.g., activation is likely irreversible), prerequisites (e.g., order status), and failure behavior (e.g., what happens if the hash is invalid). For a payment confirmation that issues a key, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the action and outcome with no unnecessary words. It is concise and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema is provided, and the description does not indicate what the tool returns (e.g., the API key, a confirmation object, or an error). It also lacks prerequisites and error conditions. For a tool that activates a key, the agent needs to know the response shape and failure modes to handle results correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are fully described in the input schema (100% coverage), so the schema already provides clear meaning. The description does not add additional format or syntax details beyond what is in the schema, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('validates'), the resource (on-chain transaction hash for a payment order), and the outcome (issues the activated Pro API Key). It also distinguishes itself from the sibling 'eudr_create_payment_order' by focusing on confirmation rather than creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: it likely follows 'eudr_create_payment_order' and confirms payment. However, the description does not explicitly state when to use it vs alternatives, nor does it mention any exclusions or prerequisites (e.g., order must exist, payment must be completed).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_create_agent_escrowB
Creates an immutable B2B trade Smart Escrow agreement locking USDC funds in multi-chain payment vaults until verifiable EUDR customs compliance is proven. Eliminates commercial default risk.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Blockchain network for settlement. | Base (Low Gas $0.01) |
| hs_code | Yes | Regulated commodity HS code (e.g. '18010000', '44071100'). | |
| amount_usdc | Yes | Escrow lock amount in USDC. | |
| buyer_wallet | Yes | Buyer EVM / Solana wallet address for refunds. | |
| expiry_hours | No | Auto-refund window in hours. | |
| seller_wallet | Yes | Seller EVM / Solana wallet address for payout. | |
| buyer_agent_id | Yes | Calling buyer agent ID / system name. | |
| seller_agent_id | Yes | Target seller agent ID / supplier identifier. | |
| declared_net_mass_kg | No | Declared shipment net weight in kg. | |
| commodity_description | Yes | Description of the trade shipment batch. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses that the escrow is immutable, that funds are locked until EUDR compliance is proven, and that it targets default risk, which is real signal. However, it omits critical operational behavior: what happens at expiry (the schema's expiry_hours default of 72 suggests auto-refund, but the description never confirms it), who can trigger release, and what the caller must have already done (e.g., verified counterparty).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly packed sentences with the core operation front-loaded and the value proposition trailing. The closing phrase 'Eliminates commercial default risk' is mild marketing padding but does convey the tool's purpose, so the waste is minimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 10 parameters, 7 required, no annotations, and no output schema, the description is adequate but thin. It explains the concept well but leaves the agent without the lifecycle context needed to call it correctly in sequence (funding, release, arbitration, expiry behavior).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the schema, establishing a baseline of 3. The description adds no syntax, format, or constraint detail beyond the schema, so it does not earn more.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb (Creates) and a precise resource (an immutable B2B trade Smart Escrow agreement), plus the mechanism (locking USDC in multi-chain vaults until EUDR compliance is proven). It implicitly distinguishes itself from escrow siblings like eudr_create_milestone_escrow and eudr_fund_agent_escrow by emphasizing the compliance-conditional, immutable nature, but it never names those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance, and no pointer to the follow-up tools an agent would obviously need (eudr_fund_agent_escrow, eudr_release_agent_escrow, eudr_arbitrate_agent_escrow). Usage must be inferred entirely from the tool name and the compliance framing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_create_milestone_escrowC
Creates a 3-Stage Milestone Conditional Escrow agreement with optional First-Mile split payouts to smallholder cooperatives and mills (Stage 1: Satellite 30%, Stage 2: DDS 40%, Stage 3: Customs Green Lane 30%).
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Blockchain network for settlement. | Base (Low Gas $0.01) |
| hs_code | Yes | Regulated commodity HS code (e.g. '18010000', '44071100'). | |
| amount_usdc | Yes | Escrow lock amount in USDC. | |
| buyer_wallet | Yes | Buyer EVM / Solana wallet address for refunds. | |
| seller_wallet | Yes | Seller EVM / Solana wallet address for payout. | |
| buyer_agent_id | Yes | Calling buyer agent ID / system name. | |
| seller_agent_id | Yes | Target seller agent ID / supplier identifier. | |
| split_recipients | No | First-mile multi-party split distribution (e.g. Smallholder Co-op 75%, Mill 25%). | |
| milestone_weights | No | Weight percentages for milestones 1, 2, 3 (default: [30, 40, 30]). | |
| declared_net_mass_kg | No | Declared shipment net weight in kg. | |
| commodity_description | Yes | Description of the trade shipment batch. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full behavioral burden. It discloses the milestone stages and optional split structure but says nothing about irreversibility, required wallet approvals, funding dependencies, permissions, or the relationship to release/fund escrow tools, all critical for a financial escrow creation operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with the verb and resource front-loaded, and the parenthetical stage breakdown is dense but relevant. It is efficient, though the stage percentages partially duplicate the milestone_weights default already in the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex 11-parameter financial escrow mutation with no annotations and no output schema, the description is incomplete. It does not explain prerequisites, post-creation lifecycle, funding steps, or how the agent should proceed after creation, leaving significant gaps for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 11 parameters, establishing a baseline of 3. The description adds a mapping between stages and the default milestone weights (30/40/30), but does not add substantial semantics beyond what the schema provides for split_recipients, chain, or wallet fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Creates') and a specific resource ('3-Stage Milestone Conditional Escrow agreement'), and adds detail about optional first-mile split payouts and stage weights. However, it does not distinguish this tool from siblings such as eudr_create_agent_escrow or eudr_create_payment_order, so an agent must infer the difference from the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains what the tool creates but gives no explicit guidance on when to choose it over alternatives, no prerequisites, and no exclusions. With many escrow-related siblings, this omission leaves routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_create_payment_orderA
Creates an on-chain USDC payment order for SaaS plan subscription with budget guardrails. Returns deposit wallet address, amount, invoice number, and QR payload.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Blockchain network for USDC payment. | Base (Low Gas $0.01) |
| plan_tier | Yes | Subscription tier to purchase. | |
| vat_number | No | Optional EU VAT number. | |
| company_name | Yes | Legal company name. | |
| contact_email | Yes | Contact email for invoice delivery. | |
| billing_country | No | Country of tax registration. | |
| max_budget_usdc | No | Optional AI Agent safety budget cap. Raises error if order amount exceeds this ceiling. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It makes clear this is an order-creation action, mentions budget guardrails, and specifies exactly what the caller receives. It does not discuss auth or order expiration, but those are minor gaps for a creation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two tight sentences: the first front-loads what the tool does, and the second lists the return payload. There is no filler, redundancy, or buried detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
All 7 parameters are covered by the schema, and the description compensates for the missing output schema by explicitly listing the returned fields. It does not describe the post-order confirmation flow, but that is outside the single tool's responsibility.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter is already documented in the input schema. The description adds high-level context such as USDC, subscription, and budget guardrails, but not parameter-specific detail β which is acceptable given the schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: it creates an on-chain USDC payment order for a SaaS plan subscription. It also names the key returned artifacts (deposit wallet address, amount, invoice number, QR payload), making it clearly distinguishable from siblings like eudr_confirm_payment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context is clear β this tool creates a payment order for a subscription β but it does not explicitly say when not to use it or mention that eudr_confirm_payment is the natural follow-up. The usage guidance remains implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_estimate_compliance_costA
Calculates estimated tier pricing and clearing fees in EUR for EUDR plot verification and TRACES-NT filing.
| Name | Required | Description | Default |
|---|---|---|---|
| num_plots | Yes | Number of production plots/farms to process. | |
| satellite_resolution | No | Satellite imagery resolution tier. | sentinel_10m |
| include_traces_submission | No | Whether automated TRACES-NT B2G XML dispatch is requested. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. The verb 'Calculates estimated' suggests a non-mutating, read-only estimation operation, but the description does not explicitly say that no actual payment, filing, or verification is performed. It is adequate but leaves side-effect behavior implicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It leads with the action, specifies the output currency and fee types, and names the relevant EUDR context. Every phrase earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should ideally clarify what the tool returns, such as a breakdown or a single estimated amount. It does state the currency (EUR) and cost categories, which is helpful, but it does not explain the return shape or how the estimation maps to the optional parameters. The tool is simple, so this is a minor gap rather than a critical one.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters are already documented in the input schema. The description adds domain context ('tier pricing' and 'TRACES-NT filing') that loosely maps to satellite_resolution and include_traces_submission, but it does not add meaningful per-parameter detail beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Calculates'), a concrete deliverable ('estimated tier pricing and clearing fees in EUR'), and the domain context ('EUDR plot verification and TRACES-NT filing'). This makes the tool's function immediately clear and distinct from the sibling tools, none of which are cost-estimation tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when an EUDR compliance cost estimate is needed, but it does not explicitly state when to use it versus alternatives, nor does it mention any exclusions or prerequisites. The usage context is inferable but not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_evaluate_compactB
Executes end-to-end 5-pillar EUDR compliance evaluation (Traceability, Satellite Radar, Legal Audit, Cryptographic Signing, OMR & Customs) and returns an ultra-compact summary (~300 tokens) saving >95% LLM context tokens. Full audit evidence is securely persisted and accessible via persistent download URLs.
| Name | Required | Description | Default |
|---|---|---|---|
| plots | Yes | List of production plots with plot_id, country_code, area_hectares, and geometry/coordinates. | |
| hs_code | Yes | Harmonized System Code (e.g. '151110', '440711'). | |
| commodity | No | Regulated commodity name or category. | |
| documents | No | Optional list of legal origin documents (permits, land titles, certificates). | |
| net_mass_kg | No | Consignment net mass in kilograms. | |
| operator_eori | Yes | Operator EU EORI / VAT number. | |
| operator_name | Yes | Legal name of the EU importing operator. | |
| destination_country | No | Optional ISO 3166-1 alpha-2 destination country code (e.g. 'FR', 'DE', 'GF'). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It usefully discloses the output behavior (compact ~300-token summary, full evidence persisted, download URLs), but omits side-effect/auth/permission implications and any failure semantics for what is clearly an evaluation tool that persists audit evidence.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the operation and pillar scope, then the output/token-efficiency detail. Efficient overall, though 'ultra-compact' and '>95% LLM context tokens' lean slightly promotional.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description does explain the return value (compact summary plus download URLs), which covers the key output gap. However, for a mutation-adjacent tool that persists evidence, the absence of any auth, cost, or side-effect disclosure leaves it only adequately complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each of the 8 parameters documented inline (plots, hs_code, commodity, documents, etc.), so the schema does the heavy lifting. The description adds no additional parameter meaning beyond what the schema already states, which is the correct baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific verb ('executes') and resource ('end-to-end 5-pillar EUDR compliance evaluation') and enumerates the five pillars, so the scope is unmistakable. It does not explicitly contrast itself with siblings like eudr_check_deforestation or eudr_generate_dds, which are adjacent compliance tools, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is the comprehensive evaluation but gives no when-to-use guidance, no prerequisites, and no indication of when to prefer it over the many sibling compliance tools (eudr_check_deforestation, eudr_score_kfs_checklist, eudr_generate_dds, etc.). Usage is left entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_evaluate_customs_taricB
Evaluates commodity HS code and regulatory status to determine the statutory EU TARIC Document Code (C081, C082, Y120, Y121, Y122) and formats Box 44 / DE 12 03 000 000 customs declaration.
| Name | Required | Description | Default |
|---|---|---|---|
| hs_code | Yes | Harmonized System tariff code (6-10 digits). | |
| is_recycled | No | Whether 100% post-consumer recycled waste (Annex I Footnote 1). | |
| dds_reference_id | No | TRACES-NT DDS reference number, if already filed. | |
| is_packaging_only | No | Whether commodity is protective packaging supporting another good. | |
| verification_code | No | TRACES-NT security verification code. | |
| is_downstream_operator | No | Whether downstream operator referencing upstream DDS (Art. 4(8)). | |
| upstream_dds_reference | No | Upstream DDS reference for pass-through. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It discloses the output (a TARIC code and formatted declaration), but omits safety profile, read-only vs write behavior, authentication requirements, side effects, and 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no wasted words. It efficiently conveys the core purpose and output without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema, the description adequately identifies the return content (statutory TARIC code and Box 44 formatting). Combined with rich schema coverage for all parameters, an agent has enough to call it, though usage context and behavioral details remain thin.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all seven parameters. The description adds no parameter-level syntax or format details beyond what the schema already provides, making the baseline score of 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific evaluation task (HS code plus regulatory status) and names the exact output codes (C081, C082, Y120, Y121, Y122) and declaration format (Box 44 / DE 12 03 000 000). This clearly distinguishes it from siblings like eudr_generate_customs_certificate or eudr_simulate_swe_c_customs_clearance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use guidance or alternatives are provided. The description implies usage for customs declaration preparation, but does not state conditions, prerequisites, or when another sibling tool would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_export_traces_xmlA
Generates European Commission TRACES-NT XML (XSD v2.4 compliant) document with cryptographic digital signature for official EU customs filing under Regulation (EU) 2023/1115.
| Name | Required | Description | Default |
|---|---|---|---|
| plots | Yes | List of certified production plots with plot_id, country_code, area_hectares, and geometry. | |
| hs_code | Yes | Harmonized System 6-digit tariff code. | |
| commodity | No | Commodity description (e.g. Cocoa, Coffee, Timber). | |
| net_mass_kg | Yes | Consignment net weight in kilograms. | |
| operator_eori | Yes | Operator EORI number (e.g. 'NL123456789000'). | |
| operator_name | Yes | Name of EU importing operator. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It discloses the XML format, XSD version, digital signature, and regulatory context. However, it does not specify what the tool returns or saves, whether the signature is automatically applied, or whether certificate/key configuration is required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense sentence with no filler. It front-loads the core action ('Generates') and packs relevant compliance and signature details into one well-structured clause.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a complex tool that generates an officially signed XML document, yet there is no output schema and the description does not clarify the output channel (file path, raw XML string, download URL), signing prerequisites, or failure behavior. Given the regulatory and cryptographic complexity, the description should provide more operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all six parameters and their meanings. The tool-level description adds no additional per-parameter detail, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Generates') and a precise resource ('European Commission TRACES-NT XML ... document'). It adds distinguishing details like XSD v2.4 compliance, cryptographic digital signature, and EU customs filing, which separates it from sibling generation tools such as eudr_generate_dds and eudr_generate_customs_certificate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for official EU customs filing under Regulation (EU) 2023/1115' provides clear context for when this tool should be used. It does not explicitly name alternatives or exclusion conditions, so it stops short of a 5, but the intended use case is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_fund_agent_escrowB
Confirms on-chain blockchain funding transaction for a Smart Escrow agreement and transitions status to FUNDED_LOCKED.
| Name | Required | Description | Default |
|---|---|---|---|
| tx_hash | Yes | On-chain deposit transaction hash. | |
| escrow_id | Yes | Unique Escrow ID (e.g. 'ESC-EUDR-2026-XXXXXXXX'). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the state transition to FUNDED_LOCKED, which is useful, but omits critical behavioral details such as required permissions, idempotency, failure handling for invalid transactions, and irreversibility of the state change.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states the action and outcome without any wasted words. It is appropriately sized for the tool's scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a state-transition tool with no annotations and no output schema, the description is minimally adequate: it names the input action and resulting status. However, it lacks context about prerequisites, caller permissions, and failure modes, leaving gaps an agent would need to fill to invoke it safely.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (tx_hash and escrow_id) are already documented in the schema. The description adds no extra meaning, syntax, or format details beyond what the input schema provides, making a baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Confirms') and resource ('on-chain blockchain funding transaction for a Smart Escrow agreement') and names the resulting state ('FUNDED_LOCKED'). An agent can distinguish it from sibling tools like create_agent_escrow or release_agent_escrow, though it does not explicitly contrast itself with those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when a funding transaction has occurred, but it offers no explicit when-to-use guidance, prerequisites, or alternatives. It does not tell the agent when to choose this over create_agent_escrow, release_agent_escrow, or other escrow siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_generate_customs_certificateB
Generates official EU Single Window Environment for Customs (EU SWE-C) Green Lane Clearance Certificate HTML with verification QR code and official seals.
| Name | Required | Description | Default |
|---|---|---|---|
| hs_code | Yes | Customs tariff HS code. | |
| net_mass_kg | Yes | Declared net mass in kilograms. | |
| plots_count | No | Total number of verified plots. | |
| operator_eori | Yes | Operator EORI number. | |
| operator_name | Yes | Name of authorized operator. | |
| total_area_ha | No | Total surface area in hectares. | |
| commodity_desc | No | Commercial commodity description. | |
| origin_country | No | ISO 3166-1 alpha-2 origin country code. | XX |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, but it only reveals the output artifact (HTML with QR code and seals). It does not disclose whether generating the certificate mutates state, requires external official EU systems, has legal implications, or fails on invalid/unverified inputs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the artifact name and key output features. No filler or repetition beyond the word 'official,' which is not significantly wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description names the output format and key visual elements, which is useful given there is no output schema. However, for an 8-parameter tool with no annotations and a potentially consequential official document, it lacks prerequisites, side-effect disclosure, and any indication of what the agent should do after generation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already explains every parameter. The description adds no parameter-level meaning, but it doesn't need to; the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Generates') applied to a clearly named artifact: the EU SWE-C Green Lane Clearance Certificate HTML, including QR code and seals. This is enough to distinguish it from sibling generation tools like eudr_generate_dds or eudr_export_traces_xml.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives, nor about prerequisites such as verified plot data or an existing compliance check. The description only names what it does, leaving the agent to infer usage context from the sibling names and schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_generate_ddsB
Generates an EU TRACES-NT compliant Due Diligence Statement (DDS) XML package with official EUDR reference ID.
| Name | Required | Description | Default |
|---|---|---|---|
| plot_ids | Yes | List of certified plot IDs included in this due diligence batch. | |
| commodity | Yes | Regulated commodity. | |
| operator_vat | Yes | Operator EU VAT / EORI number. | |
| operator_name | Yes | Legal name of the EU importing operator. | |
| total_net_mass_kg | Yes | Total shipment net mass in kilograms. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It states the output is an XML package and mentions EUDR-compliance, and 'generates' implies a creation operation. However, it does not disclose side effects (e.g., whether it stores the document, submits it to TRACES-NT, or merely composes the file), rate limits, or what the package contains besides a reference ID. Acceptable but gappy.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one clean sentence with no filler, front-loading the artifact name and compliance target. It earns its place, though it could benefit from a second sentence on behavior or use context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a generation tool with 5 required params and no output schema or annotations, the description is thin. It tells the agent the artifact and compliance framework, but not what the XML package is used for, how it relates to the sibling export tool, or what the agent can expect in return. The required params are all self-describing, so this is a minimum-viable definition rather than a complete one.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each parameter has a clear description, so the schema already carries the param meaning. The tool description adds 'EU TRACES-NT compliant' and 'official EUDR reference ID' context, which hints at why the parameters matter, but it does not add per-parameter semantic meaning. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Generates'), identifies the specific artifact ('EU TRACES-NT compliant Due Diligence Statement (DDS) XML package'), and provides a distinguishing detail ('official EUDR reference ID'). It is clear about the resource being produced. However, it doesn't explicitly differentiate from the sibling tool eudr_export_traces_xml, which sounds similar in function, so it is not a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when an operator needs a TRACES-NT compliant DDS document with an EUDR reference ID. This gives a clear context but does not state when to prefer this over eudr_export_traces_xml or any other sibling, nor does it list exclusion conditions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_generate_export_bundleC
Generates a unified, lawyer-proof EUDR One-Click Export Bundle combining non-repudiation HMAC evidence seal, KFS readiness score, producer registry verification, and export dossier.
| Name | Required | Description | Default |
|---|---|---|---|
| payload | Yes | EUDRSupplyChainPayload dictionary including plots, commodity, and legal documents. | |
| producer_registry_id | No | Optional producer land registry code (e.g. BR CAR or Vietnam MARD). | |
| producer_country_code | No | Optional 2-letter ISO producer country code. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It hints at a 'non-repudiation HMAC evidence seal' but never states whether the operation persists data, whether it is read-only or mutating, what auth/permissions are needed, cost, latency, or whether the bundle is generated on demand. 'Lawyer-proof' is marketing, not behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single front-loaded sentence that leads with the verb and resource, so an agent can parse intent immediately. The terms 'lawyer-proof' and 'One-Click' are brand/marketing padding that add little precision, keeping it out of the top tier.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a complex composite tool taking a nested EUDRSupplyChainPayload with no output schema and no annotations. The description never says what the bundle actually is (a file, a URL, a JSON document), nor how the components are returned or whether failures in one component abort the bundle. For a tool of this complexity, that leaves a significant gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the payload, producer_registry_id, and producer_country_code. The description adds no additional parameter semantics (no format, constraints, or interaction notes), so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Generates) and resource (EUDR One-Click Export Bundle), and enumerates the four components it combines (HMAC evidence seal, KFS readiness score, producer registry verification, export dossier), which distinguishes it from single-purpose siblings like eudr_generate_dds or eudr_export_traces_xml. However, it never explicitly names those siblings or contrasts the bundle with them, so sibling differentiation is implied rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of the alternatives. Given that siblings eudr_score_kfs_checklist and eudr_verify_producer_registry cover parts of what this tool bundles, the description should have said when to reach for the composite instead of the individual calls, but it says nothing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_get_agent_budget_statusC
Queries live plot quota, spent USDC, and autonomous safety budget status for the calling agent.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Unique autonomous agent ID or public wallet address. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must carry full behavioral transparency. It states 'queries' implying read-only, but does not explicitly disclose side effects, authentication requirements, rate limits, or whether any state is modified. The lack of clarity on safety or side effects is a major gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no redundant words. It efficiently conveys the core functionality without unnecessary details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description explains what data is queried but does not specify the return format, response fields, or error scenarios. Since there is no output schema, this information is missing. It is adequate for a simple query but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameters with a clear description for agent_id. However, the tool description adds little to thisβit reiterates the agent context but does not clarify expected format, validation rules, or edge cases. The high schema coverage keeps this at baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('queries') and defines the resources involved (live plot, spent USDC, budget safety status). It is sufficiently distinct from sibling tools like eudr_check_deforestation or eudr_estimate_compliance_cost.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool over alternatives. It does not mention preferred scenarios, prerequisites, or exclusions, leaving the agent to infer usage solely from the purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_inspect_payload_securityC
Zero-trust inspection shield derived from security-gate-x402 (The Sheriff of Agent Finance): detects prompt injections, malicious AST code executions (eval/exec/subprocess), and NLI agronomic crop yield fabrications.
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | Inbound text or system instructions to scan for jailbreak / prompt injection attacks. | |
| hs_code | No | 6-digit Harmonized System tariff code. | |
| commodity | No | Target commodity name (e.g. 'coffee', 'cocoa', 'wood', 'oil_palm'). | |
| total_area_ha | No | Total cultivation area in hectares across production plots. | |
| declared_net_mass_kg | No | Declared total harvest/trade net mass in kilograms. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, and it only lists detection categories. It does not disclose what happens on a positive detection (block, flag, score), whether the call is read-only or mutating, what the return shape is, or any latency/rate-limit characteristics. The threat taxonomy is closer to purpose than to behavior, so this is a meaningful gap for a security gate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core content is front-loaded into a single sentence, which is efficient, but the branding clause ('The Sheriff of Agent Finance') and origin note ('derived from security-gate-x402') do not earn their place in a tool definition. Removing them would sharpen the routing signal without losing meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a hybrid: one param targets text injection scanning while four target agronomic/HS-code payloads, and the description only loosely gestures at this with 'NLI agronomic crop yield fabrications'. With no output schema and no explanation of the verdict returned or how the disparate params combine into a single scan, an agent cannot confidently predict behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters (text, hs_code, commodity, total_area_ha, declared_net_mass_kg) are already documented in the schema. The description adds no parameter-level detail beyond that baseline, so a 3 is the correct floor.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb+resource (payload security inspection) and enumerates the threat classes it detects: prompt injection, malicious AST execution (eval/exec/subprocess), and fabricated agronomic yield claims. This clearly differentiates it from the compliance/settlement siblings. It loses a point for the marketing framing ('The Sheriff of Agent Finance', 'derived from security-gate-x402') which clutters rather than clarifies purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance, no statement of when NOT to use it, and no naming of an alternative among the ~39 sibling tools. The 'zero-trust inspection shield' framing implies it should run before processing inbound text, but this is left to inference rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_issue_eip712_attestationB
Issues an official EIP-712 cryptographic attestation (jobId, deliverableHash, riskScore, verdict, expiresAt, v, r, s) as the EUDR Oracle for submission into AgentEscrow.sol on Base/Polygon/Arbitrum.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | On-chain jobId in AgentEscrow.sol smart contract. | |
| escrow_id | Yes | Unique Escrow ID in EUDR system. | |
| risk_score | No | Optional override risk score (0-100), default derived from compliance state. | |
| validity_days | No | Attestation validity duration in days (default: 7). | |
| deliverable_hash | No | Hex-encoded 32-byte hash of DDS report or deliverable. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, but it does disclose real behavioral substance: the exact signed payload (jobId, deliverableHash, riskScore, verdict, expiresAt, v, r, s), the oracle role, and the supported chains. It still omits whether issuance is off-chain signing only or triggers an on-chain write, required permissions/keys, and idempotency or replay behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence with no filler; the action comes first and the payload/chains detail follows. The dense parenthetical field list is informative but slightly reduces readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter, no-annotation, no-output-schema tool, the description covers what is produced but not the invocation context: no preconditions, no note on whether a signed artifact must be submitted elsewhere, and no hints about verdict/expiry semantics. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all five parameters with types, defaults, and ranges. The description's parenthetical field list loosely mirrors some of them (jobId, deliverableHash, riskScore) but adds no syntax, format, or constraint detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Issues') and resource (EIP-712 cryptographic attestation), and enumerates the signed payload fields plus the target contracts/chains, so the agent knows this produces a signature rather than verifying one. It implicitly contrasts with the sibling eudr_verify_eip712_attestation but never names it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no explicit alternatives or exclusions. The reader can infer this is the issuance counterpart to verification, but nothing in the text states the conditions that select this tool over eudr_verify_eip712_attestation or the escrow lifecycle siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_issue_statutory_exemptionB
Evaluates statutory exemption under the EUDR Delegated Act (effective Sept 2026) for excluded commodities such as bovine leather (HS 4101, 4104, 4107) and generates an official EU SWE-C Green Lane Customs Exemption Certificate.
| Name | Required | Description | Default |
|---|---|---|---|
| hs_code | Yes | Harmonized System 4-6 digit commodity code (e.g. '4101', '4104', '4107'). | |
| operator_name | Yes | Name of the importing EU operator or customs broker. | |
| consignment_id | Yes | Shipment B/L or consignment tracking identifier. | |
| product_description | Yes | Commercial description of the consignment goods (e.g. 'Tanned bovine leather', 'Leather car seats'). | |
| destination_member_state | No | EU destination member state 2-letter code (e.g. 'DE', 'FR', 'NL', 'IT'). | DE |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses the governing regulation and effective date and states that an official certificate is produced, but says nothing about permission requirements, whether the exemption evaluation can fail/deny, or side effects of issuing a certificate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the core action and regulation; every clause is informative. Slightly overloaded by combining evaluation and certificate generation into one unbroken sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a five-parameter, no-annotation, no-output-schema tool that issues an official certificate, the description omits what the returned certificate contains, whether evaluation precedes issuance, and failure conditions. The regulatory framing helps but does not fully close the gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters are already documented, including HS code examples that mirror the description text. The description adds no syntax, format, or default behavior beyond what the schema provides, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb pair (evaluates exemption, generates certificate) and a concrete resource (EUDR Delegated Act statutory exemption for excluded commodities, with HS examples). It is clearly distinct from generic siblings like eudr_generate_customs_certificate, though it never names an alternative to disambiguate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the scope ('excluded commodities such as bovine leather'), but there is no explicit statement of when to call this versus eudr_generate_customs_certificate or eudr_simulate_swe_c_customs_clearance, and no prerequisites or when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_link_downstream_chainC
Implements EUDR Article 4(8) downstream Due Diligence Statement (DDS) reference chaining. Inherits upstream supplier DDS reference, eliminates redundant assessment costs, and monitors cascading revocation/taint.
| Name | Required | Description | Default |
|---|---|---|---|
| operator_id | Yes | Internal identifier for downstream operator. | |
| operator_eori | Yes | Downstream operator EU EORI or VAT number. | |
| operator_name | Yes | Legal company name of the downstream operator or trader. | |
| product_hs_code | No | Optional Harmonized System code of the finished product. | |
| consignment_mass_kg | Yes | Net mass of the downstream batch in kilograms. | |
| product_description | No | Optional commercial description of the downstream finished goods. | |
| upstream_dds_reference | Yes | Official EU TRACES-NT DDS reference number of upstream importer (e.g. 'EU-DDS-2026-ABC123XYZ'). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full disclosure burden. It adds some behavioral colour ('eliminates redundant assessment costs', 'monitors cascading revocation/taint'), but says nothing about required permissions, whether it is a persistent write, idempotency, what happens when the upstream reference is invalid, or the failure/revocation semantics it claims to monitor.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly written sentences, front-loaded with the core purpose and followed by the value proposition. No filler or repetition, though the second sentence blends benefits with behavior in a way that slightly muddies structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a seven-parameter, compliance-critical mutation tool with no annotations and no output schema, the description covers the concept but omits the resulting state (what DDS reference or chain record is produced), side effects, and error behavior. Adequate but with clear gaps an agent would want filled.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all seven parameters, including the upstream_dds_reference format example. The description adds no parameter-level meaning beyond the schema, which is the expected baseline when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb+resource: 'Implements ... downstream Due Diligence Statement (DDS) reference chaining,' naming the regulatory basis (EUDR Article 4(8)) and the mechanism (inheriting the upstream DDS reference). It is clear what the tool does but does not distinguish itself from DDS-related siblings such as eudr_generate_dds or eudr_export_traces_xml.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance, no prerequisites, and no named alternatives among the many DDS/compliance siblings. An agent must infer from the phrase 'downstream' and 'inherits upstream supplier DDS reference' that this is for downstream operators chaining onto an existing upstream DDS, but that inference is left entirely to the reader.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_publish_compliance_rfqC
Buyer AI Agent broadcasts an EUDR-compliant commodity procurement Request For Quotation (RFQ) to the autonomous supplier agent network.
| Name | Required | Description | Default |
|---|---|---|---|
| notes | No | Specific procurement terms or delivery guidelines. | |
| hs_code | Yes | 6-digit Harmonized System tariff code. | |
| commodity | Yes | Target commodity type (e.g. coffee, cocoa, wood, oil_palm). | |
| volume_kg | Yes | Requested commodity volume in kilograms. | |
| buyer_agent_id | Yes | Unique identifier of the autonomous purchasing agent. | |
| destination_port | No | EU port of destination (e.g. 'Rotterdam', 'Hamburg'). | |
| buyer_agent_wallet | Yes | Buyer EVM/Solana wallet address for funding escrow. | |
| max_price_usdc_per_kg | Yes | Ceiling purchase price in USDC per kilogram. | |
| max_acceptable_risk_score | No | Maximum acceptable EUDR risk score (0-100, default 20). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, and it discloses little beyond directionality. It does not explain that buyer_agent_wallet funds escrow, whether the broadcast is permissionless or permissioned, how quotes are returned, or any rate limits β all material for a 9-parameter network-broadcast tool in an escrow-based flow.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that names actor, action, scope, and audience with no filler. Nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex, mutation-style tool (9 params, 6 required, no annotations, no output schema) the description omits the escrow/funding implications signaled by buyer_agent_wallet, the RFQ lifecycle, and expected response behavior. An agent could invoke it without understanding the financial consequences.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all nine parameters including the escrow-funding wallet and the 0-100 risk score default. The description adds no parameter-level meaning beyond what the schema provides, which is the baseline-3 case.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('broadcasts ... RFQ') and resource ('EUDR-compliant commodity procurement Request For Quotation') and identifies the actor (Buyer AI Agent) and audience (supplier agent network). It implicitly distinguishes itself from supplier-side siblings like eudr_submit_compliance_bid, but never names an alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance. The agent must infer that this is the buyer-side initiation step of the procurement flow from the phrase 'broadcasts ... to the autonomous supplier agent network' alone; no prerequisites, sequencing, or alternative tools are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_release_agent_escrowA
Conditionally releases locked Escrow funds to seller agent upon receipt of EU Single Window customs clearance code (EU-SWEC-CLEARED-*) or verifiable compliant DDS reference.
| Name | Required | Description | Default |
|---|---|---|---|
| plots | No | Optional plot coordinates for on-demand radar check. | |
| escrow_id | Yes | Unique Escrow ID to release. | |
| dds_reference_id | No | Compliant DDS reference ID. | |
| customs_declaration_code | No | EU SWE-C customs declaration clearance code. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must carry the full load. It discloses the release conditions, which is important pre-call context, but omits auth requirements, whether the action is irreversible, failure modes, or side effects. Partial transparency for a high-stakes financial operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with the action and conditions. No waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 4 parameters, high schema coverage, and no output schema, the description covers the core trigger but doesn't address post-release behavior, failure handling, or the role of the optional 'plots' parameter. Adequate but with gaps for a financial release tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description mentions the trigger sources (customs code pattern, DDS reference) which map to parameters, but adds no format, validation, or interaction details beyond what the schema already says.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action (conditionally releases locked Escrow funds), the actor (to seller agent), and the trigger condition (EU-SWEC-CLEARED-* or compliant DDS reference). Distinguishes it from siblings like eudr_create_agent_escrow and eudr_fund_agent_escrow by being the release step.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The condition for release is embedded in the description, implying when to use it. But there's no explicit comparison to alternatives like eudr_release_escrow_milestone or eudr_solana_settle_escrow, nor exclusions or prerequisites beyond the trigger.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_release_escrow_milestoneA
Releases a specific milestone (1: Pre-shipment Satellite, 2: DDS Registration, 3: Customs Green Lane) in a 3-stage conditional escrow, issuing EIP-712 attestation and executing First-Mile split transfers.
| Name | Required | Description | Default |
|---|---|---|---|
| plots | No | Required for Milestone 1: Production plot coordinates for satellite radar audit. | |
| escrow_id | Yes | Unique Escrow ID to release milestone for. | |
| milestone_index | Yes | 1: Pre-shipment Satellite, 2: DDS Registration, 3: Customs Green Lane. | |
| dds_reference_id | No | Required for Milestone 2: Compliant DDS Reference ID. | |
| customs_declaration_code | No | Required for Milestone 3: Customs Green Lane clearance code. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose real side effects: issuing an EIP-712 attestation and executing First-Mile split transfers. However, as a fund-releasing mutation it omits irreversibility, authorization requirements, and failure/rollback behavior, leaving meaningful gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with the core action front-loaded and the milestone enumeration kept to a compact parenthetical. No filler sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter mutation tool with no annotations and no output schema, the description explains what happens but not the guardrails: preconditions, whether released milestones can be reverted, or what the caller receives on success. Adequate but incomplete for the complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the per-milestone requirements (plots, dds_reference_id, customs_declaration_code) are already documented in the schema. The description only restates the milestone index mapping, adding no syntax or format detail beyond what structured fields provide. Baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (releases) and resource (a numbered milestone in a 3-stage conditional escrow), and enumerates the three milestone types. This distinguishes it from siblings like eudr_release_agent_escrow and eudr_create_milestone_escrow without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The enumerated stages imply an ordered 1β2β3 progression, but the description never states when to use this instead of eudr_release_agent_escrow or eudr_arbitrate_agent_escrow, nor any prerequisite such as the escrow being funded. Usage is only inferable, not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_render_satellite_mapC
Generates visual multi-spectral satellite imagery metadata and NDVI canopy density radar visualization for an EUDR plot.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Year of observation (2020 regulatory cut-off baseline vs 2026 present). | |
| layer | No | Visualization layer type. | ndvi_vegetation |
| plot_id | Yes | Target plot identifier. | |
| coordinates | Yes | WGS84 coordinates of the plot. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It only says the tool generates output; it does not disclose whether any data is written, whether external services are called, whether results are cached, or what the response looks like. For an unannotated tool, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler and front-loads the action. It is concise, though the combined phrase 'visual multi-spectral satellite imagery metadata and NDVI canopy density radar visualization' could be restructured for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema covers all parameter semantics and the description conveys the core purpose, so an agent can probably select and invoke the tool correctly. However, there is no output schema and the description leaves the return format vagueβwhether it returns an image, a URL, metadata, or some combination is not clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters including enums and defaults. The description adds only loose thematic context around satellite imagery and NDVI, without meaningful parameter-level detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('Generates') and resource ('satellite imagery metadata and NDVI canopy density radar visualization') tied to an EUDR plot. It is distinct from the sibling tools, which are clearly not render/visualization tools. However, the phrase 'visual multi-spectral satellite imagery metadata and NDVI canopy density radar visualization' is awkward and leaves the exact deliverable somewhat ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no indication of when to prefer this tool over alternatives such as eudr_check_deforestation or eudr_verify_plot. It does not state prerequisites, exclusions, or conditions under which a different EUDR tool should be used instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_score_kfs_checklistB
Evaluates an EUDR supply chain payload against the official Korea Forest Service (μ°λ¦Όμ² EUDR λμμ§μλ¨) 4-domain compliance checklist (100-point scale).
| Name | Required | Description | Default |
|---|---|---|---|
| payload | Yes | EUDRSupplyChainPayload dictionary with operator, commodity, plots, and legal documents. | |
| producer_registry_id | No | Optional producer land registry code for cross-validation. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Evaluates' implies a read/scoring operation, but the description does not state whether it persists data, requires authentication, is idempotent, or what side effects exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted text. The verb, resource, authority, domain count, and scoring scale are all included efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description should ideally say more about the return value than just the 100-point scale. It gives a useful hint that a score is returned, but does not describe output structure, domain-level breakdowns, or how the result should be interpreted.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already documented in the input schema. The description references the payload being evaluated but adds no syntax, format, or validation meaning beyond what the schema provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Evaluates), resource (EUDR supply chain payload), and scoring standard (official Korea Forest Service 4-domain compliance checklist, 100-point scale). This distinguishes it from sibling evaluation tools such as eudr_evaluate_compact, eudr_evaluate_customs_taric, and eudr_check_deforestation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use guidance, prerequisites, or alternatives are provided. An agent must infer that this is the KFS checklist scoring tool rather than one of the many sibling evaluation or verification tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_send_telegram_alertB
Dispatches instant real-time compliance alert, post-2020 deforestation warning, or TRACES-NT clearance notice to Telegram bot.
| Name | Required | Description | Default |
|---|---|---|---|
| message | No | Custom message text or alert detail. | |
| plot_id | No | Target plot ID if applicable. | |
| alert_type | Yes | Category of real-time alert. | |
| supplier_id | No | Supplier identifier. | |
| country_code | No | 2-letter origin country code. | XX |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It states the action (dispatch to Telegram) but omits side effects, error behavior, or any operational constraints. This is insufficient for a tool that performs an external notification.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence, front-loaded with the action, no filler. Efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite being a simple tool, the lack of usage guidance and behavioral detail makes it incomplete for an agent to correctly decide when to invoke it and what to expect. The output schema absence also means the description should clarify return values, which it doesn't.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description adds no parameter semantics beyond what's already documented. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Dispatches' and names three distinct alert categories (compliance alert, post-2020 deforestation warning, TRACES-NT clearance notice), clearly distinguishing it from sibling tools like eudr_check_deforestation or eudr_generate_dds, which have different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use guidance is provided. The description implies it's for sending alerts to Telegram, but doesn't contrast with alternatives or state prerequisites, so an agent must infer when to choose it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_simulate_swe_c_customs_clearanceB
Simulates pre-arrival automated port clearance via the EU Single Window Environment for Customs (EU SWE-C) against TRACES-NT, calculating Article 16 inspection quota and clearance channel.
| Name | Required | Description | Default |
|---|---|---|---|
| hs_code | Yes | Tariff classification code. | |
| eori_number | Yes | Declarant/Operator EORI number, e.g. NL123456789. | |
| net_mass_kg | Yes | Declared consignment net mass in kg. | |
| country_code | Yes | ISO 2-letter origin country code, e.g. VN, BR, ID. | |
| dds_reference_id | Yes | TRACES-NT Due Diligence Statement reference ID. | |
| destination_port | No | Entry port UN/LOCODE: NLRTM (Rotterdam), BEANR (Antwerp), DEHAM (Hamburg), ESVLC (Valencia). | NLRTM |
| verification_code | Yes | TRACES-NT digital verification code. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. The word 'Simulates' usefully signals a non-mutating, hypothetical operation, but nothing is said about authentication requirements, determinism, or what a failed/blocked clearance looks like. Useful but incomplete 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the action and mechanism, with zero filler. It is slightly overloaded with jargon, but every clause conveys information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter, 6-required tool with no output schema, the description should say more about what the simulation returns (quota thresholds, channel outcomes, error cases). It names the two computed results but leaves their form and failure modes unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with all seven parameters documented, so the baseline is 3. The description adds no format, range, or cross-parameter guidance (e.g. how hs_code and country_code interact with the quota calculation) beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb (Simulates) plus the resource (pre-arrival automated port clearance) and names the concrete systems involved (EU SWE-C, TRACES-NT). It also states the computed outputs (Article 16 inspection quota, clearance channel), which clearly separates it from siblings like eudr_generate_customs_certificate or eudr_evaluate_customs_taric.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no indication of when to choose this simulation over the related customs siblings (e.g. eudr_evaluate_customs_taric, eudr_export_traces_xml), nor any stated prerequisites such as requiring a valid DDS or EORI. Usage must be inferred from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_slice_parcelA
Auto-subdivides oversized (>4.0 ha) smallholder agricultural parcels into compliant WGS84 sub-polygons (<4.0 ha) with 6-decimal precision and closed rings, satisfying EUDR Article 9 smallholder rules.
| Name | Required | Description | Default |
|---|---|---|---|
| plot_id | Yes | Original plot or cooperative identifier. | |
| commodity | Yes | Target commodity (e.g. 'coffee', 'cocoa', 'oil_palm', 'rubber'). | |
| coordinates | Yes | List of [longitude, latitude] coordinate pairs forming the polygon perimeter. | |
| country_code | Yes | ISO 3166-1 alpha-2 country code (e.g. 'ID', 'CI', 'BR', 'GH'). | |
| area_hectares | No | Known or estimated area in hectares. | |
| target_max_ha | No | Target maximum sub-parcel size in hectares (default: 3.9 ha). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It discloses useful output traits (WGS84, 6-decimal precision, closed rings) but says nothing about whether the original plot is mutated or preserved, idempotency, failure modes, or permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the action, the input condition, and the output guarantee. Every clause earns its place, though the stacked technical qualifiers make it slightly hard to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no annotations, so the description must carry the load; it covers the output geometry format but omits what happens to the source plot, behavior when the parcel is already under 4.0 ha, and any idempotency or persistence semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the six parameters are already documented. The description adds the compliance rationale behind the size thresholds, but does not explain how area_hectares interacts with the >4.0 ha trigger or how coordinates are interpreted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb (auto-subdivides) plus resource (oversized smallholder agricultural parcels) with explicit thresholds (>4.0 ha in, <4.0 ha out). It is clearly distinguishable from sibling tools like eudr_verify_plot or eudr_render_satellite_map.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The condition that triggers use is explicit: parcels exceeding 4.0 ha need slicing to satisfy EUDR Article 9 smallholder rules. However, no alternative tool is named and no when-not guidance is given (e.g. what to do for already-compliant parcels).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_solana_generate_pay_linkB
Constructs standard Solana Pay URI and QR payload for M2M machine agent micro-settlement.
| Name | Required | Description | Default |
|---|---|---|---|
| memo | No | Optional transaction memo or purpose. | |
| amount_usdc | Yes | Requested payment amount in USDC. | |
| recipient_pubkey | Yes | Recipient Solana Base58 public key. | |
| reference_job_id | Yes | Reference job or parcel identifier. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. 'Constructs standard Solana Pay URI and QR payload' implies a side-effect-free generation operation, which is useful, but it does not disclose whether it contacts the network, requires authentication, validates inputs, or what the output format or lifetime is.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler. Every word contributes to stating the action, output, and context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple four-parameter generation tool with no annotations and no output schema, the description conveys the basic purpose but omits return value details, usage conditions, and sibling differentiation. It is minimally adequate but leaves clear gaps for correct tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters are documented in the schema. The description adds no parameter-specific details, but with full schema coverage the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Constructs') and resource ('Solana Pay URI and QR payload'), and scopes it to M2M machine agent micro-settlement. It is clear but does not explicitly contrast with sibling payment tools such as eudr_agent_micro_pay or eudr_agent_eip3009_pay, which an agent might consider for payment actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for M2M machine agent micro-settlement' gives a broad context but no explicit when-to-use, when-not-to-use, or alternative tool guidance. Sibling tools include several payment and escrow functions, and the description does not help an agent choose between them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_solana_settle_escrowA
Executes sub-second Direct Split escrow payout to smallholders and cooperatives on Solana Mainnet (SPL-USDC) conditioned on Ed25519 EUDR physical truth attestation.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | Unique compliance evaluation or order job ID. | |
| commodity | No | Commodity being settled (e.g. coffee, cocoa, rubber). | |
| recipients | Yes | List of recipient objects with 'recipient' (Solana Base58 pubkey), 'amount' (USDC), and optional 'role'. | |
| buyer_wallet | Yes | Buyer Solana Base58 public key funding the escrow. | |
| country_code | No | ISO alpha-2 country code of harvest origin. | |
| dds_reference_id | No | Due diligence statement reference identifier. | |
| polygon_coordinates | No | WGS84 plot coordinates list. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It usefully discloses that this is a sub-second Solana payout in SPL-USDC conditioned on an Ed25519 EUDR attestation, but it omits critical financial-operation details such as required authorization, irreversibility, fee behavior, failure modes, and confirmation semantics. The condition is helpful context, but the safety and execution profile remains underspecified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense sentence with no filler and the key operational facts are front-loaded. Every clause earns its place by specifying the action, payout model, chain, asset, speed, and condition. It is appropriately sized for such a capability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a complex financial settlement tool with seven parameters, no annotations, and no output schema. While the schema covers parameter descriptions, the description does not explain return behavior, confirmation, authorization needs, or failure outcomes, which an agent would need before invoking a real-value escrow payout. For a mutation/settlement operation, the definition is not complete enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all seven parameters, including job_id, buyer_wallet, and recipients. The description adds conceptual context about recipients being smallholders and cooperatives and about SPL-USDC settlement, but it does not add syntax, constraints, or format details beyond what the schema provides. Baseline 3 is appropriate when the schema does the parameter-level work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb, resource, chain, asset, payout model, and condition: executes a Direct Split escrow payout on Solana Mainnet in SPL-USDC conditioned on an Ed25519 attestation. This distinguishes it from generic escrow siblings and from Solana pay-link or agent micropayment tools. An agent can identify its core purpose without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when the tool applies: Solana Mainnet SPL-USDC settlement conditioned on physical truth attestation. However, it does not explicitly compare against nearby escrow siblings such as eudr_release_escrow_milestone, eudr_create_milestone_escrow, or eudr_agent_micro_pay, nor does it state when not to use it. Usage is therefore inferable but not well-routed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_submit_agent_feedbackB
Allows an autonomous AI agent to submit an evolution proposal, feature request, edge-case report, or dataset addition to continuously evolve the EUDR.agent engine.
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Concise summary of the improvement proposal or requested capability. | |
| content | Yes | Detailed explanation, expected parameters, or architectural reasoning. | |
| agent_id | Yes | Calling agent identifier or handle (e.g. 'procure-bot-44', 'claude-supply-auditor'). | |
| caller_model | No | Model architecture (e.g. 'claude-3-5-sonnet', 'gpt-4o', 'gemini-1.5-pro'). | autonomous-agent |
| feedback_type | No | Category of the evolution proposal. | FEATURE_REQUEST |
| contact_channel | No | Optional agent webhook URL or contact handle for status updates. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool 'submits' feedback, implying a write/mutation, but it does not reveal whether the submission is persisted, whether there is any confirmation or asynchronous processing, or whether it triggers notifications to humans. For a mutation tool with zero annotation coverage, this is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states the core purpose without any fluff. It lists the key content categories and the overarching goal ('continuously evolve the EUDR.agent engine'), which is concise and efficiently communicates the tool's role. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (a feedback submission with 100% schema coverage and no output schema), the description is mostly sufficient. However, it omits any mention of expected response behavior (e.g., whether a success ID or status is returned) or any prerequisites (e.g., authentication). Since there are no annotations to fill this gap, the description could be slightly more complete to fully guide an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage of all six parameters, each with a clear description (e.g., agent_id, title, content, feedback_type with enum). The tool description adds no additional meaning beyond listing the types of proposals. Since the schema already documents the parameters thoroughly, the baseline 3 is appropriate; the description doesn't need to add more but also doesn't enrich the semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Allows an autonomous AI agent to submit an evolution proposal, feature request, edge-case report, or dataset addition'. It names the specific verb (submit) and resource (evolution proposals etc.), which is clear and distinguishes it from the operational siblings like eudr_verify_plot or eudr_check_deforestation. It doesn't explicitly name a sibling, so not a 5, but the intent is unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this toolβwhenever an agent wants to propose an improvement or report an issueβbut it doesn't explicitly state when not to use it or point to alternatives. Sibling tools are all operational (verification, payments, alerts), so the context is clear, but there's no explicit exclusion or alternative routing. This is adequate but not exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_submit_compliance_bidA
Supplier AI Agent submits a competitive, geolocated compliance bid for an active marketplace RFQ, including farm plots and offered USDC price.
| Name | Required | Description | Default |
|---|---|---|---|
| rfq_id | Yes | Target RFQ identifier to bid on. | |
| declared_plots | Yes | List of geolocated production plot parcels with WGS84 coordinates. | |
| seller_agent_id | Yes | Unique supplier agent identifier. | |
| price_usdc_per_kg | Yes | Offered unit price in USDC per kilogram. | |
| seller_agent_wallet | Yes | Supplier EVM wallet address to receive escrow settlement. | |
| estimated_risk_score | No | Supplier self-attested EUDR risk score (default 5). | |
| compliance_diligence_reference | No | Existing Due Diligence Statement or certification reference. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It says the tool submits a bid but omits permissions, binding nature, escrow/funds handling, reversibility, and post-submission effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. Each clause (supplier agent, bid, active RFQ, farm plots, USDC price) contributes specific meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description leaves out behavioral and return details an agent would need to invoke it safely. Parameter information is covered by the schema, but contextual completeness remains weak.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 7 parameters are already documented in the schema. The description references farm plots and USDC price but adds no syntax, constraints, or format details beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('submits') and resource ('compliance bid for an active marketplace RFQ'), with scope ('including farm plots and offered USDC price'). It distinguishes this supplier-side bid submission from sibling eudr_publish_compliance_rfq, which is the buyer-side RFQ publication.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear context: a supplier AI agent submitting a bid for an active marketplace RFQ. It does not name exclusions or alternative tools, so it falls short of a 5 under the rubric.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_underwrite_trade_creditC
Underwrites an autonomous trade loan for EUDR-cleared commodities, combining satellite forest analysis, legal land registry validation, and security-gate-x402 zero-trust credit scoring.
| Name | Required | Description | Default |
|---|---|---|---|
| payload | Yes | EUDRSupplyChainPayload dictionary specifying commodity, volume, and production plots. | |
| applicant_agent_id | No | Optional applicant agent or operator ID requesting trade credit. | |
| staked_escrow_usdc | No | Optional USDC amount staked on AgentEscrow.sol as credit collateral enhancement. | |
| producer_registry_id | No | Optional producer registry ID (e.g. CAR, SIPUHH, or MARD code). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and underwriting a loan is a high-consequence side-effectful action. It never says whether credit is committed/disbursed, whether the operation is reversible, whether staked_escrow collateral is required, what permissions or agent identity are needed, or how failures are handled.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense but front-loaded sentence that puts the action and subject first and enumerates the sub-analyses. It earns its length, though the compound trailing clause about 'security-gate-x402' is jargon-heavy for an agent with no further context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a composite, side-effectful underwriting tool with a nested required payload, no output schema, and no annotations, the description is too thin: it omits the decision/result an agent should expect, the role of optional collateral and registry IDs, and any failure or prerequisite conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters including the nested payload, applicant_agent_id, staked_escrow_usdc, and producer_registry_id. The description adds no parameter-level meaning (e.g. valid registry codes or collateral thresholds) beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Underwrites') and resource ('autonomous trade loan for EUDR-cleared commodities') and lists the analysis components, which distinguishes it from point tools like eudr_check_deforestation or eudr_verify_producer_registry. It does not name a sibling it must be chosen over, but the composite underwriting framing is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no stated relationship to the many escrow/registry/verification siblings it depends on. An agent cannot tell from the text whether this should be called before or after eudr_verify_producer_registry and eudr_create_agent_escrow, or what conditions make it inapplicable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_verify_audit_integrityB
Verifies SHA-256 cryptographic chain of custody and tamper-evidence for an EUDR compliance audit bundle.
| Name | Required | Description | Default |
|---|---|---|---|
| audit_payload | Yes | Audit record dictionary containing reference_id, plots, timestamp, and signature. | |
| expected_hash | Yes | Cryptographic SHA-256 hash to verify against. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the disclosure burden. It does convey that the tool performs a cryptographic tamper-evidence check, which implies read-only verification and a pass/fail outcome. However, it does not specify return format, failure behavior, or whether a mismatch raises an error, leaving the behavioral profile incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. It states the verb, algorithm, object, and purpose efficiently, making every word count.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with fully covered schema, the core is present, but the absence of usage guidance and an output schema leaves the agent uncertain about expected results and when to select this tool. The description is adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the input schema already documents both parameters. The description adds only general cryptographic context rather than new meaning about parameter formats, constraints, or relationships. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Verifies' and names the exact resource: SHA-256 chain-of-custody/tamper-evidence for an EUDR audit bundle. It is clear and distinct from plot-level or payment siblings, though it does not explicitly call out sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives such as eudr_verify_plot or eudr_check_deforestation. Usage context is only implied by the verification verb; there are no when-to-use, when-not-to-use, or exclusion statements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_verify_eip712_attestationA
Cryptographically verifies an EIP-712 EscrowAttestation proof against the EUDR Oracle public key, checking signature validity, expiration, and recommended on-chain action (COMPLETE_JOB or SLASH_JOB).
| Name | Required | Description | Default |
|---|---|---|---|
| attestation | Yes | EIP-712 EscrowAttestation dictionary with v, r, s signatures. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It does disclose the validation facets and the resulting recommended action (COMPLETE_JOB or SLASH_JOB), which is meaningful behavioral context, but it never states that the call is side-effect-free, what happens on a failed signature, or whether any auth/key material is required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single well-formed sentence that leads with the verb and resource and front-loads the checks performed. Dense but no wasted clauses; only slightly overstuffed with parenthetical outcome values.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description partly compensates by naming what is validated and the two possible recommended actions, giving the agent return-value context. It is nearly complete for a one-parameter verification tool, though side-effect and failure-mode behavior remain unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter and schema description coverage is 100%, so the schema already documents the attestation object (v, r, s signatures). The description adds no format or structural detail beyond what the schema provides, matching the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (cryptographically verifies) plus the exact resource (EIP-712 EscrowAttestation proof) and the checks performed (signature validity, expiration). This clearly distinguishes it from the sibling eudr_issue_eip712_attestation, which creates rather than validates attestations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this is called to validate an attestation before acting on COMPLETE_JOB/SLASH_JOB, but the description never states a trigger condition, prerequisites, or when to prefer it over related verification siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_verify_plotA
Validates GIS coordinates and polygon boundaries against EUDR (EU 2023/1115) Art. 9 standards. Auto-heals inverted coordinates and self-intersecting polygons. DO NOT use as an official regulatory legal filing without independent manual verification. Computed as an algorithmic heuristic data reference.
| Name | Required | Description | Default |
|---|---|---|---|
| plot_id | Yes | Unique identifier for the production plot or farm. | |
| commodity | Yes | EUDR regulated commodity produced on this plot. | |
| coordinates | Yes | Coordinates in WGS84 format. Either [longitude, latitude] for point, or [[lng, lat], [lng, lat], ...] for polygon boundary. | |
| country_code | Yes | ISO 3166-1 alpha-2 country code of plot origin (e.g. 'ID', 'BR', 'CI', 'GH', 'VN'). | |
| area_hectares | No | Plot surface area in hectares. Plots >= 4.0 hectares strictly require polygon boundaries. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It discloses that it auto-heals inverted coordinates and self-intersecting polygons, and it explicitly labels the result as an algorithmic heuristic data reference rather than authoritative. However, it does not state whether the tool has side effects (e.g., whether it modifies input data), whether it is read-only, or what the exact return format is. These gaps prevent a higher score.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no redundancy. It front-loads the core purpose, then adds the auto-heal behavior, a legal disclaimer, and a heuristic caveat. Every clause earns its place, making it highly efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has five parameters (four required) and no output schema. The description explains the core validation purpose and provides a legal warning, but it does not mention the return value or output format, which the agent would need to interpret the result. It also does not emphasize the area_hectares rule (>=4.0 requires polygon boundaries) that is in the schema, but since the schema covers that, it is less critical. Overall, it is adequate but missing return-value details, so a 3 is warranted.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% description coverage for all five parameters, so the description does not need to explain them. The description adds only minimal extra meaning, such as tying coordinates to GIS and polygon boundaries, and mentions auto-healing which relates to the coordinates parameter. This does not go beyond the schema's own descriptions, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Validates'), a clear resource ('GIS coordinates and polygon boundaries'), and a named standard (EUDR Art. 9). It also mentions auto-healing behavior. It does not explicitly differentiate from sibling verification tools, but the purpose is distinct enough from other tools like deforestation checks or VAT verification, so it earns a 4 rather than a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: it validates coordinates and boundaries against EUDR standards. It provides a caution against using it for official legal filing without manual verification, which is a usage constraint. However, it does not name alternative tools or explicitly state when not to use it beyond the legal-filing caveat. Sibling differentiation is missing, so it earns a 3.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_verify_producer_registryB
Verifies legal land title and forest registry codes in major producer countries (Brazil CAR, Indonesia SIPUHH/ISPO, Vietnam MARD/VNTLAS, Ghana Cocoa CMS, Malaysia MSPO).
| Name | Required | Description | Default |
|---|---|---|---|
| identifier | Yes | Official registry identifier or cadastral parcel code (e.g. 'BR-MT-5107909-...', 'VN-COFFEE-LDG-...', 'SIPUHH-ID-...'). | |
| country_code | No | Optional 2-letter ISO country code (BR, ID, VN, GH, CI, MY). If omitted, automatically detected from format. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, yet it does not disclose whether the check is read-only, whether it is paid or rate-limited, what a 'verified' result contains (boolean vs. detailed findings), or what happens on failure. Listing the supported registries is genuine scope context, but the operational behavior is largely undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with high information density; the parenthetical registry list is the core payload, not padding, and nothing is redundant with the name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter verification tool with no output schema and no annotations, the description covers the scope of coverage but omits the shape of the result and failure modes an agent would need to act on the response. Adequate as a minimum-viable definition, with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the identifier format examples and the optional country_code with its ISO values are already fully documented. The description's country/registry list adds a little corroborating context for country_code but no syntax or semantics beyond the schema β the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Verifies') and a specific resource ('legal land title and forest registry codes'), and the enumeration of national registries (Brazil CAR, Indonesia SIPUHH/ISPO, etc.) makes its scope concrete and distinguishable from generic verify siblings. It stops short of explaining what a verification result means, but the actor can tell it apart from eudr_verify_plot or eudr_verify_vies_vat.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives such as eudr_verify_plot or eudr_check_deforestation, which operate in adjacent territory. The description only says what is checked, leaving routing entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eudr_verify_vies_vatB
Validates European Union B2B cross-border VAT numbers in real-time via the official EU Commission VIES engine.
| Name | Required | Description | Default |
|---|---|---|---|
| vat_number | Yes | National VAT registration number without the country prefix. | |
| country_code | Yes | EU Member State 2-letter code (e.g. 'FR', 'DE', 'IT', 'NL', 'BE', 'ES'). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full burden of behavioral disclosure. It states that validation is real-time and via the VIES engine, but does not disclose what happens on invalid VAT numbers (e.g., returns a boolean, throws an error), whether the operation is read-only, or any network/rate-limit dependencies. This is a significant gap for a validation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the core action and resource. There is no redundant wording or unnecessary detail, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, and the description does not explain the return value or behavior on invalid input. For a simple validation tool, an agent would need to know whether the result is a boolean, a detailed report, or an error. The lack of this information leaves a critical gap, especially since no annotations provide safety or side-effect context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes both parameters (vat_number and country_code) with clear explanations and examples. The description does not add any parameter-level information beyond what the schema provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Validates' and a specific resource 'European Union B2B cross-border VAT numbers' via the official EU Commission VIES engine. It clearly distinguishes this tool from siblings like eudr_verify_plot, which verify different entities, and no other sibling handles VAT. The purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for validating VAT numbers but does not explicitly state when to use it versus alternatives, nor does it mention any exclusions or contexts where it should not be used. Since no sibling tool directly competes, there is no need for alternative routing, but the description lacks guidance on prerequisites or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
26 tool updates
v0.1.2- Added
eudr_agent_eip3009_pay - Added
eudr_arbitrate_agent_escrow - Added
eudr_auto_slash_disputed_escrow - Added
eudr_benchmark_country - Added
eudr_create_agent_escrow - Added
eudr_create_milestone_escrow - Added
eudr_evaluate_compact - Added
eudr_evaluate_customs_taric - Added
eudr_fund_agent_escrow - Added
eudr_generate_export_bundle - Added
eudr_inspect_payload_security - Added
eudr_issue_eip712_attestation - Added
eudr_issue_statutory_exemption - Added
eudr_link_downstream_chain - Added
eudr_publish_compliance_rfq - Added
eudr_release_agent_escrow - Added
eudr_release_escrow_milestone - Added
eudr_score_kfs_checklist - Added
eudr_simulate_swe_c_customs_clearance - Added
eudr_slice_parcel - Added
eudr_solana_generate_pay_link - Added
eudr_solana_settle_escrow - Added
eudr_submit_compliance_bid - Added
eudr_underwrite_trade_credit - Added
eudr_verify_eip712_attestation - Added
eudr_verify_producer_registry
3 tool updates
v0.1.1- Added
eudr_agent_micro_pay - Added
eudr_get_agent_budget_status - Added
eudr_submit_agent_feedback
12 tool updates
v0.1.0- First observed
eudr_check_deforestation - First observed
eudr_confirm_payment - First observed
eudr_create_payment_order - First observed
eudr_estimate_compliance_cost - First observed
eudr_export_traces_xml - First observed
eudr_generate_customs_certificate - First observed
eudr_generate_dds - First observed
eudr_render_satellite_map - First observed
eudr_send_telegram_alert - First observed
eudr_verify_audit_integrity - First observed
eudr_verify_plot - First observed
eudr_verify_vies_vat
TDQS
Scored across 41 tools
Many tools target distinct EUDR objects, but there are overlapping clusters in escrow/payment settlement, dispute resolution, and compliance evaluation. Detailed descriptions help, yet an agent could still confuse tools like eudr_agent_micro_pay, eudr_agent_eip3009_pay, and eudr_solana_settle_escrow, or eudr_arbitrate_agent_escrow and eudr_auto_slash_disputed_escrow.
All tool names use the eudr_ prefix and snake_case, with a mostly predictable verb_noun pattern. A few names reverse order or embed modifiers (e.g. eudr_agent_micro_pay, eudr_agent_eip3009_pay), but the convention remains readable and consistent overall.
The server exposes 41 tools, which is excessive for a single MCP server and well above the 3-15 well-scoped range. While the EUDR compliance domain is broad, this many tools increases selection complexity and maintenance burden.
Coverage is strong across compliance evaluation, DDS/TRACES generation, customs clearance, satellite checks, registry/VAT verification, and escrow/payment lifecycles. Minor gaps exist around querying or listing existing RFQs, bids, escrows, and DDS statuses, but core workflows are well represented.
Maintenance
Related MCP Connectors
Screen farm plots for EUDR deforestation risk with the official EU JRC maps.
- FormistOAuthai.formist
AI agent that fills CBAM, GHG, CSRD/ESRS, EU Taxonomy, CDP and other sustainability forms.
EU compliance checks for AI agents: sanctions, company, VAT ID, IBAN, email. Pay per call.
AI-powered organic supply chain verification: certification, OFAC, FDA import checks.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEU Crop Intelligence MCP Server β Yield forecasts, weather analysis, and phenology models for 15 countries. AI agent-native, multi-source intelligence (NASA POWER, Eurostat, Open-Meteo).MIT
- AlicenseNot gradedqualityFmaintenanceProvides tamper-proof audit logging for AI agents using SHA-256 hash chains, integrity verification, and compliance reporting for the EU AI Act.1MIT
- AlicenseBqualityBmaintenanceAutonomous M2M compliance and trust APIs for AI agents (KYB, OFAC, VAT, Sanctions checking).5MIT
- AlicenseNot gradedqualityDmaintenanceEnables EU AI Act compliance for AI agent systems by providing risk classification, audit trails, gap analysis, and evidence package generation.40 npmMIT