insee, inpi, dila and fr open data
entreprises françaises.
accès unifié aux données d'entreprise françaises : recherche multicritère (api recherche entreprises), fiche agrégée fr_get (identité + dernier bilan inpi + événements bodacc en un appel), dirigeants, bilans complets, marchés publics boamp, accords collectifs, conventions collectives, index égapro, codes consolidés légifrance et jurisprudence (6 fonds).
setup & usage
the identity, search, financial statement and event tools (fr_search, fr_get, fr_bilans, fr_events…) run on open data, without a key.
a key is only required for insee sirene calls (fr_siret, fr_headquarters — siret/head office from the official source).
sirene connector)fr_stock_*, local parquet) do not need a keyquery the identity, finances, officers, legal events and tenders of a french company.
fr_search(query=…, naf=…, departement=…) — multi-criteria search (sector, area, headcount, revenue)fr_get(siren) — full aggregated profile: identity + 7 ratios from the latest inpi financial statement + bodacc eventsfr_bilans(siren) then fr_bilan(siren, date_cloture) — filing history and detailed financial statement (revenue, EBITDA, debt…)fr_directors(siren), fr_events(siren), fr_tenders_search(query=…) — officers, bodacc events, boamp tendersfr_tenders_search(op="awarded", query= | titulaire_siret= | departement=) — the awarded contracts (decp): who won, for how much, notified when. the outcome, where op="notices" (the default, boamp) only gives the notice — hence the real competition in a territory. a parameter specific to the other op is refused, not ignored. two regimes read, split at notification: the 2022 order since 2024, the 2019 order before — each contract carries its arrete. ⚠️ since 2024 the source publishes no name (buyer, place, holder), and before 2024 never the main holder's: resolve them by their siret with fr_siret.fr_accords_search(siren=…), fr_egapro_declaration(siren), fr_avis_sirene(siret) — company agreements, gender equality index, insee situation notice (pdf)the state's reference database (data.aides-entreprises.fr, ~2,400 active aids, updated daily) filtered for a company or a project.
fr_aides_search(insee=…, effectif=…, nature=…, echeance_avant=…) — deterministic shortlist: territory (municipality → region → national/eu), headcount bracket, type of aid (subsidy, loan, guarantee…), deadline of the calls for projectsfr_aides_get(id) — full record: purpose, conditions, amounts, funders, contacts, official sourcethe full sirene parquet (insee, monthly vintage) for one-off lookups and batch enrichment of thousands of sirens.
fr_stock_enrich(sirens=[…]) — head offices of a list of sirens in a single scan (bulk)fr_stock_siege(siren) / fr_stock_etablissements(siren) — head office or all the establishments of a companyfr_stock_search(naf=…, enseigne=…, departement=…) — enumerates all sites (e.g. all the "intermarché" stores of a département)this connector accepts multiple comptes: each stored credential becomes a named account (one name per compte), at your level, your team's or your org's.
_account="<name>" on the tool; list them: oto_identity(op='list', connector='sirene') (scope='org' or scope='group' for the org's or team's)oto_identity(op='set', connector='sirene', identity_id='<name>'); rename: op='rename' with new_name_account) and adding upoutils
utilisation
claude plugin marketplace add otomata-tech/oto-plugin — mcp + skill configurés.pipx install oto-cli puis oto fr …