io.github.Zansuken/french-due-diligence

French Due Diligence

Keyless French company checks (Sirene, BODACC, VIES, sanctions), DPE compliance, product recalls

Endpointhttps://mcp-fr.opendata-apis.workers.dev/mcp (streamable-http)
Registry version0.5.0
Now11 tools · grade A (97) · pin ts_edb2a865f4971a4cd638db1550415b54 · protocol 2025-06-18
First / last listed2026-11-01 01:10 UTC / 2026-11-01 01:10 UTC
Grade over time2026-11-01: A (97), 11 tools

Is this your server? Own a server? ToolFit hosted watch re-checks it every 24 h ($0.25 per 30 days) or 6 h ($0.60) and sends you an HMAC-signed webhook when its tools or grade change: POST https://api.youraitools.co/toolfit/v1/watch. To opt out, see About & opt-out.

Timeline

First listing · 2026-11-01 01:10 UTC
11 tools, grade A (97)

Tools: validate_identifier check_vat search_companies get_company screen_sanctions get_public_contracts get_establishment check_rental_compliance get_dpe check_product_recall list_recent_recalls

Current tools (11)

validate_identifierChecks a French SIREN (9 digits), SIRET (14 digits) or intra-EU VAT number (FR + 11 characters): format, checksum, and whether the registered company or establishment exists. Use it first when an identifier was typed by a person.
params: id*
check_vatChecks live in VIES, the European Commission's VAT register, whether a French VAT number (or the VAT number of a SIREN or SIRET) is valid, with the name and address declared for VAT, crossed with the French registry: company active, insolvency proceeding, and a name_matches consistency signal between the VIES name and the registered name (not a proof of ownership). To confirm the number belongs to
params: number*, requester_vat
search_companiesFinds French companies by name, optionally narrowed by department (e.g. 75, 2A, 971), postal code or NAF activity code (e.g. 10.71C). Returns up to 10 companies with their SIREN. Use get_company next for the full profile.
params: name, department, postal_code, activity_code
get_companyProfile of a French company by SIREN: legal name and form, activity, active or ceased, head office, officers (name and role), whether an insolvency proceeding is ongoing (in_insolvency) and its latest BODACC court announcements. Use it to answer 'can I do business with this company?'.
params: siren*
screen_sanctionsScreens a French company and its officers (people, with their month of birth, and companies) against the French national asset-freeze register (registre national des gels: UN, EU and French measures). result is clear, possible_match or strong_match; each match gives the register entry, its legal bases and its official page. A match is a lead to check on that page, not a decision; a different date
params: number*
get_public_contractsPublic contracts a French company won (DECP, French public procurement data): their count, the summed maximum amounts (leaving out amounts the source flags as suspect or aberrant, given apart), first and latest notification, then the contracts newest first, 20 per page, with buyer, object, maximum amount, CPV code, procedure, duration and place; plus the company's name, whether it is active and wh
params: siren*, from, to, page
get_establishmentOne establishment of a French company by SIRET: address, NAF activity, open or closed, head office or not. Use it to check a supplier's or invoice's address.
params: siret*
check_rental_complianceFor a French postal address, returns each dwelling's energy performance certificate (DPE) and its rental verdict under the Climate and Resilience law: rentable now or not, rent frozen or not, ban date (G 2025, F 2028, E 2034), DPE validity, and the label estimated under current electricity rules. Narrow with floor, surface or address complement. Information, not legal advice.
params: address*, floor, surface, complement
get_dpeThe dwelling of a French DPE (energy performance certificate) by its 13-character number (e.g. 2569E0160739C), with the same rental verdict as check_rental_compliance. Replaced DPEs are not available: the ADEME dataset drops them.
params: dpe_number*
check_product_recallChecks whether a product was recalled in France (RappelConso) or the EU (Safety Gate, since 2022) by its barcode number (GTIN/EAN-13, UPC-A, EAN-8). recalled true lists each recall with its date, reason, risks, measures and the lots concerned (all_lots false means only those lots); compare the lots with the product at hand. recalled false comes with checked_at and each source's freshness. If a sou
params: gtin*
list_recent_recallsProduct recalls published since a date in France (RappelConso) and the EU (Safety Gate), newest first, 50 per page; follow next_cursor for more. Narrow by source, category or the notifying country. A French Safety Gate alert merged into its RappelConso fiche is not listed twice.
params: since*, source, category, country, cursor

Entries describe changes in tool definitions. They are not statements about a server, its quality or its author. The grade measures how the tool definitions fit model providers (token cost, schema compatibility, confusable names) as scored by the ToolFit engine at the time of the listing. JSON: append .json. Opt-out: how or hello@youraitools.co.