Legal Entity Resolver

v1.1.0$0.007/resultEnrichment

Company domain in, the registered legal entity out: legal name, company number, jurisdiction, status, LEI and VAT number. Only returns a match when the legal names are identical after normalization, so an unresolved domain comes back null instead of a confidently wrong company number.

Install

bash
npx @mambalabsdev/mcp-legal-entity-resolver

Use Cases

  • Who buys it. Built for anyone who has a domain and needs the company behind it: KYB and onboarding, contracting and invoicing, sanctions screening, or telling apart similarly named companies before a deal.
  • Clay enrichment column. Turn a domain into a registered company number and VAT ID for KYB, contracting, and invoicing workflows.

Features

  • Legal name and company number, as the register spells them
  • Jurisdiction and status, active or dissolved, straight from the register
  • LEI, the 20 character global identifier
  • VAT number, validated live against EU VIES
  • A full audit trail of what was rejected and why

Input

domainstringrequired

One company domain, for example monzo.com

legal_name_hintstringoptional

Skips the page fetch and queries the registers with this name. Default: empty.

jurisdiction_hintstringoptional

ISO-2 code. Narrows which registers are asked. Default: empty.

match_strictnessstringoptional

exact or fuzzy. See the warning below. Default: exact.

validate_vatbooleanoptional

Checks any VAT number found against EU VIES. Default: true.

skipCachestringoptional

true forces a fresh lookup. Default: false.

Output schema

json
{
  "domain": "monzo.com",
  "legal_name": "MONZO BANK LIMITED",
  "company_number": "09446231",
  "company_number_scheme": "GB-COH",
  "jurisdiction": "GB",
  "entity_status": "active",
  "entity_type": "ltd",
  "lei": "213800PLUYXGZ8LU7T61",
  "lei_status": "ISSUED",
  "vat_number": null,
  "vat_valid": null,
  "vat_registered_name": null,
  "register_source": "companies_house,gleif",
  "registers_queried": "companies_house,gleif,sec_edgar",
  "match_method": "exact_normalized",
  "match_confidence": 100,
  "legal_name_source": "legal_page",
  "rejected_candidates": "[{\"name\":\"MONZO BANK HOLDING GROUP LIMITED\",\"register\":\"gleif\",\"reason\":\"name mismatch under exact normalized matching\"}]",
  "pages_attempted": 9,
  "pages_reached": 4,
  "fetch_status": "ok",
  "fetch_error": null,
  "run_date": "2026-08-10T09:12:04.118Z"
}

Pricing

$0.007per result

Pay-per-event billing on the Apify platform. You are charged only when the actor returns a result. No subscription, no seat license.

Free-tier Apify accounts include monthly free compute. Upgrade for higher concurrency and volume.

Available on