OpenCorporates Korea alternative — live OpenDART
South Korea is the textbook case for "live registry beats aggregator". The structured corporate-disclosure feed lives at the Financial Supervisory Service's OpenDART (전자공시시스템 / Electronic Disclosure System), an XBRL filing surface covering every KOSPI, KOSDAQ, and KONEX issuer plus every entity caught by the External Audit Act. Roughly 38,000 companies file in continuous near-real-time. The OpenRegistry KR adapter is wired to it.
What OpenCorporates has for Korea
OpenCorporates' Korea coverage has historically been thin. South Korea ranked poorly on the Open Knowledge Global Open Data Index because the master register is not bulk-downloadable and the search results page carries copyright restrictions on re-use. OC mirrors what it can under those constraints. The result is a directory-style surface, not a live filings-and-financials feed.
What OpenRegistry has for Korea
The OpenDART adapter is in production. It exposes the following tools:
search_companies(KR, ...): name and corp_code lookup against the OpenDART issuer roster.get_company_profile(KR, ...): corp_name (Korean and English), 사업자등록번호, 법인등록번호, 영문명, address, listing market, plus the full OpenDART payload underjurisdiction_data.list_filings(KR, ...): every disclosure. 사업보고서 (annual), 분기보고서 (quarterly), 반기보고서 (semi-annual), 주요사항보고서 (material event), 임시주주총회결과 (extraordinary meetings), and the rest.get_financials(KR, ...): XBRL-backed financials. 재무상태표, 손익계산서, 자본변동표, 현금흐름표.get_officers(KR, ...): directors and key executives.get_shareholders(KR, ...): merges 최대주주현황 (hyslrSttus, top shareholder) with 임원·주요주주 대량보유 (majorstock, the 5% disclosure regime). Each row carries a_sourcetag so the agent can tell which reporting regime it came from.fetch_document(KR, ...): raw OpenDART bytes.document.xml(DS001) andfnlttXbrl.xml(DS003 financial XBRL). No parsing, no transformation.
Why this matters for AI workflows
Most current LLMs already read 한국 회계 prose perfectly. What they need
from us is a transport that hands them the actual filing in
machine-readable form. fetch_document returns the raw XBRL.
The agent reads it directly. No BvD-style normalisation in the middle.
Worked example
// MCP — find Samsung Electronics on OpenDART search_companies({ jurisdiction: "KR", query: "Samsung Electronics" }) // → corp_code 00126380, corp_name 삼성전자(주), corp_name_eng "Samsung Electronics Co., Ltd." get_company_profile({ jurisdiction: "KR", company_id: "00126380" }) list_filings({ jurisdiction: "KR", company_id: "00126380", limit: 10 }) get_financials({ jurisdiction: "KR", company_id: "00126380", year: 2024 }) fetch_document({ jurisdiction: "KR", document_id: "<rcept_no from list_filings>" })
Every one of these calls is reproducible on the free anonymous tier. Paste the MCP URL into Claude Desktop and ask the question.