CORPORATE DUE DILIGENCE & PUBLIC PROCUREMENT • REAL GOVERNMENT DATA
Know who you're dealing with before you sign
Distil turns official government registries — UK Companies House, US SEC, France INPI, Spain PLACSP, EU TED, and global sanctions lists — into answers your team or your AI agent can actually use: verified, current, and under 500 tokens instead of hours of manual lookups.
Procurement & Vendor RiskVet a new supplier's ownership, standing, and sanctions exposure before you sign.
Compliance & LegalScreen counterparties against OFAC, UK, EU, and UN sanctions lists in one call.
Eng & AI teamsGive your agents a due-diligence tool that returns real data, not a scrape.
See it in action
Three real jobs, done in seconds
Every example below is a real, live call against Distil's production data — not a mockup. Pick the scenario closest to your own work.
🔎 Vetting a new UK supplier
Real example: Tesco PLC (company number 00445790), looked up live against Companies House and Distil's sanctions moat.
3 calls
~572 tokens total
1
search_uk_companies("Tesco PLC")
Resolves to company 00445790 — active, incorporated 1947, plus its former registered names.
121 tokens
2
get_uk_corporate_network("00445790")
11 active officers, 63 resigned across the company's history HIGH_RESIGNATION_RATIO flagged
134 tokens
3
get_sanctions_and_pep_screening("Tesco PLC")
Screened against US OFAC, the UK Sanctions List, EU Financial Sanctions Files, and the UN Consolidated List — no match.
317 tokens
Without Distil: the same board history alone means opening Companies House's officer endpoint, which returns full nested address, date-of-birth, and citizenship data for every historical appointment — for a company with 74 total officer records, that's raw JSON running into the tens of thousands of tokens before your agent has even started reading it, plus four separate sanctions portals checked by hand.
🌍 Mapping a cross-border structure
Real example: Ferrovial SE, the Spanish infrastructure group that redomiciled to a US-listed structure — traced automatically, not by hand.
2 calls
~254 tokens total
1
get_cross_border_entity_graph("FERROVIAL SE")
Finds the real link: FERROVIAL SE (Spain) → Ferrovial N.V. (US, CIK 0001468522), tagged PUBLIC_PARENT at PROBABLE confidence.
135 tokens
2
get_us_sec_filing("0001468522")
Pulls the real US-side SEC filing for the linked entity — same jurisdiction-hopping research, one more call.
119 tokens
Honest by design: cross-border links are derived by matching real tender-award and registry data across jurisdictions, so every match ships with a confidence label (HIGH or PROBABLE) instead of pretending an algorithmic match is a certainty — this one is correctly PROBABLE, not overstated.
📑 Deciding whether — and how — to bid
Real example: an open EU cybersecurity tender in Ireland, priced against real market data from Distil's procurement moat.
Real market context from Distil's procurement moat: 2,957 tenders tracked, and a genuine 20.3% median discount to budget computed from 26 real awarded contract pairs — not a guess, and not thrown off by the rare framework-agreement contract whose numbers work differently.
281 tokens
Without Distil: pricing intelligence like this doesn't exist anywhere else in structured form — it means manually pulling award notices off government portals one at a time and building your own spreadsheet of what actually won, at what price, against what budget.
Why trust the data
Built to never quietly guess
Every fact above came from a live call against real production data while we wrote this page. That's the standard the whole product is held to.
🛰️
Real government sources, not scrapes of scrapes
Every record traces back to an official registry — Companies House, SEC EDGAR, INPI/SIRENE, PLACSP, TED, OFAC, and equivalents — refreshed on a real ingestion schedule, not fabricated as a fallback when a lookup comes up empty.
🎛️
Pay for freshness, not just volume
Every call accepts an optional forceFresh flag that bypasses the cache and pulls straight from the primary registry, at a transparent surcharge printed in the response — never buried in a bill. If a live fetch genuinely can't be honored, you're told and charged the standard rate instead.
📊
Confidence-scored, not overstated
Algorithmically-derived findings — cross-border links, risk scores, sanctions matches — ship with an honest confidence label. A probable match is labeled PROBABLE, not silently rounded up to certain.
For developers & AI agents
Drop straight into your stack
Same data, same guarantees — connect an agent directly via MCP or plain HTTP JSON-RPC.
⚡ Fast Agent Setup (Cursor & Claude Desktop)
Copy & paste into your claude_desktop_config.json or Cursor MCP settings:
A team plan replaces the manual-lookup time shown above across every query your team runs. An autonomous agent pays per call, in fractions of a cent, with no subscription at all.
Deterministic, token-bounded data with zero context waste. Choose the model that fits your architecture: