
Security News
Ruby's Bundler 4.0.18 Extends Cooldown to bundle lock and bundle cache
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.
companieswise
Advanced tools
Verified UK company lookup & validation for AI agents — Companies House data, snapshot or live.
Verified UK company lookup & number validation for AI agents — official Companies House data, not guesses.
Verified, trustworthy data tools for AI agents. "Qiniso" means "truth" in Zulu.
Website · npm · MCP Registry
Ask an LLM "what's the registered name and status of company 00445790?" and it will answer confidently — and usually wrongly: invented names, the wrong status, a fabricated incorporation date. Company records live in the Companies House register, not a model's weights. companieswise looks the number up in the official Companies House snapshot and returns the real registered details — or an honest "not found" instead of a guess.
{ "mcpServers": { "companieswise": { "command": "npx", "args": ["-y", "companieswise"] } } }
Then load the real data once (the package ships with only a small sample):
npx -p companieswise companieswise-update
This downloads the latest monthly Companies House snapshot (~tens of MB) to a local cache. Re-run it whenever you want to refresh; a GitHub Action rebuilds the snapshot monthly, so companieswise-update always fetches the current month. Until you run it, validate_company_number works fully and lookup_company/search_company clearly say they're on the sample.
By default companieswise serves the monthly snapshot (offline, no key). If you set a free Companies House API key, it switches to live queries against the official Companies House API instead — real-time register status, including dissolved companies, on your own key (no shared rate limit):
{
"mcpServers": {
"companieswise": {
"command": "npx",
"args": ["-y", "companieswise"],
"env": { "COMPANIESWISE_CH_API_KEY": "your-companies-house-api-key" }
}
}
}
lookup_company and search_company use the live API when the key is set (results tagged "dataset": "live") and fall back to the snapshot when it isn't ("dataset": "snapshot"), so it's always clear which you're getting. validate_company_number is offline either way. The key is sent only to the official Companies House API. CH_API_KEY is accepted as an alias.
npm i companieswise
import { lookupCompany, validateCompanyNumber, searchCompany } from "companieswise";
validateCompanyNumber("SC123456"); // { valid: true, prefix: "SC", meaning: "Company registered in Scotland" }
validateCompanyNumber("6").number; // "00000006" — normalises/zero-pads
lookupCompany("00000006"); // official name, status, type, incorporation date, postcode, SIC — or found:false
searchCompany("greggs"); // companies whose registered name contains your words
A well-formed number that isn't in the snapshot returns found: false with a clear note — it never invents a company.
| Tool | What it answers |
|---|---|
| lookup_company | A company's official registered details by number (name, status, type, incorporation date, registered postcode, primary SIC) |
| validate_company_number | Is this a well-formed UK company number, and what does its prefix denote? (format only — there is no check digit) |
| search_company | Reverse lookup — find a company's number from its name |
The data is the Companies House Free Company Data Product (UK-wide, live register), published under the Open Government Licence v3.0. Because the real dataset is ~5.6M companies — far too large to bundle into an npm package — the design splits code from data:
.github/workflows/refresh-data.yml) that downloads the official snapshot, compiles a compact artifact, and publishes it as a GitHub Release asset.companieswise-update downloads that artifact into a local cache; every response reports its datasetVersion (the snapshot date).No API key, no rate limit, no per-request cost — lookups run locally against the cached snapshot. See ARCHITECTURE.md for why, and the hosted/real-time path.
This tool runs locally on your machine and is built not to collect, store, or transmit your data — no analytics, no telemetry, no account. By default it uses bundled/cached data offline; only if you set a Companies House API key does it send your lookup and key directly to the official Companies House API (never to Qiniso). Full policy: https://qinisolabs.github.io/privacy.html.
Apache-2.0. Company data © Crown copyright, Companies House, Open Government Licence v3.0; see NOTICE.
FAQs
Verified UK company lookup & validation for AI agents — Companies House data, snapshot or live.
The npm package companieswise receives a total of 25 weekly downloads. As such, companieswise popularity was classified as not popular.
We found that companieswise demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.

Security News
During a UK cyber test, a Mythos 5 agent used sockpuppets, social engineering, and prompt injection to try to get a maintainer to merge malware.

Company News
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.