Your agent can verify any European business partner — and pay for it by itself.
Company existence (official French SIREN registry) · insolvency records (BODACC) · EU VAT validation before invoicing (VIES) · SIRET / IBAN / LEI checks · address verification · email deliverability · French business-day deadlines · EU public tenders.
No account. No API key. Each call costs $0.001–$0.01 in USDC on Base, paid automatically through the x402 protocol — the payment is the authentication.
- MCP server (for agents):
https://data.greeneris.io/mcp(streamable HTTP) - HTTP API (81 endpoints):
https://data.greeneris.io/llms.txt— full plain-text catalog - OpenAPI:
/openapi.json· x402 manifest:/.well-known/x402· status:/agent-status
Every intra-EU B2B invoice legally requires a valid VAT number. Every serious supplier onboarding requires a company existence check. These are actions that procurement, compliance and due-diligence agents repeat thousands of times — and the official European data behind them was never packaged for agents. Now it is.
| MCP tool | What it answers | Source | Price |
|---|---|---|---|
lookup_company_fr |
Does this French company exist? Status, NAF, HQ, finances | INSEE Sirene (official) | $0.005 |
check_insolvency_fr |
Any insolvency / liquidation proceedings? | BODACC (official gazette) | $0.01 |
validate_vat_eu |
Is this EU VAT number valid? (pre-invoicing check) | VIES (European Commission) | $0.005 |
validate_siret_fr |
Is this SIREN/SIRET well-formed? (offline checksum) | ISO/Luhn | $0.001 |
validate_iban |
Is this IBAN valid? (85 countries, offline) | ISO 13616 mod-97 | $0.001 |
lookup_lei |
Resolve a Legal Entity Identifier | GLEIF (official) | $0.005 |
verify_address_fr |
Does this French address exist? Geocoded | Base Adresse Nationale | $0.001 |
validate_email |
Will email to this address be deliverable? Live MX check | DNS-over-HTTPS | $0.005 |
business_days_fr |
Deadline N business days from date X in France | computed (incl. holidays) | $0.005 |
find_public_tenders_eu |
Recent EU public tenders by sector/country | TED (Official Journal EU) | $0.01 |
catalog |
Everything this shop sells | — | free |
Buyers are never charged for empty or failed answers (an upstream failure returns an error before settlement). No personal data is served (GDPR: director names are stripped from registry answers).
Claude Code:
claude mcp add --transport http eu-verify https://data.greeneris.io/mcpCursor / any MCP client (mcpServers config):
{
"mcpServers": {
"eu-verify": { "url": "https://data.greeneris.io/mcp" }
}
}Then just ask: "Check that ACME SARL exists, validate their VAT FR12345678901, and tell me if they have insolvency proceedings."
Payments over MCP: a paid tool called without payment returns the x402 quote in
the response _meta; x402-aware MCP clients (e.g. the x402 Python SDK's MCP
client, AWS Bedrock AgentCore) attach the USDC payment and retry automatically.
Clients without wallet support can read the quote and fall back to the HTTP API.
Every endpoint answers HTTP 402 with a machine-readable quote until paid:
curl -i "https://data.greeneris.io/v1/fr/company?q=airbus"
# HTTP/1.1 402 Payment Required
# payment-required: eyJ4NDAyVmVyc2lvbiI6Miw... <- base64 quote (price, payTo, network)Paying client in Python (~15 lines, examples/buy_with_python.py):
from eth_account import Account
from x402 import x402Client
from x402.http.clients import x402HttpxClient
from x402.mechanisms.evm.exact import register_exact_evm_client
buyer = Account.from_key(PRIVATE_KEY) # a wallet holding a little USDC on Base
client = x402Client()
register_exact_evm_client(client, buyer)
async with x402HttpxClient(client) as http: # reads the 402, pays, retries
r = await http.get("https://data.greeneris.io/v1/eu/vat-check?cc=IE&vat=6388047V")
print(await r.aread())TypeScript and other languages: see the official x402 SDKs.
- Official sources only: INSEE, European Commission (VIES, TED), DILA (BODACC), GLEIF, Base Adresse Nationale — refreshed at source frequency.
- Fail-safe billing: settlement happens only after a successful answer.
- Uptime: monitored 24/7; live status at
/agent-status. - Payments: settled on-chain by the Coinbase x402 facilitator; every sale is publicly auditable on x402scan.
The examples in this repository are MIT-licensed. The API itself is a paid service —
each response includes its source attribution.