Skip to content

Agent Decision & Evidence Tools (MCP + x402)

by PatrickPi1312 · remote · no sign-in to list tools · v1.6.0 · published by GitHub user PatrickPi1312

40 MCP tools: multi-chain RPC, market and transaction decisions, AI, EU compliance and US imports

Final · 5Changes · 21

41 tools: 5 do something that can't be undone, 21 change things and 15 only read.

Scanned Oct 21, 2026

15 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http eu-compliance https://mcp.eucompliance.tools/mcp

Findings

Matches of fixed checks, with the text they matched.

15 warn
  • The server marks "agentllm_micro" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "open": a word for a change.

    What this check looks for
  • The server marks "agentllm_basic" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "open": a word for a change.

    What this check looks for
  • The server marks "agentllm_plus" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "open": a word for a change.

    What this check looks for
  • The server marks "prepare_invoice_to_pay_eu" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "prepare_invoice_to_pay_eu" says "pay": a word that usually means money moves, which cannot be taken back.

    What this check looks for
  • The server marks "invoice_to_pay_dossier_eu" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "invoice_to_pay_dossier_eu" says "pay": a word that usually means money moves, which cannot be taken back.

    What this check looks for
  • The server marks "prepare_us_import_readiness" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "prepare_us_import_readiness" says "import": a word for a change.

    What this check looks for
Show 9 more findings
  • The server marks "us_import_readiness_guard" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "us_import_readiness_guard" says "import": a word for a change.

    What this check looks for
  • The server marks "recover_us_import_readiness" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "recover_us_import_readiness" says "import": a word for a change.

    What this check looks for
  • The server marks "must_verify_before_pay" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "must_verify_before_pay" says "pay": a word that usually means money moves, which cannot be taken back.

    What this check looks for
  • The server marks "agent_spend_statement" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "create": a word for a change.

    What this check looks for
  • The server marks "rpc_read_batch" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "rpc_read_batch" says "read": a word for reading.

    What this check looks for
  • The server marks "open_social_search" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "open_social_search" says "open": a word for a change.

    What this check looks for
  • The server marks "ai_act_disclosure" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "create": a word for a change.

    What this check looks for
  • The server marks "prepare_x402_purchase_guard" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "prepare_x402_purchase_guard" says "purchase": a word that usually means money moves, which cannot be taken back.

    What this check looks for
  • The server marks "x402_purchase_guard" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "x402_purchase_guard" says "purchase": a word that usually means money moves, which cannot be taken back.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

41 tools

Can't be undone 5Claude Code: ask
  • invoice_to_pay_dossier_euOne signed decision before an EU invoice is paid: READY_FOR_BUYER_APPROVAL, HOLD_FOR_REVIEW or DO_NOT_PAY with evidence and safe next actions.Reads text others write1 finding

    Why it is in this group

    • The name "invoice_to_pay_dossier_eu" says "pay": a word that usually means money moves, which cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "invoice_to_pay_dossier_eu" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "invoice_to_pay_dossier_eu" says "pay": a word that usually means money moves, which cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    One signed decision before an EU invoice is paid: READY_FOR_BUYER_APPROVAL, HOLD_FOR_REVIEW or DO_NOT_PAY with evidence and safe next actions. Accepts UBL/CII XML or ZUGFeRD/Factur-X with one embedded invoice XML, not ordinary/scanned PDFs. Complete EN 16931 validation, live VIES, EU/UN/UK sanctions, VAT treatment and a buyer-trusted IBAN match. READY_FOR_BUYER_APPROVAL does not prove delivery, internal approval, duplicate-ledger status or bank-account ownership. Free input check first; 1.00 USDC per completed dossier, no subscription or paid follow-up.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: EU Invoice Payment Guard
  • must_verify_before_payReturn allow or deny before an agent pays a counterparty, using sanctions screening, live VIES validation and IBAN structure evidence.Reads text others write1 finding

    Why it is in this group

    • The name "must_verify_before_pay" says "pay": a word that usually means money moves, which cannot be taken back.
    • The input carries an amount (input.amount) and a currency, so it moves money.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "must_verify_before_pay" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "must_verify_before_pay" says "pay": a word that usually means money moves, which cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Return allow or deny before an agent pays a counterparty, using sanctions screening, live VIES validation and IBAN structure evidence. Deny is the default and the decision carries a signed receipt.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Autonomous payment gate
  • prepare_invoice_to_pay_euFREE local input and safety check before purchase.Reads text others write1 finding

    Why it is in this group

    • The name "prepare_invoice_to_pay_eu" says "pay": a word that usually means money moves, which cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "prepare_invoice_to_pay_eu" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "prepare_invoice_to_pay_eu" says "pay": a word that usually means money moves, which cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    FREE local input and safety check before purchase. Accepts UBL/CII XML or a base64 ZUGFeRD/Factur-X PDF with exactly one embedded invoice XML plus buyer country, expected amount/currency and a trusted payee IBAN. It checks format, limits and required context, but does not reveal the paid decision or query VIES/sanctions. Subject to daily abuse protection.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true
    • title: Prepare EU Invoice Payment Guard (free)
  • prepare_x402_purchase_guardFREE strict syntax and supported-v2-shape check for a raw base64/base64url PAYMENT-REQUIRED header.Reads text others write1 finding

    Why it is in this group

    • The name "prepare_x402_purchase_guard" says "purchase": a word that usually means money moves, which cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "prepare_x402_purchase_guard" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "prepare_x402_purchase_guard" says "purchase": a word that usually means money moves, which cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    FREE strict syntax and supported-v2-shape check for a raw base64/base64url PAYMENT-REQUIRED header. Returns a canonical challenge fingerprint and the policy fields required by the paid guard, without revealing the paid decision, contacting the target, reading a wallet or attempting payment.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true
    • title: Prepare x402 Purchase Guard (free)
  • x402_purchase_guardCompare an already received canonical x402 v2 challenge with the buyer's exact resource, method, USDC price limit, network policy, trusted recipient and EVM/Solana signing-mechanis…Reads text others write1 finding

    Why it is in this group

    • The name "x402_purchase_guard" says "purchase": a word that usually means money moves, which cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "x402_purchase_guard" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "x402_purchase_guard" says "purchase": a word that usually means money moves, which cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Compare an already received canonical x402 v2 challenge with the buyer's exact resource, method, USDC price limit, network policy, trusted recipient and EVM/Solana signing-mechanism fields. Returns PROCEED_TO_USER_CONFIRMATION, REVIEW_REQUIRED or REJECT_CHALLENGE with normalized evidence and a signed fingerprint. A positive result requires confirmation, pins one exact option and expires after 10 minutes. Never contacts the target, accesses a wallet, signs or submits the target payment; merchant identity, delivery and target request-body binding are outside scope.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: x402 Purchase Guard
Changes things 21Claude Code: ask
  • agent_spend_statementCreate a complete Base USDC outflow and transfer record for an agent wallet: every observed transfer, recipient, transaction reference and dated ECB EUR conversion, available as JS…Reads text others write1 finding

    Why it is in this group

    • The description's first verb is "create": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "agent_spend_statement" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "create": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Create a complete Base USDC outflow and transfer record for an agent wallet: every observed transfer, recipient, transaction reference and dated ECB EUR conversion, available as JSON or CSV. Transfers remain explicitly unclassified until invoice, supplier identity and supply type are linked; this tool does not assign VAT, reverse-charge or deductible-expense treatment by itself.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Agent spend transfer evidence
  • agentllm_basicOpenAI-compatible general chat and summaries for exactly 0.005 USDC per call.Reads text others write1 finding

    Why it is in this group

    • The description's first verb is "open": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "agentllm_basic" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "open": a word for a change.

      What this check looks for
    Description, as the server wrote it
    OpenAI-compatible general chat and summaries for exactly 0.005 USDC per call. Run prepare_agentllm with tier basic first. Hard limits are 6,000 UTF-8 input bytes, 16 messages and 750 output tokens; upstream model and usage are disclosed and the result includes a signed receipt.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: AgentLLM Basic inference
  • agentllm_microOpenAI-compatible classification, extraction, routing and short summaries for exactly 0.003 USDC per call.Reads text others write1 finding

    Why it is in this group

    • The description's first verb is "open": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "agentllm_micro" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "open": a word for a change.

      What this check looks for
    Description, as the server wrote it
    OpenAI-compatible classification, extraction, routing and short summaries for exactly 0.003 USDC per call. Validate the exact JSON for free first; no account or API key.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: AgentLLM Micro inference
  • agentllm_plusOpenAI-compatible stronger drafting, analysis and longer summaries for exactly 0.02 USDC per call.Reads text others write1 finding

    Why it is in this group

    • The description's first verb is "open": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "agentllm_plus" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "open": a word for a change.

      What this check looks for
    Description, as the server wrote it
    OpenAI-compatible stronger drafting, analysis and longer summaries for exactly 0.02 USDC per call. Run prepare_agentllm with tier plus first. Hard limits are 6,000 UTF-8 input bytes, 16 messages and 1,200 output tokens; upstream model and usage are disclosed and the result includes a signed receipt.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: AgentLLM Plus inference
  • ai_act_disclosureCreate a signed Article 50 provenance record and German/English disclosure for AI-generated content, including a privacy-first hash-only path.Reads text others write1 finding

    Why it is in this group

    • The description's first verb is "create": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "ai_act_disclosure" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "create": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Create a signed Article 50 provenance record and German/English disclosure for AI-generated content, including a privacy-first hash-only path. This attests declared origin; it does not detect AI in arbitrary content.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: EU AI Act disclosure evidence
  • check_counterparty_euVAT ID validation (VIES) plus sanctions screening plus IBAN check in one call, condensed into a traffic-light verdict with reasons and a recommendation.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    VAT ID validation (VIES) plus sanctions screening plus IBAN check in one call, condensed into a traffic-light verdict with reasons and a recommendation.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Counterparty due diligence (KYB)
  • coin_positioning_briefCalculate a disclosed crowded-long/short score from current Hyperliquid funding and premium.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Calculate a disclosed crowded-long/short score from current Hyperliquid funding and premium. The response also includes an at-least-two-exchange spot median, open interest, volume and the service's six-hour archive trend as separate context; a still-filling archive is labelled and does not enter this score.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Signed coin-positioning brief
  • counterparty_dossier_euProfessional procurement and onboarding dossier: live VIES identity, EU/UN/UK sanctions-name screening, IBAN validation, cross-source legal-name consistency and an official nationa…Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Professional procurement and onboarding dossier: live VIES identity, EU/UN/UK sanctions-name screening, IBAN validation, cross-source legal-name consistency and an official national company-register extract where an open API exists. Returns one APPROVE, REVIEW or BLOCK decision, exact coverage and limitations, a source manifest, 24-hour recheck time and a signed audit receipt. Critical evidence failures are uncharged.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: EU Counterparty Dossier Pro
  • eu_vat_rulesPlace of supply, reverse charge, intra-Community supply or export, the rate, plus the EN 16931 VAT category code (BT-151), exemption reason code (BT-121) and invoice wording.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Place of supply, reverse charge, intra-Community supply or export, the rate, plus the EN 16931 VAT category code (BT-151), exemption reason code (BT-121) and invoice wording. Supplier/customer jurisdictions are always required; customer VAT validity, transaction type and OSS-threshold evidence are conditionally required when the selected VAT rule depends on them. Missing evidence is reported, not inferred.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: EU VAT decision engine
  • prepare_agentllmFREE deterministic validation and exact-price routing for all AgentLLM tiers.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    FREE deterministic validation and exact-price routing for all AgentLLM tiers. Choose Micro for classification, extraction and short summaries, Basic for general chat, or Plus for stronger drafting, analysis and longer summaries. It validates the exact arguments without calling a model or charging; continue only when ready_to_buy is true.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true
    • title: Choose and prepare AgentLLM tier (free)
  • prepare_agentllm_microFREE validation of the exact AgentLLM prompt, system instruction and token limit before purchase.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    FREE validation of the exact AgentLLM prompt, system instruction and token limit before purchase. It enforces the input and output limits without calling a model or charging anything.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true
    • title: Prepare AgentLLM Micro (free)
  • prepare_us_import_readinessFREE local completeness and safety check for ordinary goods dispatched from DE/AT to the US.Reads text others write1 finding

    Why it is in this group

    • The name "prepare_us_import_readiness" says "import": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "prepare_us_import_readiness" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "prepare_us_import_readiness" says "import": a word for a change.

      What this check looks for
    Description, as the server wrote it
    FREE local completeness and safety check for ordinary goods dispatched from DE/AT to the US. Requires product, material, intended-use, origin, value and explicit regulated-attribute answers. No product URL is accepted or fetched. Returns an opaque job ID and recovery secret for the paid guard.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true
    • title: Prepare US Import Readiness Guard (free)
  • recommend_agent_toolFREE deterministic router over the published Agent Card.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    FREE deterministic router over the published Agent Card. Describe the job and optional category, country, chain, price cap and available input names; receive one to three matching tools with exact catalog prices, required inputs and a safe workflow. It performs no model call, network lookup, payment or target-tool execution and never returns supplied secret values.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true
    • title: Recommend the right agent tool (free)
  • recover_us_import_readinessFREE recovery when an x402 settlement succeeded but the signed response was lost.Reads text others write1 finding

    Why it is in this group

    • The name "recover_us_import_readiness" says "import": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "recover_us_import_readiness" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "recover_us_import_readiness" says "import": a word for a change.

      What this check looks for
    Description, as the server wrote it
    FREE recovery when an x402 settlement succeeded but the signed response was lost. Returns only the already-settled result for the opaque job ID and recovery secret; it never performs a new lookup or creates a new charge.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true
    • title: Recover a settled US Import Readiness result (free)
  • rpc_read_batchRun 1-20 standard read-only JSON-RPC requests as one paid call across 28 EVM mainnets.Reads text others write1 finding

    Why it is in this group

    • The name "rpc_read_batch" says "read": a word for reading.
    • The description's first verb is "run": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "rpc_read_batch" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "rpc_read_batch" says "read": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Run 1-20 standard read-only JSON-RPC requests as one paid call across 28 EVM mainnets. Set one default chain for the batch or override it with an optional chain field on each request. Includes public-node failover, decoded Error/Panic reverts and source evidence; signing, state-changing convenience methods and transaction broadcasting are unavailable.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: 28-chain read-only RPC batch
  • screen_sanctions_euCheck a person or company against the official EU (Commission FSF), UN Security Council and UK (HM Treasury OFSI) sanctions lists.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Check a person or company against the official EU (Commission FSF), UN Security Council and UK (HM Treasury OFSI) sanctions lists. 12,000+ listed entities, 50,000+ name variants, re-indexed daily, fuzzy matching. Each hit states its list, programme, reference and the list date.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Sanctions screening (EU, UN, UK)
  • soft_commodity_stressCalculate a disclosed weather-only supply-stress score from Brazilian growing-belt rainfall and dry days.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Calculate a disclosed weather-only supply-stress score from Brazilian growing-belt rainfall and dry days. A paid result also includes at least one usable Ivory Coast cocoa-or-coffee farmgate-price observation from a distinct source as context; availability of both commodities is not guaranteed. This has its own wrapper because its upstream cost is higher.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Soft-commodity supply-stress evidence
  • spot_priceAttempt independent Binance, Coinbase and Kraken public tickers and calculate the median from the live quotes that return.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Attempt independent Binance, Coinbase and Kraken public tickers and calculate the median from the live quotes that return. Every delivered quote, quote currency, spread and timestamp is disclosed; fewer than two live sources is an uncharged error.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Multi-source crypto spot median
  • us_import_readiness_guardSigned pre-purchase evidence dossier for ordinary goods dispatched from Germany or Austria to the United States.Reads text others write1 finding

    Why it is in this group

    • The name "us_import_readiness_guard" says "import": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.

    Findings

    • Warn

      The server marks "us_import_readiness_guard" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "us_import_readiness_guard" says "import": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Signed pre-purchase evidence dossier for ordinary goods dispatched from Germany or Austria to the United States. Validates a buyer-declared HTS code or returns non-binding current USITC candidates, calculates only a simple ordinary-duty component, checks CPSC recall candidates and routes declared regulated attributes. Returns PROCEED_TO_CARRIER_QUOTE, REVIEW_REQUIRED or DO_NOT_FORWARD. It never fetches a product URL, orders, creates an address, books shipping or claims exact landed cost, carrier acceptance or customs clearance. Free input check first; source/input failures are not settled.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: US Import Readiness Guard
  • verify_compliance_receiptAnyone can verify issuer authenticity, integrity and the signed validity window of a eucompliance.tools result locally without payment or network access; this does not validate the…Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Anyone can verify issuer authenticity, integrity and the signed validity window of a eucompliance.tools result locally without payment or network access; this does not validate the underlying facts.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true
    • title: Verify a compliance receipt (free)
Only reads 15Claude Code: allow, ask for 1 outbound
  • contract_infoInspect live runtime bytecode, native balance, transaction count and observed block, returning deployed_contract, eoa_or_empty or precompile_or_system_address without claiming wall…Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "inspect": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Inspect live runtime bytecode, native balance, transaction count and observed block, returning deployed_contract, eoa_or_empty or precompile_or_system_address without claiming wallet ownership.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Contract or wallet classification
  • gas_estimateReturn the current gas price and, when transaction fields are supplied, eth_estimateGas plus an execution-fee estimate with excluded rollup components stated explicitly.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "return": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Return the current gas price and, when transaction fields are supplied, eth_estimateGas plus an execution-fee estimate with excluded rollup components stated explicitly.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Gas and execution-fee estimate
  • lookup_company_euLive extract from official national registers in France, Norway, Czechia, Finland, Slovakia and Poland: name, registration number, status, legal form, address and registration date…Reads text others writeNo findings

    Why it is in this group

    • The name "lookup_company_eu" says "lookup": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Live extract from official national registers in France, Norway, Czechia, Finland, Slovakia and Poland: name, registration number, status, legal form, address and registration date. Germany and Austria are not covered because their registers are not available here as an equivalent open lookup.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Company register lookup
  • market_dataReturn one computed market_brief, Base gas or yield indicator with source coverage, freshness, a stable repeat URL and a do-not-repurchase-before time.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "return": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe description's first sentence says "return" and "url": it reads web pages, which anyone can write.
    Description, as the server wrote it
    Return one computed market_brief, Base gas or yield indicator with source coverage, freshness, a stable repeat URL and a do-not-repurchase-before time. Soft commodities use soft_commodity_stress.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Fresh market indicators
  • market_decision_packReturn ENTER_RISK, WAIT or REDUCE_RISK with score, evidence-coverage confidence, reasons, risk flags, invalidation conditions and a 15-minute expiry.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "return": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Return ENTER_RISK, WAIT or REDUCE_RISK with score, evidence-coverage confidence, reasons, risk flags, invalidation conditions and a 15-minute expiry. One call combines regime, gas, APY, BTC/ETH/SOL spot, top perps and seven-day history.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Complete market decision pack
  • market_historyReturn the service's own archived gas, yield, commodity or market-brief series as raw observations or daily medians.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "return": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Return the service's own archived gas, yield, commodity or market-brief series as raw observations or daily medians. At least two usable points must remain after the requested resolution; an empty, one-point or incompletely readable archive returns an uncharged error and is never sold as a time series.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Archived market history
  • perp_market_dataReturn Hyperliquid mark and oracle prices, funding, open interest, 24-hour volume, premium and maximum leverage for one coin or the top markets by volume, with source and timestamp…Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "return": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Return Hyperliquid mark and oracle prices, funding, open interest, 24-hour volume, premium and maximum leverage for one coin or the top markets by volume, with source and timestamp.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Perpetual-futures positioning data
  • read_urlFetch a public web page as clean Markdown or text while refusing internal and private addresses, suitable for reading evidence before an agent acts on a link.Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "read_url" says "read": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe name "read_url" says "read" and "url": it reads web pages, which anyone can write.
    • untrusted-inputThe description's first sentence says "fetch" and "web": it reads web pages, which anyone can write.
    • untrusted-inputThe input takes a URL (input.url), and the tool reads it: it reads web pages, which anyone can write.
    • outboundThe input takes a URL (input.url): a request to a URL can carry data to whoever runs it.

    Claude Code: ask, because it is tagged outbound.

    Description, as the server wrote it
    Fetch a public web page as clean Markdown or text while refusing internal and private addresses, suitable for reading evidence before an agent acts on a link.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Safe page reader
  • token_statusReturn an owner's token balance and optional spender allowance, including whether both satisfy a requested amount, across five EVM chains.Reads text others writeNo findings

    Why it is in this group

    • The name "token_status" says "status": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Return an owner's token balance and optional spender allowance, including whether both satisfy a requested amount, across five EVM chains.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: ERC-20 balance and allowance evidence
  • tx_preflightRead-only decision analysis before signing with five on-chain core checks: native balance/gas price, transaction-specific gas estimate, simulation with decoded revert reason, pendi…Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Read-only decision analysis before signing with five on-chain core checks: native balance/gas price, transaction-specific gas estimate, simulation with decoded revert reason, pending nonce gap and recipient bytecode/type. Token inputs add an optional ERC-20 balance and allowance check. Returns proceed, review or block with evidence, unknowns, limitations and safe next actions. Wallet sanctions screening is not included because official name lists cannot clear or identify a blockchain address. Missing evidence is never approval; there are no follow-up charges.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Agent Transaction Guard
  • tx_statusReturn mined or pending status, success or decoded revert reason, gas used, block and confirmations for a transaction on Base, Ethereum, Arbitrum, Optimism or Polygon.Reads text others writeNo findings

    Why it is in this group

    • The name "tx_status" says "status": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Return mined or pending status, success or decoded revert reason, gas used, block and confirmations for a transaction on Base, Ethereum, Arbitrum, Optimism or Polygon.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Transaction status and revert evidence
  • validate_einvoice_euValidate an XRechnung, ZUGFeRD/Factur-X or Peppol BIS invoice (UBL or CII) against EN 16931: mandatory fields, arithmetic consistency of all totals, VAT breakdown and category rule…Reads text others writeNo findings

    Why it is in this group

    • The name "validate_einvoice_eu" says "validate": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Validate an XRechnung, ZUGFeRD/Factur-X or Peppol BIS invoice (UBL or CII) against EN 16931: mandatory fields, arithmetic consistency of all totals, VAT breakdown and category rules, each finding with its official BR- rule code.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true
    • title: E-invoice validation
  • validate_ibanFREE IBAN checksum and country-structure validation with BIC and bank-name enrichment where registry data exists.Reads text others writeNo findings

    Why it is in this group

    • The name "validate_iban" says "validate": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    FREE IBAN checksum and country-structure validation with BIC and bank-name enrichment where registry data exists. It does not prove account existence or ownership.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true
    • title: IBAN structure check (free)
  • validate_vatFREE live validation of an EU VAT ID against VIES, including the registered name and address when the member state publishes them.Reads text others writeNo findings

    Why it is in this group

    • The name "validate_vat" says "validate": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    FREE live validation of an EU VAT ID against VIES, including the registered name and address when the member state publishes them. Use this as the no-cost entry point before paid VAT, counterparty or invoice decisions.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • readOnlyHint: true
    • title: EU VAT identity check (free)
  • wallet_balanceReturn a live native balance, exact wei, pending nonce, observed block and RPC-source evidence for a wallet on Base, Ethereum, Arbitrum, Optimism or Polygon.Reads text others writeNo findings

    Why it is in this group

    • The description's first verb is "return": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Return a live native balance, exact wei, pending nonce, observed block and RPC-source evidence for a wallet on Base, Ethereum, Arbitrum, Optimism or Polygon.

    Annotations the server declares

    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Wallet execution evidence

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

No private-data, untrusted-input, outbound path in this server alone: no tool is tagged private-data.

Reads private data0
Reads files, mail, messages, databases, secrets, calendars or repositories.
Can send data out1
Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Install

Pinned to version 1.6.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http eu-compliance https://mcp.eucompliance.tools/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__eu-compliance__validate_vat",
      "mcp__eu-compliance__validate_iban",
      "mcp__eu-compliance__validate_einvoice_eu",
      "mcp__eu-compliance__lookup_company_eu",
      "mcp__eu-compliance__wallet_balance",
      "mcp__eu-compliance__gas_estimate",
      "mcp__eu-compliance__contract_info",
      "mcp__eu-compliance__perp_market_data",
      "mcp__eu-compliance__market_decision_pack",
      "mcp__eu-compliance__market_data",
      "mcp__eu-compliance__market_history",
      "mcp__eu-compliance__tx_preflight",
      "mcp__eu-compliance__tx_status",
      "mcp__eu-compliance__token_status"
    ],
    "ask": [
      "mcp__eu-compliance__recommend_agent_tool",
      "mcp__eu-compliance__prepare_agentllm",
      "mcp__eu-compliance__prepare_agentllm_micro",
      "mcp__eu-compliance__agentllm_micro",
      "mcp__eu-compliance__agentllm_basic",
      "mcp__eu-compliance__agentllm_plus",
      "mcp__eu-compliance__prepare_invoice_to_pay_eu",
      "mcp__eu-compliance__invoice_to_pay_dossier_eu",
      "mcp__eu-compliance__prepare_us_import_readiness",
      "mcp__eu-compliance__us_import_readiness_guard",
      "mcp__eu-compliance__recover_us_import_readiness",
      "mcp__eu-compliance__screen_sanctions_eu",
      "mcp__eu-compliance__eu_vat_rules",
      "mcp__eu-compliance__check_counterparty_eu",
      "mcp__eu-compliance__counterparty_dossier_eu",
      "mcp__eu-compliance__verify_compliance_receipt",
      "mcp__eu-compliance__must_verify_before_pay",
      "mcp__eu-compliance__agent_spend_statement",
      "mcp__eu-compliance__rpc_read_batch",
      "mcp__eu-compliance__spot_price",
      "mcp__eu-compliance__open_social_search",
      "mcp__eu-compliance__coin_positioning_brief",
      "mcp__eu-compliance__soft_commodity_stress",
      "mcp__eu-compliance__ai_act_disclosure",
      "mcp__eu-compliance__prepare_x402_purchase_guard",
      "mcp__eu-compliance__x402_purchase_guard",
      "mcp__eu-compliance__read_url"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as eu-compliance. Review it before you use it.

Capability tags behind 41 rules
  • mcp__eu-compliance__validate_vat untrusted-input
  • mcp__eu-compliance__validate_iban untrusted-input
  • mcp__eu-compliance__recommend_agent_tool untrusted-input
  • mcp__eu-compliance__prepare_agentllm untrusted-input
  • mcp__eu-compliance__prepare_agentllm_micro untrusted-input
  • mcp__eu-compliance__agentllm_micro untrusted-input
  • mcp__eu-compliance__agentllm_basic untrusted-input
  • mcp__eu-compliance__agentllm_plus untrusted-input
  • mcp__eu-compliance__prepare_invoice_to_pay_eu untrusted-input
  • mcp__eu-compliance__invoice_to_pay_dossier_eu untrusted-input
  • mcp__eu-compliance__prepare_us_import_readiness untrusted-input
  • mcp__eu-compliance__us_import_readiness_guard untrusted-input
  • mcp__eu-compliance__recover_us_import_readiness untrusted-input
  • mcp__eu-compliance__screen_sanctions_eu untrusted-input
  • mcp__eu-compliance__eu_vat_rules untrusted-input
  • mcp__eu-compliance__check_counterparty_eu untrusted-input
  • mcp__eu-compliance__counterparty_dossier_eu untrusted-input
  • mcp__eu-compliance__validate_einvoice_eu untrusted-input
  • mcp__eu-compliance__verify_compliance_receipt untrusted-input
  • mcp__eu-compliance__must_verify_before_pay untrusted-input
  • mcp__eu-compliance__lookup_company_eu untrusted-input
  • mcp__eu-compliance__agent_spend_statement untrusted-input
  • mcp__eu-compliance__rpc_read_batch untrusted-input
  • mcp__eu-compliance__wallet_balance untrusted-input
  • mcp__eu-compliance__gas_estimate untrusted-input
  • mcp__eu-compliance__contract_info untrusted-input
  • mcp__eu-compliance__spot_price untrusted-input
  • mcp__eu-compliance__open_social_search untrusted-input
  • mcp__eu-compliance__perp_market_data untrusted-input
  • mcp__eu-compliance__coin_positioning_brief untrusted-input
  • mcp__eu-compliance__market_decision_pack untrusted-input
  • mcp__eu-compliance__soft_commodity_stress untrusted-input
  • mcp__eu-compliance__market_data untrusted-input
  • mcp__eu-compliance__market_history untrusted-input
  • mcp__eu-compliance__ai_act_disclosure untrusted-input
  • mcp__eu-compliance__prepare_x402_purchase_guard untrusted-input
  • mcp__eu-compliance__x402_purchase_guard untrusted-input
  • mcp__eu-compliance__tx_preflight untrusted-input
  • mcp__eu-compliance__tx_status untrusted-input
  • mcp__eu-compliance__token_status untrusted-input
  • mcp__eu-compliance__read_url untrusted-input, outbound