Resolve a messy company name to something a machine can use.
Almost every failed enrichment is a failed company match first. “Acme”, “Acme Inc.”, “ACME Corporation” and a misspelled domain are four inputs that must resolve to one record before anything else can work.
It is also the cheapest step, which is why doing it first saves money on every step after it.
Strip legal suffixes, normalise spelling and resolve to a primary domain. This alone fixes a surprising share of lookups that were failing for no other reason.
Match on domain and normalised name rather than exact string equality — the reason the same account appears three times in most CRMs.
Industry, size band, location and technology signals, each carrying the provider that supplied it.
ProvidersCompany data is the most commoditised of these fields, so this is usually the step where a cheaper provider is entirely sufficient.
Every one of these is a genuine constraint of the underlying data, not a gap we intend to close later. Anyone claiming otherwise is guessing on your behalf.
Honest limits
The playground shows what this looks like as an agent tool call and as plain HTTP — including what a miss and a refusal return. Illustrative, not live.