Skip to main content
Glama
sirenic-eu

Sirenic

Official
by sirenic-eu

Sirenic Examples

🚀 Sirenic launched on Product Hunt in July 2026: https://www.producthunt.com/products/sirenic

Listed on x402-list

Working examples for Sirenic — official French and European company data for AI agents: company lookup by name or SIREN, full company profiles, KYB verification and due-diligence files, AML sanctions screening, annual accounts and financial statements, default-risk scoring and company monitoring, from the French company registry (INSEE Sirene, INPI RNE) and official registers across 12 European countries. Pay-per-call in USDC or EURC via the x402 protocol: no account, no API key — your agent pays each request on Base. Every paid response is Ed25519-signed and verifiable offline (recipe) — and carries its per-block provenance: which official register each block came from, its licence, its version and its as_of date, with the exact meaning of that date (upstream official publication, Sirenic ingestion, or live consultation). Verify the signature, then read the provenance: your agent can prove to an auditor what it knew when it paid. Codes are resolved for free at /v1/provenance/registres.

Data sources: INSEE Sirene / INPI RNE and other official registers, open licenses (Etalab 2.0, NLOD, CC-BY 4.0, OGL, CC0). Data is redistributed as published — every response carries source and disclaimer fields.

Quickstart 0 — name → SIREN, for free (no wallet, no account, no key)

Every other call takes a SIREN. Getting one from a name costs nothing:

curl -s "https://api.sirenic.eu/v1/suggestions?q=carrefour"

Up to 5 matches, each with siren, denomination, code_postal, commune, code_naf and actif. Source: the official INSEE Sirene register (open data). Drop it straight into a form's autocomplete, or let your agent resolve the name before it decides what to buy. Quota: 2,000 calls per day per IP.

It matches the start of the registered name, then whole words (agricole finds CRÉDIT AGRICOLE) — no typo tolerance and no match-confidence score. For those, GET /v1/recherche costs $0.001. Then pick your paid call below.

Related MCP server: ENTIA Entity Verification

Quickstart 1 — "Can you safely invoice or pay this company?"

One call, three answers: is the supplier still active, is its VAT number valid today, and is that IBAN a real account at an identified bank. Start with the quote — free, no wallet, no account:

curl -i "https://api.sirenic.eu/v1/facturation/dossier?siren=552032534&iban=FR1420041010050500013M02606"

Then pay the $0.03 and get the file, with a deterministic verdict:

const res = await payingFetch(
  "https://api.sirenic.eu/v1/facturation/dossier?siren=552032534&iban=FR1420041010050500013M02606",
);
const dossier = await res.json();
dossier.verdict.pret_a_facturer; // true | false
dossier.verdict.raisons;         // closed list: entreprise_cessee, tva_invalide_vies, iban_invalide…

payingFetch is the six-line x402 wrapper of Quickstart 3. Belgium and Poland: GET /v1/eu/facturation/dossier?pays=&id=&iban= (same price, same verdict). The response is Ed25519-signed and carries its provenance inside the signed bytes — examples/verify-invoice-file.ts turns one call into an audit file that still re-verifies offline years later. Why this matters in 2026: see the section below.

Quickstart 2 — see a payment quote (no wallet needed)

curl -i "https://api.sirenic.eu/v1/entreprise/552032534" -H "Accept: application/json"

You get HTTP 402 with the x402 payment requirements in the PAYMENT-REQUIRED header and a JSON body. Each quote carries two payment options at the same numeric amount — USDC (first, the default for existing clients) or EURC — with the official Circle contracts, receiving address and network.

Quickstart 3 — pay and call in ~10 lines (TypeScript)

npm install @x402/fetch @x402/core @x402/evm viem
import { privateKeyToAccount } from "viem/accounts";
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";

const account = privateKeyToAccount(process.env.TEST_WALLET_KEY as `0x${string}`);
const client = new x402Client();
registerExactEvmScheme(client, { signer: account });
const payingFetch = wrapFetchWithPayment(fetch, client);

const res = await payingFetch("https://api.sirenic.eu/v1/entreprise/552032534");
console.log(await res.json()); // paid, settled, delivered

TEST_WALLET_KEY is the private key of your client test wallet (the payer). The server never holds any key. The exact scheme uses signed authorizations, so the client pays no gas.

Quickstart 4 — plug into Claude / Cursor (MCP)

Claude Code:

claude mcp add --transport http sirenic https://api.sirenic.eu/mcp

Cursor / any MCP client (mcpServers config):

{ "mcpServers": { "sirenic": { "url": "https://api.sirenic.eu/mcp" } } }

71 tools are exposed — including TWO FREE ones: suggest_company_names (type a company name, get its SIREN — start here) and detect_company_identifiers (paste any text, get SIREN/SIRET/VAT/LEI with the right call to make). Plus verify_iban_bank. Search with 0-1 confidence scores, company profiles, KYB files, an à-la-carte company file where you pick the blocks and pay only for those, a $1 company-intelligence report, sanctions screening, AMF regulator alerts, regulatory authorisations by SIREN (EBA PSD2 register, EIOPA, ARCEP), EU financial authorisations (ESMA), industrial risk (Seveso/ICPE), lobbying register, EU procurement awards (TED), watchlists with daily checks and Ed25519-signed webhooks, financials, capital structure, sector benchmarks, failure-risk score, Belgian annual accounts…). Each tool accepts an optional x_payment parameter: without it you get the 402 quote; sign it with an x402 client and call again. Every tool declares an output schema and returns structuredContent, plus MCP annotations (read-only vs. state- changing), so a client can type-check responses instead of parsing prose. The quote you get back is the signable x402 payment requirements ({x402Version, accepts[]}) — an agent can pay entirely from MCP, without touching the REST API.

Quickstart 5 — A2A (Agent2Agent)

Sirenic is also an A2A 1.0 agent with the official crypto payment extension (a2a-x402). Discover it from the card, send a JSON data part, get the quote as task metadata, pay on the same task:

curl -s https://api.sirenic.eu/.well-known/agent-card.json -H "A2A-Version: 1.0"
npx tsx examples/a2a.ts   # quote for free; add TEST_WALLET_KEY to pay

Quickstart 6 — LangChain & CrewAI SDKs

Ready-made paying tools with a hard price cap (sdk/typescript, sdk/python):

import { sirenicTools } from "sirenic-agents";           // LangChain.js
const tools = sirenicTools({ walletKey, maxPriceUsd: 0.25 });
from sirenic_agents import SirenicClient, build_crewai_tools   # CrewAI / LangChain
tools = build_crewai_tools(SirenicClient(wallet_key=key, max_price_usd=0.25))

CrewAI can also use Sirenic's MCP server directly, no SDK: Agent(..., mcps=["https://api.sirenic.eu/mcp"]).

Verify a supplier before you pay — the 2026 e-invoicing window

Three dates make this urgent, and only one of them is French:

  • France — September 1, 2026. Every company subject to VAT must be able to RECEIVE electronic invoices; issuance is phased (large and mid-size companies September 2026, SMEs and micro-businesses September 2027). Art. 91, Loi de finances 2024.

  • Belgium — in force since January 1, 2026. Structured e-invoicing is mandatory between Belgian VAT-registered businesses.

  • Poland — no deadline, a standing tax rule. Paying more than PLN 15,000 into an account the supplier has not declared in the official White List (wykaz podatników VAT) costs the buyer the deduction and exposes it to joint liability for the VAT (art. 117ba Ordynacja podatkowa).

Five routes cover it — no account, no API key:

Route

Price

What it answers

GET /v1/facturation/dossier?siren=&iban=

$0.03

France: identity, VAT and IBAN in a single call, plus a deterministic pret_a_facturer verdict

GET /v1/eu/facturation/dossier?pays=&id=&iban=

$0.03

Belgium & Poland: registry identity, VIES, Peppol reachability (BE), White List account check (PL)

GET /v1/entreprise/{siren}/facturation-prep

$0.02

Legal name & form, computed intra-EU VAT number, SIRET establishments, indicative obligation dates

GET /v1/iban/verifier/{iban}

$0.005

IBAN structure (ISO 13616, mod 97-10) + the bank identified from official registers, BIC via the GLEIF/SWIFT mapping

GET /v1/tva/verifier/{numero}

$0.003

An EU VAT number, checked live against VIES

One free call to /v1/reperer?texte= tells your agent which of them to use on any raw text. The verdict's reasons are a closed list (entreprise_cessee, tva_invalide_vies, iban_invalide…), so an agent branches on codes instead of parsing prose — and a VIES outage yields an honest tva_non_verifiable, never a false invalid.

Every one of these responses is Ed25519-signed, and the provenance travels inside the signed bytes: which official register served each block, and its as_of date. Verify the signature, then read the provenance — that is an audit trail you can hand to an accountant. examples/verify-invoice-file.ts writes one to disk and re-verifies it from the files alone.

Two things this is not:

  • Not a check of the account holder's name. Sirenic validates the IBAN and identifies the bank from official registers; it never confirms that the account belongs to the company you are about to pay.

  • Not an accredited platform (PDP). Sirenic does not issue, transmit or route any invoice, and does not confirm a recipient's registration on the PPF or any accredited platform. It gives your agent the checks to run before the invoice exists.

Endpoints and prices (USDC or EURC per call, same amount)

A real sample response for every endpoint below is in examples/responses/ — dated, truncated to one item per array, and identical to what the OpenAPI spec and the x402 quote declare.

Endpoint

Price

What you get

GET /v1/facturation/dossier?siren=&iban=

$0.03

Verify a French supplier before payment: e-invoicing prep + live VIES + IBAN/bank check + a deterministic pret_a_facturer verdict

GET /v1/eu/facturation/dossier?pays=&id=&iban=

$0.03

Verify a Belgian or Polish supplier before payment: registry identity + VIES + Peppol reachability (BE) + White List account check (PL) + the same verdict

GET /v1/recherche?q=

$0.001

French company search by name or SIREN — company lookup over 30M companies (INSEE Sirene)

GET /v1/entreprise/{siren}

$0.005

Full French company profile: identity, officers, NAF code, VAT number

GET /v1/entreprise/{siren}/etablissements

$0.003

All establishments (SIRET)

GET /v1/entreprise/{siren}/alertes

$0.01

BODACC legal alerts (insolvency…)

GET /v1/entreprise/{siren}/finances

$0.01

Filed financials + ratios

GET /v1/entreprise/{siren}/marches-publics

$0.01

Public procurement won (French DECP)

GET /v1/entreprise/{siren}/marches-publics-ue

$0.02

EU procurement awards (TED, identifier-matched)

GET /v1/entreprise/{siren}/risques-industriels

$0.01

Industrial risk: Seveso/ICPE facilities + synthesis

GET /v1/entreprise/{siren}/lobbying

$0.01

HATVP lobbying register (org-level: budgets, subjects, clients)

GET /v1/entreprise/{siren}/changements?depuis=

$0.01

New BODACC events since a date

GET /v1/entreprise/{siren}/pi

$0.03

Industrial property (trademarks, patents, designs)

GET /v1/entreprise/{siren}/capital

$0.35

Ownership from public articles, AI-extracted

GET /v1/entreprise/{siren}/sante

$0.15

AI health summary (7-day cache)

GET /v1/score/defaillance/{siren}

$0.10

Failure-risk score (deterministic)

GET /v1/secteur/{code_naf}/benchmarks

$0.05

Sector aggregates (k-anonymised)

GET /v1/bodacc/recherche?famille=&depuis=

$0.03

Which companies, not which company — search the BODACC gazette by family (insolvency proceedings, accounts filings, deregistrations, sales…), date window and optionally a French department. Up to 100 announcements, newest first, each with SIREN, court and town. Built for scheduled monitoring. Sole traders are excluded (their name is personal data) and counted; the judgment is served STRUCTURED because its free text names court-appointed administrators with their address

GET /v1/kyb/{siren}

$0.15

Full KYB file + sanctions screening

GET /v1/entreprise/{siren}/dossier?blocs=

$0.005 + per block, max $0.35

One call, you pick the blocks — identity base plus any of etablissements, alertes_bodacc, finances, marches_publics, marches_publics_ue, lobbying, risques_industriels, agrements, pi, documents, facturation_prep, score. Each block costs what its own endpoint costs, so grouping never costs more than calling separately. A block that cannot be served is named with a reason (aucune_donnee, non_diffusible, panne_amont); if every requested block is down you get a 503 and pay nothing

GET /v1/kyb/batch?sirens=

$0.105/co

Batch KYB (2–100 companies)

GET /v1/sanctions/check?name=

$0.02

6 official sanctions lists (UN, EU, OFAC, UK, FR, Swiss SECO), scored

GET /v1/regulateurs/fr/alertes?nom=|siren=

$0.01

AMF blacklists + PSAN/SGP registers (scam check, crypto providers)

GET /v1/eu/agrements?q=

$0.01

EU financial authorisations (ESMA, all EU/EEA, by name or LEI)

GET /v1/entreprise/{siren}/agrements

$0.02

Regulatory licences by SIREN: payment institution, e-money, account information, payment agent or exempt entity (EBA PSD2 register, daily), insurer (EIOPA), telecom operator (ARCEP) — with licensed services, EEA passporting and withdrawals

GET /v1/dirigeant/recherche?nom=

$0.02

Reverse director search

GET /v1/prospection?...

$0.02/page

Multi-criteria prospecting

GET /v1/rapport/{siren}

$0.50

PDF report

GET /v1/intelligence/{siren}

$1.00

Intelligence report: every block cross-referenced — executive summary, officers´ network, filings, trends, closed-list signals, rule-based verdict

GET /v1/entreprise/{siren}/documents

$0.02

List filed documents (INPI)

GET /v1/documents/{type}/{id}

$0.10

Download a filed document (PDF)

GET /v1/tva/verifier/{numero}

$0.003

EU VAT validation (VIES)

GET /v1/iban/verifier/{iban}

$0.005

IBAN check + bank identification (FR/BE/AT/NL, incl. LEI) — not a Verification of Payee

GET /v1/surveillance/creer?cibles=&duree=

$0.05 / $0.135 / $0.50 per target (30 / 90 / 365d)

Watchlist: daily checks on companies & directors, signed webhooks + e-mail digests, expiry warning at D-7

GET /v1/surveillance/{token}/renouveler?cibles=&duree=

same per-target prices

Renew a watchlist for any duration, not just the original one (grace: 7 days after expiry; no refund, no pro rata)

GET /v1/eu/recherche?q=

$0.003

Search European registers (BE, NO, EE, LV local; CZ, SK, FI, PL, CH live) + GLEIF

GET /v1/eu/entreprise/{pays}/{id}

$0.01

Unified European profile — 12 countries: BE (KBO, NACEBEL + establishments), CH (Zefix), NO (Brønnøysund), CZ (ARES), SK (RPO), FI (PRH), PL (KRS), EE, LV… Each live country also has its own dedicated path (e.g. /v1/eu/entreprise/CH/CHE-107.480.920)

GET /v1/eu/entreprise/BE/{id}/comptes

$0.01

Belgian filings list (official NBB Central Balance Sheet Office)

GET /v1/eu/entreprise/BE/{id}/comptes/{ref}

$0.15

One Belgian annual-account deposit (JSON since 2022, PDF before)

GET /v1/eu/entreprise/BE/{id}/transactions-dirigeants

$0.02

Insider dealing at a Belgian listed company (FSMA, Art. 19 MAR): are its managers buying or selling? Issuer-level aggregate — no individual is ever named

Free: GET / (landing), GET /v1/suggestions?q= (company-name autocomplete → SIREN, up to 5 matches, 2,000 calls/day/IP), GET /preview/entreprise/55203253400646 (sample response), GET /v1/reperer?texte= (detect SIREN/SIRET/VAT/LEI in any text, with the suggested paid call and its price), GET /openapi.json, GET /llms.txt, GET /healthz; watchlist status GET /v1/surveillance/{token} and stop …/{token}/arreter (the token returned at creation is the capability — no account).

In this repo

  • examples/smoke-bodacc-2026-08-11.ts — buy the BODACC criteria search for real (3 purchases, $0.09) and check that no court-appointed administrator is ever named in the response.

  • examples/smoke-dossier-2026-08-11.ts — buy the à-la-carte company file for real (4 purchases, ~$0.32) and check the quote matches the blocks asked for.

  • examples/suggestions.ts — the free name → SIREN autocomplete, and the checks that prove it stays free (no wallet needed: npx tsx examples/suggestions.ts).

  • examples/quote.sh — inspect a 402 quote with curl.

  • examples/pay-and-call.ts — pay one request end to end.

  • examples/verify-invoice-file.ts — verify a supplier before you pay, and keep the proof (~$0.03): buy the invoicing file, verify its signature offline, read the pret_a_facturer verdict and its provenance only once authenticated, then write a timestamped audit folder (raw bytes, signature, public key, LISEZ-MOI.md) and re-verify it from those files alone.

  • examples/verify-signature.ts — the full audit loop: verify the Ed25519 signature of a paid response offline, then read its per-block provenance (official register + as_of date) from inside the signed bytes (~$0.02).

  • examples/responses/ — what you actually get back: one real, dated sample per paid endpoint, truncated to one item per array. The same samples are served by the API itself, in the OpenAPI spec, in the x402 payment quote and in llms.txt — so the contract you read is the contract you get.

  • examples/smoke-surveillance-durees-2026-08-11.ts — buy a 90-day and a 365-day watchlist for real (~$0.685), renew one at a different duration, and check that an out-of-range duration and an over-long renewal are both refused without a debit.

  • examples/smoke-test.ts — pay and call every paid endpoint once (~$7.40 total, USDC and/or EURC; the watchlist it creates is stopped again for free).

  • examples/agent-demo.ts — a small autonomous agent that searches, pays and reads profiles.

  • examples/mcp-setup.md — MCP configuration for Claude, Cursor and generic clients.

  • examples/a2a.ts — call Sirenic as an A2A agent (quote for free, then pay on the same task via the a2a-x402 extension).

  • tutorial-kyb-agent/ — Build a KYB agent in 20 lines.

  • n8n community node — moved to its own repository (n8n verification requires credentials/ at the repo root): https://github.com/sirenic-eu/n8n-nodes-sirenic — npm i n8n-nodes-sirenic

Test wallet setup

  1. Create a throwaway wallet (e.g. in MetaMask) and export its private key.

  2. Fund it with a couple of dollars of USDC on Base (any exchange can withdraw to Base network).

  3. export TEST_WALLET_KEY=0x... — never commit it anywhere.

Sirenic settles on Base mainnet.

Disclaimer

Sirenic redistributes official open data as published (Etalab 2.0 and other open licenses). It does not guarantee accuracy or completeness, and outputs (including sanctions screening and AI summaries) are decision aids — not legal, financial or compliance advice.

License: MIT.

A
license - permissive license
-
quality - not tested
A
maintenance

Maintenance

–Maintainers
–Response time
–Release cycle
–Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    B
    quality
    F
    maintenance
    Enables interaction with the French business search API from data.gouv.fr, allowing users to search for French companies by text or geographical criteria and access essential business information.
    2
    10
    20
    MIT
  • F
    license
    -
    quality
    B
    maintenance
    Enables querying French business registers (RNE, BODACC) and trademarks via INPI APIs. Provides tools to search companies, retrieve legal status, directors, beneficial owners, collective procedures, and trademark details.
  • F
    license
    -
    quality
    B
    maintenance
    Keyless, pay-per-call compliance & regulated-data tools for AI agents: OFAC wallet + sanctions/PEP + KYB screening, SEC filings, FRED economics, FDA recalls, federal awards, and continuous monitoring (watch a wallet/company/brand for status changes). USDC via x402 on Base/Solana, no API key, no signup.

View all related MCP servers

Related MCP Connectors

  • European business verification for AI agents: registry, VAT, sanctions, IBAN. Pay-per-call x402.

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

  • US public-records intelligence for AI agents — companies, SEC, courts, spending, licenses.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sirenic-eu/sirenic-examples'

If you have feedback or need assistance with the MCP directory API, please join our Discord server