# French Company Data (SIREN) — x402 > Pay-per-call JSON API on official French company data (INSEE Sirene / RNE, BODACC). Built for AI agents: no API key, no signup, payment per request in USDC on Base via the x402 protocol (v2). How to pay: call an endpoint without payment and you get HTTP 402 with a PAYMENT-REQUIRED header. Sign it with an x402 client and replay the same request with a PAYMENT-SIGNATURE header. Invalid parameters (400), unknown company or no match (404) and upstream outages (503) are never charged. ## Endpoints - [Search companies by name](https://siren.vigilix.fr/v1/entreprises/recherche?q=boulangerie&code_postal=69001): GET, $0.002. Params: q (required, 3+ chars), code_postal (optional, 5 digits), limit (1-10, default 5). Returns up to 10 matches with SIREN, name, active status, NAF code, city and a link to the full profile. - [Company profile by SIREN](https://siren.vigilix.fr/v1/entreprise?siren=552081317): GET, $0.005. Param: siren (9 digits). Legal name, status, creation date, NAF code, HQ address with GPS, directors, headcount, latest revenue and net income, labels. - [Legal notices check (BODACC) by SIREN](https://siren.vigilix.fr/v1/entreprise/bodacc?siren=552081317): GET, $0.005. Params: siren (9 digits), limit (1-20, default 10). Insolvency proceedings in progress (safeguard, receivership, liquidation), latest proceeding, struck-off flag and latest official notices with links. A company with no notice is a paid 200 (nothing to report). ## French address geocoding & risk report Official open data: BAN (Base Adresse Nationale) via IGN Géoplateforme, and Géorisques (BRGM / French Ministry of Ecology), Licence Ouverte 2.0. Coverage: mainland France, Corsica and overseas DROM. Not charged when no result is found; invalid input gets a free 400 (no 402). Calling without parameters returns the 402 with prices and schemas. - [Geocode a French address](https://siren.vigilix.fr/v1/adresse/geocode?q=10+rue+de+la+Paix+Paris): GET, $0.003. Params: q (required, 3-200 chars), postcode, citycode (INSEE), limit (1-5). Returns normalized address, lat/lon, INSEE code, score and confidence (capped to medium with housenumber_found=false when the house number was not found). - [Reverse geocoding](https://siren.vigilix.fr/v1/adresse/reverse?lat=48.86987&lon=2.33123): GET, $0.003. Params: lat, lon (required), limit (1-5). Nearest addresses with distance_m. - [Property risk report](https://siren.vigilix.fr/v1/adresse/risques?q=Place+de+la+Mairie+Saint-Pierre-de-Chartreuse): GET, $0.02. Params: q (or lat + lon). Seismic zone, radon, clay shrink-swell, flood risk, ground movement and cavities, CatNat decrees, ICPE / Seveso sites, polluted sites, rule-based French summary and ERRIAL disclaimer. former_industrial_sites_within_500m (CASIAS) = past activities, not proven pollution. partial: true when a Géorisques source failed (still charged). - [Upstream status](https://siren.vigilix.fr/v1/adresse/health): GET, free. ## MCP server - [vigilix-mcp on npm](https://www.npmjs.com/package/vigilix-mcp): local MCP server (stdio) exposing the 6 paid endpoints as MCP tools, paying each call via x402 from a dedicated wallet (EVM_PRIVATE_KEY; discovery mode without it). Install: `npx -y vigilix-mcp`. Source: https://github.com/zekinht0/vigilix-mcp. MCP Registry: io.github.zekinht0/vigilix-mcp. ## Discovery - [OpenAPI 3.1 spec](https://siren.vigilix.fr/openapi.json): parameters, examples and prices (x-payment-info). - [x402 resources](https://siren.vigilix.fr/.well-known/x402): list of paid resources. - [Agent manifest](https://siren.vigilix.fr/.well-known/agent.json): open-402 agent.json with intents and prices.