eucompliance-tools
v0.1.1
Published
EU compliance and on-chain tools for agents - VAT/VIES, IBAN, sanctions, market data, time series, transaction preflight - no account, paid per call in USDC via x402
Downloads
339
Maintainers
Readme
eucompliance-tools
EU compliance and on-chain tools for agents — no account.
npm install eucompliance-toolsimport { vat, sanctions, history, preflight } from "eucompliance-tools";
await vat("ATU16170006"); // free — live EU VIES register
await sanctions("Some Person"); // free — EU / UN / UK lists
await history("gas", { days: 7 }); // paid — time series from our own archiveFree tools need nothing: no account, no key, no signup. The free tier allows a number of calls per day; beyond that, and for the paid tools, you pay per call in USDC on Base via x402 — no subscription.
Free tools
| Function | What it does |
| --- | --- |
| vat(id) | Validate an EU VAT ID against the live VIES register; returns the registered name |
| iban(nr) | IBAN checksum and country structure |
| sanctions(name, {country, lists}) | Screen against EU, UN and UK sanctions lists |
| company(country, {name, id}) | Company lookup in official national registers |
| verify(document) | Verify a signed compliance receipt — always free |
| catalog() | The full machine-readable catalogue |
Paid tools (per call in USDC on Base)
| Function | What it does |
| --- | --- |
| market(product) | Computed market and commodity indicators |
| history(product, {days, resolution}) | Historical time series from our own archive — no upstream provider sells it |
| agentSpend(wallet, {days, format}) | An agent's own crypto spending as a bookkeeping statement, EUR at the ECB rate + VAT |
| preflight(sender, to, {...}) | Will this transaction go through? Six checks before any gas, revert reason decoded |
| txStatus(hash, {chain}) | Status of an on-chain transaction |
| tokenStatus(token, owner, {...}) | ERC-20 balance and allowance, live from the chain |
| readUrl(url, {format}) | Fetch a web page as clean markdown |
Paying
Without a payment-capable fetch, a paid tool returns the machine-readable price
(HTTP 402) — useful to discover the cost. To actually pay, pass an x402-capable
fetch, for example from x402-fetch:
import { wrapFetchWithPayment } from "x402-fetch";
import { history } from "eucompliance-tools";
const pay = wrapFetchWithPayment(fetch, walletClient);
const series = await history("gas", { days: 30, fetch: pay });Every paid answer carries a signed receipt; verify(answer) checks it for free.
Prefer an MCP server or Python?
- Any MCP agent:
claude mcp add --transport http eucompliance https://mcp.eucompliance.tools/mcp— all tools, one line. - Python:
pip install eucompliance-tools— the same tools.
MIT licensed. Operated by Patrick Kaufmann, sole proprietor in Vienna, Austria.
