Skip to main content
Glama
nohosa001-pixel

EUDR Compliance & TRACES-NT Agent

🌲 EUDRAgent.com | Autonomous EUDR Compliance & Multi-Chain Escrow Platform

EUDRAgent CI/CD Pipeline Python FastAPI PostGIS Regulation Tests Multi-Chain Solana Glama MCP PyPI Cloud Run License: MIT

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)

EUDR Compliance Agent Video Demonstration

πŸ’‘ 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 security-gate-x402

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

C081

Standard / Simplified EUDR DDS

Due Diligence Statement reference number + verification code registered via TRACES-NT. Mandatory for release for free circulation.

C082

Downstream Operator Pass-Through

Reference to an existing valid upstream DDS (Article 4(8)). Eliminates redundant coordinate submissions.

Y120

Goods Outside EUDR Scope

Declaration that the consignment does not fall within Regulation (EU) 2023/1115 Annex I scope (Article 1(2)).

Y121

100% Recycled Waste Exemption

Goods produced entirely from post-consumer waste materials (Annex I Footnote 1).

Y122

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 AVAILABLE status, both a unique DDS Reference Number and anti-tamper Verification Number are 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 Head master statement with 1:1 raw material lot mapping.

  • V3 Enterprise API Readiness: Full compatibility with the unified SOAP/HTTPS EUDRDueDiligenceStatementServiceV3 and 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.rs with initialize_escrow, settle_direct_split, and slash_non_compliant.

  • Oracle Attestation: Ed25519 cryptographic truth proof (EUDR_FOREST_SOLANA domain).

  • 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.sol with 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

/dashboard

4ha polygon self-healing, multi-satellite analysis, & TRACES-NT DDS generation

🌾 Supplier Pre-Clearance Portal

/supplier-portal

Mobile-friendly self-assessment for overseas smallholders & cooperatives

πŸ“– Interactive API Documentation

/docs

OpenAPI 3.1 / Swagger UI for ERP, SAP, and customs system integration

πŸ›‘οΈ Security Gate Diagnostics

/api/v1/eudr/mesh/security-gate/diagnostics

Live 4-tier probe of connected security-gate-x402 (Seoul Cloud Run)

⛓️ Multi-Chain RPC Status

/api/v1/payment/chains/status

Real-time RPC block heights & USDC contracts for Polygon, Base, Arbitrum

β˜€οΈ Solana Escrow Cluster

/api/v1/escrow/solana/cluster-status

Live slot height, 400ms block time, and SPL-USDC mint status on Solana

🀝 A2A Marketplace RFQ

/api/v1/marketplace/rfq/create

Autonomous commodity procurement and reverse-auction clearing

πŸ€– Model Context Protocol (MCP)

/api/v1/mcp

JSON-RPC 2.0 MCP endpoint for Claude Desktop, Cursor, Antigravity

πŸ“„ LLM Discovery Directory

/llms.txt

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

eudr_verify_plot

WGS84 geodesic coordinates, polygon closure, and strict 4.0ha rule check

Deforestation Radar

eudr_check_deforestation

Sentinel-1/2 & GFC canopy loss analysis against 2020-12-31 cutoff baseline

Satellite Radar Map

eudr_render_satellite_map

Generates Sentinel-2 NDVI canopy density SVG radar visualization

EU Customs Clearance

eudr_verify_vies_vat

Real-time EU Commission VIES VAT cross-border reverse charge check

DDS Compilation

eudr_generate_dds

Compiles official TRACES-NT XML & JSON-LD Due Diligence Statement

Audit Integrity

eudr_verify_audit_integrity

SHA-256 tamper-evident cryptographic chain audit verification

Solana Direct Split

eudr_solana_settle_escrow

Settles SPL-USDC escrow with instant direct payout to farmers

Solana Pay Link

eudr_solana_generate_pay_link

Generates standard Solana Pay URI and QR code payload

Web3 Oracle Attest

eudr_issue_eip712_attestation

Issues EIP-712 Attestation as EUDR Oracle for EVM AgentEscrow.sol

Web3 Oracle Verify

eudr_verify_eip712_attestation

Verifies EIP-712 proof for on-chain completeJob or slashJob

x402 Security Shield

eudr_inspect_payload_security

Prompt injection barrier, AST sandbox, & agronomic yield fact-check

A2A RFQ Broadcast

eudr_publish_compliance_rfq

Autonomous Buyer Agent broadcasts procurement RFQ to supplier network

A2A Bid Submission

eudr_submit_compliance_bid

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.txt

2. Run Local Development Server

uvicorn app.main:app --reload --port 8000

Open 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 .prj files from compressed archives.

  • Autonomous WGS84 Reprojection: Auto-detects local UTM / Projected Coordinate Systems (EPSG) via pyproj and 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_DEGRADED to 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.ps1

Automatically 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)


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 &copy; 2026 EUDRAgent.com. All rights reserved.

Available Tools

41 tools
eudr_agent_eip3009_payB

Executes gasless, 1-turn autonomous USDC settlement via EIP-3009 (transferWithAuthorization). Zero native gas required by the calling agent.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoBlockchain network for USDC transferWithAuthorization.Base (Low Gas $0.01)
nonceYesUnique 32-byte hex nonce for replay attack protection.
agent_idNoUnique calling agent identifier.
signatureYesCompact 65-byte EIP-712 signature (0x + 130 hex characters).
to_addressNoOptional recipient address (defaults to AgentPaymentVault).
value_usdcYesAuthorized USDC amount in decimal (e.g. 1.50 for 15 plots).
from_addressYesAgent EVM sender wallet address (0x...).
valid_beforeYesUnix timestamp expiration deadline for authorization.

TDQS

B3.3/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoBlockchain network for USDC micro-payment.Base (Low Gas $0.01)
tx_hashYesOn-chain transaction hash proving USDC transfer to deposit wallet.
agent_idYesUnique autonomous agent identifier or wallet address.
num_plotsYesNumber of plots to verify ($0.10 USDC / plot).
sender_walletYesAgent smart wallet or EOA address.

TDQS

A3.6/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description 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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
plotsNoProduction plots for satellite radar arbitration.
reasonYesDispute claim / cause.
escrow_idYesUnique Escrow ID under dispute.
initiator_agent_idYesAgent initiating dispute.

TDQS

A3.5/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoCause for slashing (e.g. 'Post-2020 deforestation confirmed by Sentinel radar').
escrow_idYesUnique Escrow ID in DISPUTED status to automatically slash.
slashing_penalty_pctNoPercentage of locked escrow to refund to buyer.

TDQS

A3.6/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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%).

ParametersJSON Schema
NameRequiredDescriptionDefault
country_codeYesISO 3166-1 alpha-2 country code of production origin (e.g. 'DE', 'ID', 'BR', 'MM', 'KP').
suspected_mixingNoWhether bulk mixing with unknown or high-risk origin plots is suspected.
suspected_circumventionNoWhether transshipment laundering or regulatory circumvention is suspected.
corruption_index_overrideNoOptional CPI score override (0-100).

TDQS

A3.6/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
plot_idYesIdentifier of the plot being audited.
coordinatesYesWGS84 coordinates of the plot or centroid.
cutoff_dateNoRegulatory baseline cut-off date (EUDR mandatory: 2020-12-31).2020-12-31
country_codeYesISO 3166-1 alpha-2 country code.

TDQS

A3.5/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tx_hashYesOn-chain transaction hash confirming the USDC transfer.
order_idYesPayment order ID (e.g. 'ORD-XXXXXXXXXX').

TDQS

B3.4/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoBlockchain network for settlement.Base (Low Gas $0.01)
hs_codeYesRegulated commodity HS code (e.g. '18010000', '44071100').
amount_usdcYesEscrow lock amount in USDC.
buyer_walletYesBuyer EVM / Solana wallet address for refunds.
expiry_hoursNoAuto-refund window in hours.
seller_walletYesSeller EVM / Solana wallet address for payout.
buyer_agent_idYesCalling buyer agent ID / system name.
seller_agent_idYesTarget seller agent ID / supplier identifier.
declared_net_mass_kgNoDeclared shipment net weight in kg.
commodity_descriptionYesDescription of the trade shipment batch.

TDQS

B3.2/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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%).

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoBlockchain network for settlement.Base (Low Gas $0.01)
hs_codeYesRegulated commodity HS code (e.g. '18010000', '44071100').
amount_usdcYesEscrow lock amount in USDC.
buyer_walletYesBuyer EVM / Solana wallet address for refunds.
seller_walletYesSeller EVM / Solana wallet address for payout.
buyer_agent_idYesCalling buyer agent ID / system name.
seller_agent_idYesTarget seller agent ID / supplier identifier.
split_recipientsNoFirst-mile multi-party split distribution (e.g. Smallholder Co-op 75%, Mill 25%).
milestone_weightsNoWeight percentages for milestones 1, 2, 3 (default: [30, 40, 30]).
declared_net_mass_kgNoDeclared shipment net weight in kg.
commodity_descriptionYesDescription of the trade shipment batch.

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoBlockchain network for USDC payment.Base (Low Gas $0.01)
plan_tierYesSubscription tier to purchase.
vat_numberNoOptional EU VAT number.
company_nameYesLegal company name.
contact_emailYesContact email for invoice delivery.
billing_countryNoCountry of tax registration.
max_budget_usdcNoOptional AI Agent safety budget cap. Raises error if order amount exceeds this ceiling.

TDQS

A4/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
num_plotsYesNumber of production plots/farms to process.
satellite_resolutionNoSatellite imagery resolution tier.sentinel_10m
include_traces_submissionNoWhether automated TRACES-NT B2G XML dispatch is requested.

TDQS

A3.7/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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

With no output schema, the description 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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
plotsYesList of production plots with plot_id, country_code, area_hectares, and geometry/coordinates.
hs_codeYesHarmonized System Code (e.g. '151110', '440711').
commodityNoRegulated commodity name or category.
documentsNoOptional list of legal origin documents (permits, land titles, certificates).
net_mass_kgNoConsignment net mass in kilograms.
operator_eoriYesOperator EU EORI / VAT number.
operator_nameYesLegal name of the EU importing operator.
destination_countryNoOptional ISO 3166-1 alpha-2 destination country code (e.g. 'FR', 'DE', 'GF').

TDQS

B3.2/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
hs_codeYesHarmonized System tariff code (6-10 digits).
is_recycledNoWhether 100% post-consumer recycled waste (Annex I Footnote 1).
dds_reference_idNoTRACES-NT DDS reference number, if already filed.
is_packaging_onlyNoWhether commodity is protective packaging supporting another good.
verification_codeNoTRACES-NT security verification code.
is_downstream_operatorNoWhether downstream operator referencing upstream DDS (Art. 4(8)).
upstream_dds_referenceNoUpstream DDS reference for pass-through.

TDQS

B3.4/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema 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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
plotsYesList of certified production plots with plot_id, country_code, area_hectares, and geometry.
hs_codeYesHarmonized System 6-digit tariff code.
commodityNoCommodity description (e.g. Cocoa, Coffee, Timber).
net_mass_kgYesConsignment net weight in kilograms.
operator_eoriYesOperator EORI number (e.g. 'NL123456789000').
operator_nameYesName of EU importing operator.

TDQS

A3.8/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tx_hashYesOn-chain deposit transaction hash.
escrow_idYesUnique Escrow ID (e.g. 'ESC-EUDR-2026-XXXXXXXX').

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
hs_codeYesCustoms tariff HS code.
net_mass_kgYesDeclared net mass in kilograms.
plots_countNoTotal number of verified plots.
operator_eoriYesOperator EORI number.
operator_nameYesName of authorized operator.
total_area_haNoTotal surface area in hectares.
commodity_descNoCommercial commodity description.
origin_countryNoISO 3166-1 alpha-2 origin country code.XX

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema already explains 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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
plot_idsYesList of certified plot IDs included in this due diligence batch.
commodityYesRegulated commodity.
operator_vatYesOperator EU VAT / EORI number.
operator_nameYesLegal name of the EU importing operator.
total_net_mass_kgYesTotal shipment net mass in kilograms.

TDQS

B3.4/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesEUDRSupplyChainPayload dictionary including plots, commodity, and legal documents.
producer_registry_idNoOptional producer land registry code (e.g. BR CAR or Vietnam MARD).
producer_country_codeNoOptional 2-letter ISO producer country code.

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents 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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idYesUnique autonomous agent ID or public wallet address.

TDQS

C2.9/5.0
Behavior1/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose5/5

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

The description clearly states the tool's purpose 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.

Usage Guidelines1/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
textNoInbound text or system instructions to scan for jailbreak / prompt injection attacks.
hs_codeNo6-digit Harmonized System tariff code.
commodityNoTarget commodity name (e.g. 'coffee', 'cocoa', 'wood', 'oil_palm').
total_area_haNoTotal cultivation area in hectares across production plots.
declared_net_mass_kgNoDeclared total harvest/trade net mass in kilograms.

TDQS

C2.8/5.0
Behavior2/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesOn-chain jobId in AgentEscrow.sol smart contract.
escrow_idYesUnique Escrow ID in EUDR system.
risk_scoreNoOptional override risk score (0-100), default derived from compliance state.
validity_daysNoAttestation validity duration in days (default: 7).
deliverable_hashNoHex-encoded 32-byte hash of DDS report or deliverable.

TDQS

B3.2/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
hs_codeYesHarmonized System 4-6 digit commodity code (e.g. '4101', '4104', '4107').
operator_nameYesName of the importing EU operator or customs broker.
consignment_idYesShipment B/L or consignment tracking identifier.
product_descriptionYesCommercial description of the consignment goods (e.g. 'Tanned bovine leather', 'Leather car seats').
destination_member_stateNoEU destination member state 2-letter code (e.g. 'DE', 'FR', 'NL', 'IT').DE

TDQS

B3.4/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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_publish_compliance_rfqC

Buyer AI Agent broadcasts an EUDR-compliant commodity procurement Request For Quotation (RFQ) to the autonomous supplier agent network.

ParametersJSON Schema
NameRequiredDescriptionDefault
notesNoSpecific procurement terms or delivery guidelines.
hs_codeYes6-digit Harmonized System tariff code.
commodityYesTarget commodity type (e.g. coffee, cocoa, wood, oil_palm).
volume_kgYesRequested commodity volume in kilograms.
buyer_agent_idYesUnique identifier of the autonomous purchasing agent.
destination_portNoEU port of destination (e.g. 'Rotterdam', 'Hamburg').
buyer_agent_walletYesBuyer EVM/Solana wallet address for funding escrow.
max_price_usdc_per_kgYesCeiling purchase price in USDC per kilogram.
max_acceptable_risk_scoreNoMaximum acceptable EUDR risk score (0-100, default 20).

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
plotsNoOptional plot coordinates for on-demand radar check.
escrow_idYesUnique Escrow ID to release.
dds_reference_idNoCompliant DDS reference ID.
customs_declaration_codeNoEU SWE-C customs declaration clearance code.

TDQS

A3.7/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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

Schema coverage is 100%, so the baseline is 3. 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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
plotsNoRequired for Milestone 1: Production plot coordinates for satellite radar audit.
escrow_idYesUnique Escrow ID to release milestone for.
milestone_indexYes1: Pre-shipment Satellite, 2: DDS Registration, 3: Customs Green Lane.
dds_reference_idNoRequired for Milestone 2: Compliant DDS Reference ID.
customs_declaration_codeNoRequired for Milestone 3: Customs Green Lane clearance code.

TDQS

A3.7/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearNoYear of observation (2020 regulatory cut-off baseline vs 2026 present).
layerNoVisualization layer type.ndvi_vegetation
plot_idYesTarget plot identifier.
coordinatesYesWGS84 coordinates of the plot.

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 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.

Purpose4/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesEUDRSupplyChainPayload dictionary with operator, commodity, plots, and legal documents.
producer_registry_idNoOptional producer land registry code for cross-validation.

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
messageNoCustom message text or alert detail.
plot_idNoTarget plot ID if applicable.
alert_typeYesCategory of real-time alert.
supplier_idNoSupplier identifier.
country_codeNo2-letter origin country code.XX

TDQS

B3.4/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
hs_codeYesTariff classification code.
eori_numberYesDeclarant/Operator EORI number, e.g. NL123456789.
net_mass_kgYesDeclared consignment net mass in kg.
country_codeYesISO 2-letter origin country code, e.g. VN, BR, ID.
dds_reference_idYesTRACES-NT Due Diligence Statement reference ID.
destination_portNoEntry port UN/LOCODE: NLRTM (Rotterdam), BEANR (Antwerp), DEHAM (Hamburg), ESVLC (Valencia).NLRTM
verification_codeYesTRACES-NT digital verification code.

TDQS

B3.4/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
plot_idYesOriginal plot or cooperative identifier.
commodityYesTarget commodity (e.g. 'coffee', 'cocoa', 'oil_palm', 'rubber').
coordinatesYesList of [longitude, latitude] coordinate pairs forming the polygon perimeter.
country_codeYesISO 3166-1 alpha-2 country code (e.g. 'ID', 'CI', 'BR', 'GH').
area_hectaresNoKnown or estimated area in hectares.
target_max_haNoTarget maximum sub-parcel size in hectares (default: 3.9 ha).

TDQS

A3.8/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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_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.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesUnique compliance evaluation or order job ID.
commodityNoCommodity being settled (e.g. coffee, cocoa, rubber).
recipientsYesList of recipient objects with 'recipient' (Solana Base58 pubkey), 'amount' (USDC), and optional 'role'.
buyer_walletYesBuyer Solana Base58 public key funding the escrow.
country_codeNoISO alpha-2 country code of harvest origin.
dds_reference_idNoDue diligence statement reference identifier.
polygon_coordinatesNoWGS84 plot coordinates list.

TDQS

A3.6/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesConcise summary of the improvement proposal or requested capability.
contentYesDetailed explanation, expected parameters, or architectural reasoning.
agent_idYesCalling agent identifier or handle (e.g. 'procure-bot-44', 'claude-supply-auditor').
caller_modelNoModel architecture (e.g. 'claude-3-5-sonnet', 'gpt-4o', 'gemini-1.5-pro').autonomous-agent
feedback_typeNoCategory of the evolution proposal.FEATURE_REQUEST
contact_channelNoOptional agent webhook URL or contact handle for status updates.

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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

The description clearly states the tool's purpose: '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.

Usage Guidelines3/5

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

The description implies when to use this toolβ€”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.

ParametersJSON Schema
NameRequiredDescriptionDefault
rfq_idYesTarget RFQ identifier to bid on.
declared_plotsYesList of geolocated production plot parcels with WGS84 coordinates.
seller_agent_idYesUnique supplier agent identifier.
price_usdc_per_kgYesOffered unit price in USDC per kilogram.
seller_agent_walletYesSupplier EVM wallet address to receive escrow settlement.
estimated_risk_scoreNoSupplier self-attested EUDR risk score (default 5).
compliance_diligence_referenceNoExisting Due Diligence Statement or certification reference.

TDQS

A3.6/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesEUDRSupplyChainPayload dictionary specifying commodity, volume, and production plots.
applicant_agent_idNoOptional applicant agent or operator ID requesting trade credit.
staked_escrow_usdcNoOptional USDC amount staked on AgentEscrow.sol as credit collateral enhancement.
producer_registry_idNoOptional producer registry ID (e.g. CAR, SIPUHH, or MARD code).

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
audit_payloadYesAudit record dictionary containing reference_id, plots, timestamp, and signature.
expected_hashYesCryptographic SHA-256 hash to verify against.

TDQS

B3.3/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
attestationYesEIP-712 EscrowAttestation dictionary with v, r, s signatures.

TDQS

A3.7/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
plot_idYesUnique identifier for the production plot or farm.
commodityYesEUDR regulated commodity produced on this plot.
coordinatesYesCoordinates in WGS84 format. Either [longitude, latitude] for point, or [[lng, lat], [lng, lat], ...] for polygon boundary.
country_codeYesISO 3166-1 alpha-2 country code of plot origin (e.g. 'ID', 'BR', 'CI', 'GH', 'VN').
area_hectaresNoPlot surface area in hectares. Plots >= 4.0 hectares strictly require polygon boundaries.

TDQS

A3.5/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYesOfficial registry identifier or cadastral parcel code (e.g. 'BR-MT-5107909-...', 'VN-COFFEE-LDG-...', 'SIPUHH-ID-...').
country_codeNoOptional 2-letter ISO country code (BR, ID, VN, GH, CI, MY). If omitted, automatically detected from format.

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
vat_numberYesNational VAT registration number without the country prefix.
country_codeYesEU Member State 2-letter code (e.g. 'FR', 'DE', 'IT', 'NL', 'BE', 'ES').

TDQS

B3.4/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

  1. 26 tool updatesv0.1.2
    • Addedeudr_agent_eip3009_pay
    • Addedeudr_arbitrate_agent_escrow
    • Addedeudr_auto_slash_disputed_escrow
    • Addedeudr_benchmark_country
    • Addedeudr_create_agent_escrow
    • Addedeudr_create_milestone_escrow
    • Addedeudr_evaluate_compact
    • Addedeudr_evaluate_customs_taric
    • Addedeudr_fund_agent_escrow
    • Addedeudr_generate_export_bundle
    • Addedeudr_inspect_payload_security
    • Addedeudr_issue_eip712_attestation
    • Addedeudr_issue_statutory_exemption
    • Addedeudr_link_downstream_chain
    • Addedeudr_publish_compliance_rfq
    • Addedeudr_release_agent_escrow
    • Addedeudr_release_escrow_milestone
    • Addedeudr_score_kfs_checklist
    • Addedeudr_simulate_swe_c_customs_clearance
    • Addedeudr_slice_parcel
    • Addedeudr_solana_generate_pay_link
    • Addedeudr_solana_settle_escrow
    • Addedeudr_submit_compliance_bid
    • Addedeudr_underwrite_trade_credit
    • Addedeudr_verify_eip712_attestation
    • Addedeudr_verify_producer_registry
  2. 3 tool updatesv0.1.1
    • Addedeudr_agent_micro_pay
    • Addedeudr_get_agent_budget_status
    • Addedeudr_submit_agent_feedback
  3. 12 tool updatesv0.1.0
    • First observedeudr_check_deforestation
    • First observedeudr_confirm_payment
    • First observedeudr_create_payment_order
    • First observedeudr_estimate_compliance_cost
    • First observedeudr_export_traces_xml
    • First observedeudr_generate_customs_certificate
    • First observedeudr_generate_dds
    • First observedeudr_render_satellite_map
    • First observedeudr_send_telegram_alert
    • First observedeudr_verify_audit_integrity
    • First observedeudr_verify_plot
    • First observedeudr_verify_vies_vat

TDQS

B3.2/5.0

Scored across 41 tools

Disambiguation3/5

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.

Naming Consistency4/5

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.

Tool Count2/5

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.

Completeness4/5

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

ActivityActive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers