# Agent Decision & Evidence Tools (MCP + x402) (io.github.PatrickPi1312/eu-compliance): tool descriptions scored

- tools/list taken: 2026-11-02 (UTC)
- From: [Official MCP Registry](https://registry.modelcontextprotocol.io/v0/servers/io.github.PatrickPi1312%2Feu-compliance/versions/latest)
- Connected to: https://mcp.eucompliance.tools/mcp
- Homepage: https://eucompliance.tools/
- Repository: https://github.com/PatrickPi1312/eucompliance-tools
- Scoring rules: v2
- Tools: 41
- Average: 51.3 / 100 (Cloudy)
- Near-identical pairs: 1

This page shows how Agent Decision & Evidence Tools (MCP + x402) (io.github.PatrickPi1312/eu-compliance)'s tool descriptions scored, the issues found and the names of its tools and parameters. The descriptions are the server's own: read them where the copy came from.

Forecall asked the URL this server lists in the official MCP Registry for its tools/list once, on the date above, without calling any tool. The server may have changed since.

## Across the server

- Major: 41 tools. Above 40, models choose less accurately.
- Minor: The server's instructions are 2637 characters. Claude Code reads only the first 2,048 by default (Codex 0.154.0 reads them whole). Put what the server is for first.

## Tools

- `check_counterparty_eu`: 36 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: name, vat, iban, country, own_country, relationship, type, b2b.
  - Minor: No `required` list, so every argument is optional.
  - Minor: The meaning of the boolean argument b2b is unclear.
- `agentllm_micro`: 39 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: prompt, system, max_tokens.
  - Minor: The description mentions none of its 3 or more arguments.
- `lookup_company_eu`: 40 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: country, name, id.
  - Minor: String arguments with no constraint or example: country.
- `invoice_to_pay_dossier_eu`: 41 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: buyer_country, expected_amount, expected_currency, trusted_payee_iban, invoice_xml, document_base64, filename, expected_supplier_vat, expected_supplier_name, expected_buyer_vat, purchase_order_reference, supply_type, b2b.
  - Minor: String arguments with no constraint or example: expected_amount, trusted_payee_iban.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: The meaning of the boolean argument b2b is unclear.
- `agent_spend_statement`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: wallet, days, format.
  - Minor: String arguments with no constraint or example: wallet.
- `ai_act_disclosure`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: content, content_sha256, model, model_provider, deployer, kind, language.
  - Minor: No `required` list, so every argument is optional.
- `contract_info`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: address, chain.
- `validate_iban`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: iban.
- `screen_sanctions_eu`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: name, country, threshold, lists.
  - Minor: String arguments with no constraint or example: name.
- `prepare_invoice_to_pay_eu`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: buyer_country, expected_amount, expected_currency, trusted_payee_iban, invoice_xml, document_base64, filename, expected_supplier_vat, expected_supplier_name, expected_buyer_vat, purchase_order_reference, supply_type, b2b.
  - Minor: String arguments with no constraint or example: expected_amount, trusted_payee_iban.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: The meaning of the boolean argument b2b is unclear.
- `read_url`: 45 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: url, format.
- `validate_einvoice_eu`: 45 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: xml.
- `spot_price`: 46 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: symbol.
  - Minor: No `required` list, so every argument is optional.
- `agentllm_basic`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: prompt, system, max_tokens.
  - Minor: The description mentions none of its 3 or more arguments.
- `agentllm_plus`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: prompt, system, max_tokens.
  - Minor: The description mentions none of its 3 or more arguments.
- `coin_positioning_brief`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: symbol.
  - Minor: No `required` list, so every argument is optional.
- `counterparty_dossier_eu`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: name, vat, iban, country, registration_id, require_register.
  - Minor: The meaning of the boolean argument require_register is unclear.
- `market_data`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: product.
  - Minor: No `required` list, so every argument is optional.
- `must_verify_before_pay`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: payee_name, payee_vat, payee_iban, country, amount, currency.
  - Minor: String arguments with no constraint or example: payee_name, payee_vat, payee_iban.
  - Minor: The description mentions none of its 3 or more arguments.
- `wallet_balance`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: address, chain.
- `gas_estimate`: 51 / 100
  - Major: Arguments without a description: chain, sender, to, data, value_native.
  - Minor: No `required` list, so every argument is optional.
  - Minor: The description mentions none of its 3 or more arguments.
- `eu_vat_rules`: 52 / 100
  - Major: Arguments without a description: supplier, customer, b2b, type, customer_vat_valid, above_oss_threshold.
  - Minor: String arguments with no constraint or example: supplier, customer.
  - Minor: The meaning of the boolean argument b2b is unclear.
- `perp_market_data`: 52 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: coin, top.
  - Minor: No `required` list, so every argument is optional.
- `prepare_x402_purchase_guard`: 52 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: payment_required.
- `token_status`: 52 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: token, owner, chain, spender.
- `tx_status`: 52 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: tx_hash, chain.
- `verify_compliance_receipt`: 52 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: document_json.
- `validate_vat`: 53 / 100
  - Major: Arguments without a description: vat_id.
  - Minor: Required identifiers whose description does not say where the value comes from: vat_id. Name the tool or the place that returns it, or models look it up first.
- `prepare_agentllm`: 55 / 100
  - Major: Arguments without a description: prompt, tier, system, max_tokens.
  - Minor: The description mentions none of its 3 or more arguments.
- `prepare_agentllm_micro`: 55 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: prompt, system, max_tokens.
- `rpc_read_batch`: 58 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: requests, requests[].jsonrpc.
- `prepare_us_import_readiness`: 59 / 100
  - Major: Arguments without a description: dispatch_country, product_name, product_description, material_or_composition, intended_use, customs_value_usd, quantity, importer_use, merchant_forwarding_policy, risk_answers, risk_answers.battery, risk_answers.food_or_supplement, risk_answers.drug_or_medical_device, risk_answers.cosmetic, risk_answers.plant_seed_or_animal_product, risk_answers.chemical_or_hazmat, risk_answers.alcohol_or_tobacco, risk_answers.weapon_or_weapon_part, risk_answers.counterfeit_or_unlicensed_replica, risk_answers.radio_transmitter, risk_answers.childrens_product, destination_country, brand, model.
  - Minor: The description mentions none of its 3 or more arguments.
- `recommend_agent_tool`: 59 / 100
  - Major: Arguments without a description: goal, category, country, chain, max_price_usdc, max_results, prefer_free.
  - Minor: The meaning of the boolean argument prefer_free is unclear.
- `recover_us_import_readiness`: 59 / 100
  - Major: Arguments without a description: job_id, recovery_secret.
  - Minor: String arguments with no constraint or example: recovery_secret.
  - Minor: Required identifiers whose description does not say where the value comes from: job_id. Name the tool or the place that returns it, or models look it up first.
- `tx_preflight`: 60 / 100
  - Major: Arguments without a description: sender, to, chain, data, value_eth, token, amount, spender.
- `us_import_readiness_guard`: 60 / 100
  - Major: Arguments without a description: dispatch_country, product_name, product_description, material_or_composition, intended_use, customs_value_usd, quantity, importer_use, merchant_forwarding_policy, risk_answers, risk_answers.battery, risk_answers.food_or_supplement, risk_answers.drug_or_medical_device, risk_answers.cosmetic, risk_answers.plant_seed_or_animal_product, risk_answers.chemical_or_hazmat, risk_answers.alcohol_or_tobacco, risk_answers.weapon_or_weapon_part, risk_answers.counterfeit_or_unlicensed_replica, risk_answers.radio_transmitter, risk_answers.childrens_product, destination_country, brand, model.
  - Minor: The description mentions none of its 3 or more arguments.
- `open_social_search`: 62 / 100
  - Major: Arguments without a description: query, limit.
  - Minor: String arguments with no constraint or example: query.
- `market_history`: 64 / 100
  - Major: Arguments without a description: product, days, resolution.
  - Minor: String arguments with no constraint or example: product.
- `market_decision_pack`: 67 / 100
  - Major: Says nothing about when to use it, or when not to.
- `x402_purchase_guard`: 69 / 100
  - Major: Arguments without a description: payment_required, resource_url, resource_method, max_price_usdc, allowed_networks, expected_pay_to.
  - Minor: String arguments with no constraint or example: expected_pay_to.
  - Minor: The description mentions none of its 3 or more arguments.
- `soft_commodity_stress`: 70 / 100
  - Major: Says nothing about when to use it, or when not to.

Is your server listed here and you would rather it were not? Email support@forecall.dev, and we will take it off within 7 days.

[All scored servers](https://forecall.dev/en/servers)
