get_company_profileStructured profile of a company by its registry-specific ID - unified fields + raw upstream under jurisdiction_data.
The core read tool. Returns unified top-level fields (jurisdiction, company_id, company_name, status, status_detail, incorporation_date, registered_address) plus a jurisdiction_data object carrying the raw upstream fields verbatim. Does NOT include filings, officers, PSCs, shareholders, or charges - call the dedicated tools for those.
| Name | Type | Required | Description |
|---|---|---|---|
jurisdiction | string | yes | ISO 3166-1 alpha-2 code. |
company_id | string | yes | The registry's canonical identifier. Shapes vary per jurisdiction - pull from search_companies when possible. |
fresh | boolean | no | Bypass cache. |
curl -sL https://openregistry.sophymarine.com/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_company_profile","arguments":{"jurisdiction":"GB","company_id":"08804411"}}}'
AU - AustraliaBE - BelgiumCA - Canada (federal)CA-BC - Canada - British ColumbiaCH - SwitzerlandCY - CyprusCZ - CzechiaFI - FinlandFR - FranceGB - United KingdomHK - Hong KongHR - CroatiaIE - IrelandIM - Isle of ManIS - IcelandIT - ItalyJP - JapanKR - South KoreaKY - Cayman IslandsLI - LiechtensteinMC - MonacoMY - MalaysiaNL - NetherlandsNO - NorwayNZ - New ZealandPL - PolandRU - RussiaSE - SwedenTW - Taiwansearch_companies first. Each result has the registry's canonical company_id. Pass that id to get_company_profile. Names are not unique even within a single jurisdiction, so passing a name will not work.
No. get_company_profile returns the entity's structured identity only. Use get_officers / get_shareholders / get_persons_with_significant_control / list_filings / get_charges for those — each one is its own MCP call.
Top-level fields are the cross-jurisdiction unified shape (status, incorporation_date, registered_address, etc.). Everything the upstream registry returned that does not map cleanly across countries is preserved verbatim under jurisdiction_data — SIC codes, native status strings, regional sub-fields, registry-specific flags.
Default is to return the edge-cached profile (TTL varies per registry, typically 1h–24h). Pass fresh: true to force-skip the cache and hit the upstream registry. Use when you need a same-minute view (newly incorporated, status change in the last hour).
Registry-specific. GB: 8-digit Companies House number. FR: 9-digit SIREN. DE: HRB / HRA + number. KR: 8-digit corp number (corp_code). KY: CIMA license number. Call list_jurisdictions for each country's format and examples.
status is OpenRegistry's coarse normalization (active / inactive / dissolved / unknown) for cross-country comparability. The registry's exact native string is preserved under jurisdiction_data — read that for precise state. status_detail (when present) carries the registry's status text directly.
Yes, when the registry publishes them. They appear under jurisdiction_data (e.g. jurisdiction_data.previous_company_names on GB). The top-level company_name and registered_address are always the current values.
Upstream blank. The unified-shape fields (incorporation_date, registered_address) are populated only where the registry exposes them. Some registers withhold address for partnerships, sole traders, or under privacy provisions. Check jurisdiction_data for the raw upstream record before assuming missing data.
Same as search_companies: 30 free, 180 Pro, 900 Max, 3000 Enterprise. Per user. Fresh-bypass calls count the same.
No within one country, but yes across countries — UK FC-prefixed numbers (overseas branches) and German HRB local-court combinations can collide with other countries' identifier spaces. Always include jurisdiction in your call.