# EU Compliance Tools (pay-per-call, x402) (remote · mcp.eucompliance.tools)

Agent bookkeeping, sanctions, KYB, VAT and e-invoice checks - pay per call in USDC

- Trust score: 59/100 (low)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `mcp.eucompliance.tools`: 59/100 (this document), [markdown](https://verifymcp.io/servers/patrickpi1312-eu-compliance/mcp.md), [page](https://verifymcp.io/servers/patrickpi1312-eu-compliance/mcp)

## Channel facts

- Endpoint: `https://mcp.eucompliance.tools/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.1.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 57/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 10 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 65/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 1438 tokens (~143/item across 10 items; 10 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 10/100
  - Stability observed for 3 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 67/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 0% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).

## Install

### Claude

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

### Codex

```toml
[mcp_servers.patrickpi1312-eu-compliance]
url = "https://mcp.eucompliance.tools/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "patrickpi1312-eu-compliance": {
      "type": "remote",
      "url": "https://mcp.eucompliance.tools/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add patrickpi1312-eu-compliance --url https://mcp.eucompliance.tools/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  patrickpi1312-eu-compliance:
    url: "https://mcp.eucompliance.tools/mcp"
```

### Other

```json
{
  "mcpServers": {
    "patrickpi1312-eu-compliance": {
      "type": "http",
      "url": "https://mcp.eucompliance.tools/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 59, +1)

- [security] The server changed its declared name: eu-finance-tools → eucompliance-tools

### 2026-08-01 (score 58, +1)

- [security] Tool “agent_spend_statement” rewrote its description, which is the text the model reads
- [security] Tool “check_counterparty_eu” rewrote its description, which is the text the model reads
- [security] Tool “eu_vat_rules” rewrote its description, which is the text the model reads
- [security] Tool “validate_einvoice_eu” rewrote its description, which is the text the model reads
- [security] Tool “lookup_company_eu” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: 1267 → 1438
- [functional improvement] Stability: unverified → 0.03
- [functional] New tool “must_verify_before_pay”

### 2026-07-31 (score 57)

First indexed and scored.

## MCP tools (10)

### `validate_vat` (~76 tokens)

FREE, no payment required: validate an EU VAT ID against the live EU VIES register and get the registered name and address where the member state publishes them. Free entry tool - the paid tools in this server add sanctions screening, counterparty due diligence, VAT rules and e-invoice validation.

Input parameters:

- `vat_id` (string, required)

### `validate_iban` (~35 tokens)

FREE, no payment required: validate an IBAN (checksum and country structure, all countries).

Input parameters:

- `iban` (string, required)

### `screen_sanctions_eu` (~178 tokens)

Sanctions screening (AML/KYC) against three official lists in one call: EU (European Commission FSF), UN Security Council, and UK (HM Treasury OFSI) - over 12,000 listed entities, 50,000 name variants, re-indexed daily. Fuzzy matching tolerates transliteration and spelling variants. Each hit states its list, programme, reference number, regulation, countries, birth dates and the list generation date, so the result is auditable; optional lists=eu,un,uk narrows the search. Result carries a signed, freely verifiable receipt. Paid tool: $0.05 per check via x402 (USDC on Base).

Input parameters:

- `country` (string)
- `lists` (string)
- `name` (string, required)
- `threshold` (number)

### `eu_vat_rules` (~157 tokens)

EU VAT decision engine for invoices and e-invoicing (XRechnung, ZUGFeRD, Peppol BIS, OSS): given supplier country, customer country, B2B/B2C and goods/service it returns place of supply, whether to charge VAT, the rate, the EN 16931 VAT category code (BT-151), the exemption reason code (BT-121), ready-to-use invoice wording in English and German, and the legal article of the VAT Directive. Paid tool: $0.005 per call via x402 (USDC on Base).

Input parameters:

- `b2b` (boolean)
- `customer` (string, required)
- `supplier` (string, required)
- `type` (string)

### `check_counterparty_eu` (~128 tokens)

Counterparty due diligence (KYB) in one call: validates an EU VAT ID against the live VIES register, screens the name against the official EU consolidated sanctions list, checks the IBAN, and returns a traffic-light verdict (clear / review / blocked) with reasons and a recommendation. Use before onboarding a new supplier, customer or payee. Paid tool: $0.02 per check via x402 (USDC on Base).

Input parameters:

- `country` (string)
- `iban` (string)
- `name` (string)
- `vat` (string)

### `validate_einvoice_eu` (~129 tokens)

Validate an electronic invoice against EN 16931 (XRechnung, ZUGFeRD/Factur-X, Peppol BIS, UBL or CII): detects syntax and profile, checks mandatory fields, the arithmetic consistency of all totals, the VAT breakdown and category rules (reverse charge, intra-Community supply, export). Every finding carries its official business-rule code (BR-..). The result comes with a signed, independently verifiable compliance receipt. Paid tool: $0.02 per invoice via x402 (USDC on Base).

Input parameters:

- `xml` (string, required)

### `verify_compliance_receipt` (~91 tokens)

FREE, no payment required: verify a compliance receipt issued by eucompliance.tools. Pass the full JSON result (including its 'receipt' field) and get back whether the document is authentic, unmodified and still valid, plus the recovered signer address. Lets any third party - an auditor, another agent - check a compliance result without trusting or paying anyone.

Input parameters:

- `document_json` (string, required)

### `must_verify_before_pay` (~171 tokens)

Payment gate for autonomous agents: decide whether a payment may go out. Screens the payee against EU/UN/UK sanctions lists, validates the VAT ID against VIES and checks the IBAN, then answers allow or deny with reasons. Deny is the default - a payment is released only when the check comes back clear. The answer carries a signed receipt, so the decision stays provable in an audit long afterwards; verify it offline with the free library `pip install eucompliance-verify`. Paid tool: $0.02 per decision.

Input parameters:

- `amount` (number)
- `country` (string)
- `currency` (string)
- `payee_iban` (string)
- `payee_name` (string)
- `payee_vat` (string)

### `lookup_company_eu` (~129 tokens)

Company register lookup straight from the official national registers: Norway (Brønnøysund), Czechia (ARES), Finland (PRH/YTJ), Slovakia (RPO), Poland (KRS). Returns name, registration number, status, legal form, address and registration date in one normalised shape, with a signed receipt. Search by name (not for PL) or by registration number. Paid tool: $0.01 per lookup via x402 (USDC on Base).

Input parameters:

- `country` (string, required)
- `id` (string)
- `name` (string)

### `agent_spend_statement` (~138 tokens)

Turn an AI agent's own crypto spending into a bookkeeping statement: reads every USDC payment of the wallet from Base, converts each to EUR at the ECB reference rate of the payment date, groups by payee, states the VAT treatment (reverse charge for services bought abroad, Art. 44/196 VAT Directive) and returns an auditable statement with CSV export and a signed receipt. Use it to make agent micro-payments bookable. Paid tool: $0.10 per statement via x402 (USDC on Base).

Input parameters:

- `days` (integer)
- `format` (string)
- `wallet` (string, required)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/patrickpi1312-eu-compliance/mcp#diagnostics

## Score history

- 2026-08-03: 59
- 2026-08-02: 59
- 2026-08-01: 58
- 2026-07-31: 57

## Links

- Remote endpoint: https://mcp.eucompliance.tools/mcp
- Repository: https://github.com/PatrickPi1312/eucompliance-tools
- Website: https://eucompliance.tools/
- Changelog RSS feed: https://verifymcp.io/servers/patrickpi1312-eu-compliance/mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/patrickpi1312-eu-compliance/mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/patrickpi1312-eu-compliance/mcp
