mambalabsdev/mcp-legal-entity-resolver
FreeNot checkedResolves a company domain to its registered legal entity: legal name, company number, jurisdiction, status, LEI and VAT number.
About
Resolves a company domain to its registered legal entity: legal name, company number, jurisdiction, status, LEI and VAT number.
README
Smithery Glama score MCP Registry npm version npm downloads license mcpservers.org
MCP server for the Mamba Labs Legal Entity Resolver actor on Apify.
Give it a company domain and it returns the registered legal entity behind it: legal name, company number, jurisdiction, status, LEI and VAT number. One flat row per domain, 24 fields, ready for Clay or a CRM.
Install
npx -y @mambalabsdev/mcp-legal-entity-resolver
Claude Desktop
{
"mcpServers": {
"mamba-legal-entity-resolver": {
"command": "npx",
"args": ["-y", "@mambalabsdev/mcp-legal-entity-resolver"],
"env": { "APIFY_TOKEN": "your-apify-token" }
}
}
}
Get an Apify token at console.apify.com/account/integrations.
Tool
resolve_legal_entity
Company domain in, the registered legal entity behind it out.
| Input | Type | Required | Notes |
|---|---|---|---|
sec_requester_name |
string | yes | Your own name or your company's name, sent to the SEC. |
sec_requester_email |
string | yes | Your own working email, sent to the SEC with your name. |
domain |
string | yes | A single company domain, for example monzo.com. Protocol and path are stripped. |
legal_name_hint |
string | no | Skips the domain lookup and goes straight to the registers with this name. Use it when you already have the legal name and just want the register record. |
jurisdiction_hint |
string | no | ISO-2 country code. GB/UK asks Companies House, US asks SEC EDGAR, FR asks the French Sirene register (SIREN), NO asks the Norwegian Brreg register (organisasjonsnummer). Each asks GLEIF alongside. Any other code asks GLEIF alone. Leave empty to query all five. |
match_strictness |
enum | no | exact accepts a register record only when the normalized legal names are equal. fuzzy returns the best scoring candidate with a confidence below 100 and a warning in rejected_candidates. Default exact. |
validate_vat |
boolean | no | Runs any VAT number found on the company's own pages through the EU VIES service and returns the name VIES holds for it, as a cross-check against the register name. Default true. |
skipCache |
enum | no | false uses the cache, 90 days for a resolved company and 7 days for a null. true forces a fresh look. Default false. |
max_charge_usd |
number | no | Optional spending cap for this call, in USD. The actor stops before any charge that would take the run past this amount and keeps every row already charged. |
A null is the product, not a gap
Register search endpoints are fuzzy and they always return something. Taking the top search result gives you a confidently wrong company number more often than not. This actor accepts a match only when the legal names are identical after normalization, which is why roughly 6 domains in 10 resolve instead of 10 in 10, and why the 6 are worth acting on.
Read match_method, match_confidence and rejected_candidates before acting on a match. fuzzy strictness is a research mode: it will hand you a confidently wrong company on most domains.
Three registers are queried: UK Companies House, GLEIF and SEC EDGAR.
Why the SEC fields are required. The SEC requires every automated request to EDGAR to identify the requester by name and email, as a User-Agent of the form Name [email protected] (SEC: Accessing EDGAR data). The actor sends your sec_requester_name and sec_requester_email and never a default or shared identity. A call without both fails before any request, naming the two fields.
Billing
You are charged per domain resolved, plus the platform's actor start event. Prices from the live pricing record, read 2026-10-05:
| Event | Price per event (USD) | Fires when |
|---|---|---|
domain-resolved |
$0.007 on the Free plan, down to $0.00595 on higher Apify plans | One domain looked up: the company's own pages fetched and read for a legal name, then up to three company registers queried for an exact match. Charged whether or not a register matches, because the work is the same either way and charging only for matches would push this Actor toward guessing. Not charged when the domain cannot be reached at all. |
apify-actor-start |
$0.00005 | Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). |
Cached results are 90 days for a resolved company and 7 days for a null. The actor's Apify page carries the current prices. Running this server consumes Apify credits.
What this server does and does not do
It is a thin client for the Apify actor. It passes your input through and returns the actor's output unchanged. Every behavior described above lives in the actor, not here.
This is not a company database and not a credit or risk product. It does not score companies, rate them, or tell you whether to trade with them. It answers one question: which registered legal entity sits behind this domain.
Errors are surfaced, never swallowed. An invalid input, an invalid token, an exhausted balance, a timeout, or a run that returns anything other than a dataset all come back as an explicit tool error rather than as an empty result.
How each call runs
Each call starts the actor run, polls it until it finishes, then reads the dataset. The run is allowed 1,800 seconds. If the run is still going when this call stops waiting, the call returns the run id and a console link instead of a timeout, so the result is never lost.
Source
The actor is on the Apify Store. This wrapper is MIT licensed.
Built by Mamba Labs
Installing mambalabsdev/mcp-legal-entity-resolver
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/mambalabsdev/mcp-legal-entity-resolverFAQ
Is mambalabsdev/mcp-legal-entity-resolver MCP free?
Yes, mambalabsdev/mcp-legal-entity-resolver MCP is free — one-click install via Unyly at no cost.
Does mambalabsdev/mcp-legal-entity-resolver need an API key?
Yes, it requires environment variables: APIFY_TOKEN. Unyly injects them into the config during install.
Is mambalabsdev/mcp-legal-entity-resolver hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install mambalabsdev/mcp-legal-entity-resolver in Claude Desktop, Claude Code or Cursor?
Open mambalabsdev/mcp-legal-entity-resolver on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Unyly Deploy
Deploy sites and MCP servers to Unyly straight from your AI agent
by UnylyAmap Maps Mcp Server
MCP server for using the AMap Maps API
by duxiaohuiPayMCP
Lightweight payments layer for MCP servers: turn tools into paid endpoints with a two-line decorator. [PyPI](https://pypi.org/project/paymcp/) · [npm](https://w
by blustAIServer For Power BI
Enables exploring Microsoft Fabric / Power BI workspaces and semantic models, and executing ad-hoc DAX queries.
by Mitsubishi-FusoTemplate MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectSupabase
Database, auth and storage
by SupabaseEverything
Reference / test server with prompts, resources, and tools.
Compare mambalabsdev/mcp-legal-entity-resolver with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
