🇲🇨 Monaco — Répertoire du Commerce et de l'Industrie (RCI) — Direction du Développement Économique (DDE), Gouvernement Princier de Monaco
Access Monaco's official company register in real time via the OpenRegistry MCP endpoint. Unified schema, source-linked, live passthrough (no caching).
Data license: Public information of the Principauté de Monaco. The free 'Aperçu de l'extrait' (preview) is available without authentication; the certified dematerialised 'Extrait RCI' (including administrators and observations) is paid at €15/extract via card at the teleservice portal.
Real-time: yes — every call hits upstream
Caching notes: Search + profile caches: 10 seconds for cross-call deduplication. Every call hits the live Monaco RCI portal (teleservice.gouv.mc). Pass fresh=true to bypass. The portal sits behind an F5 BIG-IP WAF; the adapter sends a realistic User-Agent and the SPA session cookies issued by the homepage are not required for the public JSON endpoints.
Monaco — commercial register for search + profile; official gazette provides a delta stream for filings / officers / shareholders. Company id format is 'YY[P|S|C]NNNNN'. No UBO, no charges.
Company ID format
Monaco RCI number — format 'YY[P|S|C]NNNNN'. 2-digit year of registration, entity-type letter (P = personne physique / sole trader, S = société, C = société civile), zero-padded 5-digit sequential. The portal renders with spaces/dashes (e.g. '97 S 03277', '56 S 523'); whitespace and punctuation are stripped on input, lowercase letters uppercased, numeric tail left-padded to 5 digits.
id_formatinfo — Company-id format 'YY[P|S|C]NNNNN': 2-digit year + entity letter (P personne physique / S société / C société civile) + 5-digit sequence. Whitespace and punctuation are stripped, letters uppercased, numeric tail zero-padded to 5 digits on input. Examples: 97S03277, 56S00523, 17P07673, 92C06957.
searchinfo — search_companies auto-detects company-id input and short-circuits to the profile endpoint so the first hit carries rich jurisdiction_data (establishment / NIS / NAF / activité). Non-matching numbers fall through to name search.
filingswarning — list_filings / get_officers / get_shareholders are a delta stream built from official-gazette publications matching the entity's raison sociale, not a structured register feed. Adapter resolves raison sociale from the register first, then full-text searches the gazette with an exact-phrase query and classifies each hit. Replay oldest-first to reconstruct current state. Raw French prose is preserved in jurisdiction_data.message — no AI parsing.
officerswarning — get_officers returns one synthetic entry per matching gazette publication, with name=`[Publication — {type}]` (not a real person name) and role set to the publication type. The current board is not directly exposed — clients must replay the stream or buy the paid certified extract (purchase_extract_url on profile). jurisdiction_data.is_company_subject=false flags publications that merely MENTION the entity so they can be filtered out.
shareholderswarning — get_shareholders is a publication delta stream (kind='shareholder-publication-delta'), NOT the UBO register. Each entry is one gazette publication touching capital / statutes / governance. Distinct from get_persons_with_significant_control (which returns 501 — see below).
pscblocker — get_persons_with_significant_control returns 501 permanently. The jurisdiction's UBO register is paper-only at the counter, paid per extract, restricted to requesters with AML legitimate interest. No public online endpoint.
chargesblocker — get_charges returns 501. Security interests and mortgages are held by notaries and a separate mortgage service with no public online search.
officersblocker — search_officers and get_officer_appointments return 501. The register exposes no cross-company officer-name index.
documentsinfo — get_document_metadata + fetch_document work on gazette publication IDs (same URL used as filing_id). The returned PDF is the WHOLE gazette issue — use publication_title + rubrique_path + page_number to locate the specific article within it. Default fetch cap 10 MiB; override via max_bytes. No per-filing PDF on the register itself — the paid certified extract is not proxied.
egressinfo — The register portal sits behind a WAF; adapter targets its JSON endpoints and uses manual-redirect handling to detect 'entity not found' responses. The gazette gates on User-Agent — adapter sends a browser-style UA specifically for gazette calls.
statusinfo — Native status values: ACTIVE → active; EN_DISSOLUTION / REVOCATION_AUTORISATION / REVOCATION_PRIVATION → inactive; RADIATION_DEFINITIVE / EN_LIQUIDATION → dissolved. Status on search hits without an etat enum is inferred from the French etat_libelle badge.
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: