🇮🇲 Isle of Man — Isle of Man Companies Registry — Department for Enterprise (DED)
Access Isle of Man's official company register in real time via the OpenRegistry MCP endpoint. Unified schema, source-linked, live passthrough (no caching).
Data license: Open Government Licence (Isle of Man) — https://www.gov.im/about-this-site/open-government-licence/
Real-time: yes — every call hits upstream
Caching notes: Search + profile + filing list + name→Id mapping cached for 10 seconds for cross-call deduplication. Each call hits services.gov.im live HTML. Pass fresh=true to bypass.
Isle of Man — the official company registry surface (HTML-scraped, no JSON API). company_id is digits + 1-letter register suffix (C/V/L/F/B/M/P/I); officers and beneficial ownership are not public.
Company ID format
Isle of Man company / business / entity number: 1–7 digits + a single letter suffix indicating the statutory register. C = 1931 Act company; V = 2006 Act company; L = Limited Liability Company (LLC Act 1996); F = Foreign company (also where overseas LLPs are registered); B = Business name; M = Foundation (Foundations Act 2011); P = Limited Partnership (Partnership Act 1909); I = Industrial & Provident Society. Letter case is normalised to upper.
Native values upstream reports: Live, Dissolved, Struck Off, In Liquidation, In Administration
Mapping to the unified four-value enum:
Unified
Native values
active
Live
inactive
In Liquidation, In Administration, Receiver Appointed
dissolved
Dissolved, Struck Off, Removed, Wound Up
unknown
(none)
Known quirks
id_formatwarning — company_id must include the single-letter register suffix (C/V/L/F/B/M/P/I). get_company_profile and list_filings reject plain digits with 400.
searchinfo — search_companies auto-picks by-number vs by-name form based on the input pattern. Upstream returns 30 rows per page. When `limit` exceeds that and `page` is not pinned, the adapter aggregates up to 10 pages. Jurisdiction-specific opts: page (1-based), sort_by (Name/Number/IncorporationDate/Status/BusinessEntityType/NameStatus), sort_direction (0=asc, 1=desc).
egresswarning — Upstream has a WAF that may reply HTTP 200 with 'Request Rejected' — the adapter raises 403 in that case. Retries 429/500/502/503/504 three times with exponential backoff.
routinginfo — get_company_profile and list_filings resolve company_number → opaque internal id via an extra search hop, then fetch the summary page to get the internal entity id needed for filing queries. A company with zero filed documents has no entity id and list_filings returns an empty list (not 404).
officersblocker — get_officers returns 501 with alternative_tool=list_filings (category=officers) pointing at change-of-director/secretary filings — their metadata is free but the document body is paywalled. Director / officer / secretary names are NOT publicly exposed for any entity type.
otherinfo — Modern-act (V-suffix) company profiles include a Registered Agent section (a licensed statutory agent handling filings — NOT a director, NOT a shareholder); surfaced as get_company_profile().jurisdiction_data.registered_agents[{agent,address}]. Other entity types omit the section; the array is empty when absent.
pscblocker — get_persons_with_significant_control returns 501. The beneficial-ownership register is AML-gated — access restricted to obliged entities under AML/CFT rules, never public.
chargesblocker — get_charges returns 501. The profile surfaces only a 'Presence of Charges' Yes/No flag. Charges-category filings appear in list_filings but their body is paywalled.
documentswarning — get_document_metadata works without login (type / description / date / source_url). fetch_document returns 501 — body download requires an authenticated per-filing paid purchase. available_formats is deliberately empty so callers know no body can be delivered.
Available jurisdiction_data fields
Every tool response carries a jurisdiction_data object with the raw upstream fields (names unchanged). The full field set per record type: