🇷🇺 Russia — ЕГРЮЛ / ЕГРИП — Федеральная налоговая служба (ФНС России) + ГИР БО
Access Russia's official company register in real time via the OpenRegistry MCP endpoint. Unified schema, source-linked, live passthrough (no caching).
Data license: Public information under Federal Law 129-ФЗ art. 6 + Federal Law 402-ФЗ art. 18 (financial statements). Access is free of charge; no formal open-data licence is declared.
Real-time: yes — every call hits upstream
Caching notes: In-adapter caches: 10 seconds for cross-call deduplication within a single AI turn; otherwise every call hits upstream fresh. Pass fresh=true to bypass even the 10s cache.
Global fan-out: excluded by default — pass jurisdiction: "RU" explicitly.
Russia's official commercial and sole-proprietor registers plus the annual financial-statements gazette. Requires an operator-side CIS egress route or every call returns 503. OGRN 13-digit / OGRNIP 15-digit / INN 10-12-digit / full-text name all accepted for search.
Company ID format
OGRN — 13 digits for legal entities (UL), 15 digits for sole proprietors (ОГРНИП). INN (10 / 12 digits) is also accepted for search; get_company_profile canonicalises to OGRN. Whitespace + punctuation stripped on input.
Native values upstream reports: действующее, прекращена деятельность
Mapping to the unified four-value enum:
Unified
Native values
active
действующее
inactive
(none)
dissolved
прекращена деятельность
unknown
(none)
Known quirks
egressblocker — Upstream drops non-local datacenter egress at the network level. The server requires an operator-side CIS egress route; without it every tool call returns 503.
id_formatinfo — company_id is OGRN (13 digits, legal entity) or OGRNIP (15 digits, sole proprietor). search_companies also accepts INN (10 or 12 digits) plus full-text name / address / natural-person name substring — all four identifier types resolve on the same endpoint. get_company_profile always canonicalises to OGRN.
redactionwarning — Sanctioned / defence-adjacent / annexed-territory entities may legally suppress director and participants fields. When the register extract carries a restricted-access notice in those sections, the parser emits is_masked=true and lists the redacted sections in jurisdiction_data.redacted_fields. Affects ~6% of sanctioned entities, <1% of all ~4M active Russian legal entities.
officersinfo — get_officers returns ALL sole executives, not just one (Russian company law allows multiple «persons acting without power of attorney»). Three officer_kind variants: 'natural_person', 'managing_organization' (another legal entity runs the company, with its OGRN + INN + full name), 'managing_person' (individual-entrepreneur manager). Board of directors and collegial executive are NOT in the public register — they live in the charter.
shareholderswarning — For LLC (OOO) the full participants list with name + nominal share (RUB) + share % is public and returned by get_shareholders. For joint-stock forms (AO / PAO / ZAO) the public register records ONLY founders-at-incorporation, not current shareholders — current holders sit in an independent licensed registrar's private register. get_shareholders surfaces registrar_of_shareholders: {name, ogrn, inn} pointing at the specific custodian, so the caller knows which intermediary to approach.
filingsinfo — list_filings returns TWO kinds: (1) the live register extract as a single synthetic filing (kind='vypiska', has_document=true, document_id='vyp:{ogrn}'), (2) one row per annual financial statement since 2019 (kind='bfo', document_id='bfo:{bfoId}:pdf|xlsx'). Each annual-statement id resolves to both PDF and XLSX formats.
pscblocker — get_persons_with_significant_control returns 501. The country's UBO register is AML-gated to regulators and banks only — never public. For ≥25% ownership of an LLC, get_shareholders is the closest public proxy.
chargesblocker — get_charges returns 501. Real-estate pledges and movable-property pledges live in separate specialty registers — neither is integrated.
officersblocker — get_officer_appointments + search_officers return 501. The public register has no officer-centric cross-company index — enumerate per-company via get_officers.
routinginfo — Excluded from the default cross-country search fan-out (global_search_excluded=true) because egress routing is slower than for other registries. Direct jurisdiction='RU' calls are unaffected.
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: