nvNeuralVerge
Corporate registry

UK Company Search (Companies House) API and MCP — Find Companies by Name

Send a name and get back matching UK companies: company number, name, status, registered address, incorporation date and a link to the record on Companies House. Set max_items to decide how many come back.

You send
a company name
You get back
matching UK companies with company number, status, registered address, incorporation date and a link to each record
Coverage
United Kingdom — entities on Companies House.
Price
1 point per returned record — $1 per 1,000
Billed per record actually returned, capped by max_items. A request that returns nothing costs nothing.
Comparison

Ways to get this data

Three approaches teams use today, and where each one runs into trouble.

ApproachWhat it takesCostTrade-off
Companies House directlyType the name into Companies House and read the resultsUsually free, sometimes per-documentA different interface, language and data shape for every country you add
Collecting it yourselfBuild and host a crawler per register, then keep each one aliveInfrastructure and maintenanceRegisters change their pages without warning, and nobody is on the hook when yours breaks
NeuralVergeOne request, the same shape as every other source in the catalog$1 per 1,000, misses not billedCovers United Kingdom — other countries are separate sources with the same request format
Response

What you get back

Every field in the example response below.

FieldTypeDescription
session_idstringId of this run, for tracing.
kindstringSource type of the response.
keywordstringThe search text you sent.
max_itemsnumberThe cap you set on returned records.
start_pagenumberResults page the search started from.
partialbooleanWhether the result set is incomplete.
humanstringReadable summary with the number of results and matches found.
total_pointsnumberPoints charged: one per returned record.
machine.total_itemsnumberRecords returned in this batch.
machine.first_itemobjectThe first returned record, same shape as one entry of items.
machine.items[]arrayThe returned records.
machine.total_foundnumberMatches the register reports for the search; null when it does not report one.
machine.page_countnumberResult pages read.
machine.blockedbooleanWhether the register refused the request.
machine.proxy_traffic_bytesnumberSize of the data transferred for the run, in bytes.
machine.items[].registration_numberstringCompany number.
machine.items[].namestringCompany name.
machine.items[].statusstringCompany status, e.g. Active.
machine.items[].addressstringRegistered office address.
machine.items[].urlstringLink to the company page on the register.
machine.items[].company_typenullNull in the sample; the register listing does not give it here. Use the company lookup for company type.
machine.items[].incorporation_datestringDate of incorporation (YYYY-MM-DD).
machine.items[].previous_name_matchstringThe earlier company name that matched your keyword, when the match came from a previous name.
Response

Example response

A real response, as returned.

{
  "session_id": "11111111-1111-1111-1111-111111111111",
  "kind": "uk_companies_search",
  "keyword": "tesco",
  "max_items": 2,
  "start_page": 1,
  "partial": false,
  "human": "# United Kingdom — Companies House — company search\n\n- **Keyword:** tesco\n- **Results:** 2\n- **Proxy traffic:** 52.8 KB",
  "machine": {
    "total_items": 2,
    "first_item": {
      "registration_number": "00445790",
      "name": "TESCO PLC",
      "status": "Active",
      "address": "Tesco House, Shire Park, Kestrel Way, Welwyn Garden City, United Kingdom, AL7 1GA",
      "url": "https://find-and-update.company-information.service.gov.uk/company/00445790",
      "company_type": null,
      "incorporation_date": "1947-11-27",
      "previous_name_match": "TESCO STORES (HOLDINGS) PUBLIC LIMITED COMPANY"
    },
    "items": [
      {
        "registration_number": "00445790",
        "name": "TESCO PLC",
        "status": "Active",
        "address": "Tesco House, Shire Park, Kestrel Way, Welwyn Garden City, United Kingdom, AL7 1GA",
        "url": "https://find-and-update.company-information.service.gov.uk/company/00445790",
        "company_type": null,
        "incorporation_date": "1947-11-27",
        "previous_name_match": "TESCO STORES (HOLDINGS) PUBLIC LIMITED COMPANY"
      },
      {
        "registration_number": "09384423",
        "name": "KFORD TYRES (GORNAL) LTD",
        "status": "Active",
        "address": "2 Dawley Brook Road, Kingswinford, England, DY6 7BD",
        "url": "https://find-and-update.company-information.service.gov.uk/company/09384423",
        "company_type": null,
        "incorporation_date": "2015-01-12",
        "previous_name_match": "TESCO TYRES LTD"
      }
    ],
    "total_found": null,
    "page_count": 1,
    "blocked": false,
    "proxy_traffic_bytes": 54087
  },
  "total_points": 2
}
Integration

How to run it

The same lookup works from the app, the API, or as a tool an agent can call mid-task.

Results come back in the same envelope as every other source: a session id, a readable summary, the structured result and the points charged.

curl -X POST https://api.neuralverge.ai/functions/v1/run-uk-companies-search \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"keyword":"tesco","max_items":2}'
Use cases

What teams use it for

Where this field shows up in an actual workflow.

Resolve a name to a company number

Turn a company name from an invoice, CRM row or news item into the registration number you need for a profile lookup.

Find look-alike and former names

See which companies carry or once carried a name, via previous_name_match.

Sector or brand sweeps

Run a keyword and collect every UK company with that word in its name, with status and address.

Screening lists

Check a list of counterparty names against the register and flag the ones that are not Active.

Coverage & limits

Coverage, freshness and limits

What this source covers, how fresh it is, and where it stops.

Coverage

United Kingdom — entities on Companies House.

Freshness

Read at request time, so the answer reflects the register as it stands when you ask.

Handling

Companies House is a public register. Every response carries the source URL it was read from and a session id you can trace.

What it will not do
  • —total_found is null in the sample, so the register may not report how many matches exist; do not rely on it for paging.
  • —company_type is null in search results. Use Companies House company for company type, SIC codes and officers.
  • —Results are matches on name only, so common words return unrelated companies.
FAQ

Questions, answered

Yes. When a result matched on an earlier name, previous_name_match holds that name.

Related

Related sources

Try united kingdom company search on your own data

One request format across every source in the catalog.

Get started