Korea Data MCP

io.github.YoungsoonLee由 GitHub 帳號 YoungsoonLee 發布v0.1.7更新於 Nov 5, 2026

Korean public data: corporate filings, stock prices, apartments, statutes, economic statistics

概覽

AI 產生的概覽

本機 MCP 伺服器,讓助理查詢韓國公共資料:企業公告與財報、股價、公寓買賣與租賃、法令、判例以及韓國銀行經濟統計。

可以做什麼
  • 尋找企業並讀取公告、財務報表、股利、主要股東、持股報告與重大決策
  • 查詢國定假日、企業基本資料與營業登記狀態
  • 依地區與月份列出公寓買賣及全租/月租成交,並提供價格彙總
  • 取得 KOSPI、KOSDAQ、KONEX 每日股價
  • 檢索法令與判例,並依指定日期讀取當時有效的法條
  • 取得或檢索韓國銀行經濟時間序列,例如利率、匯率、CPI 與 GDP
適用情境
適合需要以韓國官方來源為依據回答的情境:企業公告與財務資料、不動產成交價、現行法令條文、法院判例或韓國總體經濟序列。它處理了原始 API 的已知陷阱,例如季度與半年資料混淆、尚未生效的法條文字,以及已取消的公寓交易。
執行需求
以本機程序執行(單一執行檔,或以 Go 安裝),另提供 Claude Desktop 一鍵安裝包。需要以環境變數提供免費 API 金鑰:OPENDART_API_KEY、DATAGOKR_SERVICE_KEY、LAWGOKR_OC、ECOS_API_KEY;可只設定其中一部分,缺少金鑰的工具不會出現。註冊這些入口網站通常需要韓國身分驗證。需要能連線至相關政府 API 的網路。
安裝前請注意
伺服器保存四組 API 金鑰,每組只會傳送給核發它的服務,且不收集遙測資料。選用的 HTTP 模式沒有身分驗證,任何能連上該連接埠的人都能用你的金鑰呼叫工具,因此應綁定 localhost。上游有每日呼叫配額。資料新舊取決於來源,公寓成交可能在簽約後 30 天內才上報。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Korea Data MCP,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

korea-data-mcp

English | 한국어

[Release] [License] [Go]

Pass Korean public APIs straight to an AI agent and it gets answers wrong. korea-data-mcp gives it the right ones.

An MCP server for Korean corporate filings, financials, dividends and major shareholders, stock prices, apartment sale prices and rents, business registration status, public holidays, statutes and court rulings, and Bank of Korea economic statistics, from the official free APIs of OpenDART, data.go.kr, law.go.kr and ECOS.

  • Correct, with evidence. 70 traps found on the live APIs (wrong half-year revenue, laws not in force yet, cancelled deals, district codes that changed in 2026, and more) are handled, each covered by a test that uses the real response. The full list is public: What korea-data-mcp handles for you. In a small evaluation, agents with korea-data-mcp answered 10 of 10 questions with one call each; with the raw APIs they hit the traps, needed about 3x the calls, and missed one.
  • Installs in one click. A single binary with nothing else to install. In Claude Desktop, open korea-data-mcp.mcpb and enter your keys. Also in the official MCP Registry.
  • Private. It runs on your machine. Your keys and questions go only to the government APIs, never through a third-party server, and there is no telemetry.
  • Focused. 22 tools with clear descriptions, so an agent picks the right one without filling its context with dozens of others.

Why it matters

Example: "What was Samsung Electronics' revenue in the first half of 2025?" Here is what OpenDART actually returns:

json
{ "account_nm": "매출액", "thstrm_dt": "2025.01.01 ~ 2025.06.30",  "thstrm_amount": "74,566,317,000,000", "thstrm_add_amount": "153,706,820,000,000" }

The period says January to June, so an agent reads thstrm_amount and answers ₩74.6 trillion. That is wrong: it is the second quarter only. The half-year figure, ₩153.7 trillion, is in a different field. Most Korean MCP servers pass this response on as is. korea-data-mcp returns:

json
{ "name": "매출액", "statement_type": "income_statement",  "current":         { "start": "2025-01-01", "end": "2025-06-30", "amount": 153706820000000 },  "current_quarter": { "start": "2025-04-01", "end": "2025-06-30", "amount": 74566317000000 } }

So the agent gets it right, and can even split out the second quarter:

[Claude Code answering Samsung Electronics' first-half 2025 revenue with opendart_get_financials]

Three more traps, each of which silently produces a wrong answer:

  • Law that is not law yet. Ask law.go.kr for the current Labor Standards Act (근로기준법) and the text includes 제44조의4, labeled as in effect since 2026-10-08. It actually takes effect on 2027-01-01; the official "current law" text already contains amendments that are only promulgated. korea-data-mcp returns the text in force on the date you ask for (today by default) and lists what is coming in upcoming (tool output shortened):

    [Claude Code answering whether 근로기준법 제44조의4 is in force, using lawgokr_get_law]

  • Deals that never happened. Apartment trade data keeps cancelled deals, marked only by a flag: 12 of 233 Gangnam trades in September 2025, including a ₩7.5 billion one. Averages that include them are wrong. korea-data-mcp leaves them out.

  • Codes that quietly stop working. In 2026, 광주광역시 and 전라남도 merged, 화성시 was split into four 구, and 인천 reorganized its districts. The old district codes, which most code tables still list, now return zero trades, even for past months. With korea-data-mcp, an agent just says 광주 북구 or 화성시.

There is more: errors returned as HTTP 200, stale records mixed with current ones, business numbers that fail when written with hyphens, stock history split by a company rename, and a TLS handshake that fails from Go. See all 70: What korea-data-mcp handles for you.

What you can ask

Connect korea-data-mcp to Claude (or any MCP client) and ask in English or Korean:

  • "What was Samsung Electronics' revenue in the first half of 2025, and what has it disclosed recently?"
  • "Who is SK hynix's largest shareholder, and how did its dividend per share change over the last three years?"
  • "Who else holds 5% or more of SK hynix, and have any of them sold recently?"
  • "How much did Samsung Electronics spend on buybacks in the last two years, and has 광진실업 diluted its shareholders?"
  • "What was the median apartment sale price in 분당구 in September 2025?"
  • "What was the median jeonse deposit for new contracts in 강남구 in September 2025?"
  • "Is 제44조의4 of the Labor Standards Act (근로기준법) in force yet?"
  • "Find recent Supreme Court rulings on unfair dismissal (부당해고) and summarize the holding of the latest one."
  • "Is business registration number 124-81-00998 still active?"
  • "How did NAVER's stock price move last month?"
  • "Which public holidays are left in Korea this year?"
  • "How have the Bank of Korea base rate and the won-dollar rate moved over the last two years?"
SourceWhat it coversKey
OpenDART (전자공시)Company profiles, disclosures, financial statements, dividends, shareholders, 5% holders, insider trades and major decisions (rights offerings, convertible bonds, buybacks, mergers) of ~120,000 companiesOPENDART_API_KEY
data.go.kr (공공데이터포털)Holidays, corporation info, business status, apartment trades, stock pricesDATAGOKR_SERVICE_KEY
law.go.kr (국가법령정보)Statutes as in force on any date, court rulingsLAWGOKR_OC
ECOS (한국은행 경제통계)Interest and exchange rates, prices, GDP, employment, balance of payments and thousands of other seriesECOS_API_KEY

All four keys are free. You can start with just one.

Quick start

Claude Desktop, in one click: download korea-data-mcp.mcpb, open it (or drag it into Settings → Extensions), and enter the keys you have (how to get them). Nothing else to install; skip to step 4.

1. Install

Download a binary for macOS, Linux or Windows (Intel or ARM) from Releases, extract it, and note the absolute path of korea-data-mcp (korea-data-mcp.exe on Windows). For example, on an Apple Silicon Mac:

sh
curl -L https://github.com/YoungsoonLee/korea-data-mcp/releases/latest/download/korea-data-mcp_darwin_arm64.tar.gz | tar xz./korea-data-mcp -version

On macOS, a binary downloaded with a browser is blocked as coming from an unidentified developer; run xattr -d com.apple.quarantine korea-data-mcp once. curl downloads are not affected.

Or with Go 1.26 or later (Go 1.21+ downloads the right toolchain automatically):

sh
go install github.com/YoungsoonLee/korea-data-mcp/cmd/korea-data-mcp@latest

The binary is installed to $(go env GOPATH)/bin/korea-data-mcp.

2. Get a key

Start with OpenDART: sign up at opendart.fss.or.kr, request a key (인증키 신청), and it is issued right away. For all four, step by step with the Korean menu names: Getting API keys. Any subset works; tools whose key is missing are simply not offered.

Outside Korea? These portals usually require Korean identity verification (a Korean mobile number) to sign up, so getting keys from abroad can be hard or impossible. A hosted version that needs no keys of your own is planned: join the waitlist.

3. Connect your client

Use absolute paths. Leave out the keys you don't have.

Claude Code:

sh
claude mcp add korea-data-mcp \  -e OPENDART_API_KEY=... \  -e DATAGOKR_SERVICE_KEY=... \  -e LAWGOKR_OC=... \  -e ECOS_API_KEY=... \  -- /absolute/path/to/korea-data-mcp

Claude Desktop: edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows), then restart Claude Desktop:

json
{  "mcpServers": {    "korea-data-mcp": {      "command": "/absolute/path/to/korea-data-mcp",      "env": {        "OPENDART_API_KEY": "...",        "DATAGOKR_SERVICE_KEY": "...",        "LAWGOKR_OC": "...",        "ECOS_API_KEY": "..."      }    }  }}

Other MCP clients take the same command and environment variables.

To keep keys in one file instead, copy .env.example to .env, fill it in, and pass -env-file /absolute/path/to/.env as an argument. A variable set in the environment takes precedence over the file.

4. Check it

Ask your agent "Which korea-data-mcp providers are enabled?". It calls hub_list_providers, which lists the enabled providers and any missing keys. Then try one of the questions above.

API keys

Step-by-step instructions and troubleshooting: Getting API keys. All four are free, but signing up usually requires Korean identity verification. If you can't get them, join the hosted waitlist.

Environment variableSourceHow to get it
OPENDART_API_KEYOpenDARTopendart.fss.or.kr → 인증키 신청 (request a key)
DATAGOKR_SERVICE_KEYdata.go.krdata.go.kr → sign up → apply for each API (활용신청; links in Tools) → My Page
LAWGOKR_OClaw.go.kropen.law.go.kr → OPEN API 신청 (apply) → 마이페이지 → API인증키관리 (OC)
ECOS_API_KEYECOSecos.bok.or.kr/api → 인증키 신청 (request a key)

data.go.kr: The portal issues two keys, Encoding and Decoding. Use the Decoding key. The Encoding key gets URL-encoded twice and fails with SERVICE_KEY_IS_NOT_REGISTERED_ERROR. One key covers every API you apply for.

law.go.kr: The OC is a value you choose under 마이페이지 → API인증키관리. A wrong OC gives the error "사용자 정보 검증에 실패하였습니다". law.go.kr puts the OC in every link it returns, so don't reuse another key as the OC (korea-data-mcp never passes those links on).

Tools

OpenDART (OPENDART_API_KEY)

ToolWhat it does
opendart_search_companiesFind a company's corp_code by Korean/English name, stock code, or corp_code
opendart_get_companyCompany profile (기업개황): CEO, market, registration numbers, address, fiscal year-end
opendart_search_disclosuresSearch disclosures (공시) by company, date range, type, and market
opendart_get_financialsKey financial accounts (주요계정) for a year and report, with prior-period comparisons
opendart_get_dividendsDividends (배당): cash dividend per share, yield, total and payout ratio for common and preferred shares, with EPS and net income, for the report's period and the two prior years. Year-to-date and full-year periods are labeled, and the par value shows stock splits
opendart_get_major_shareholdersThe largest shareholder (최대주주) and related parties: common and preferred shares and stakes at the start and end of the period, with the group total
opendart_get_ownership_reportsOwnership reports: holders of 5% or more (대량보유) with each holder's latest stake and status, including holders whose last report is older than the API returns; or executives' and major shareholders' own trades (임원·주요주주), by reporter, date and direction
opendart_list_corporate_actionsMajor decisions (주요사항보고서) of a company: rights and bonus issues, capital reductions, convertible bonds, bonds with warrants and exchangeable bonds, buybacks (direct and through a trust), treasury stock disposals, mergers and splits, as numbers: implied issue price and dilution, bond reset floors and the shares at the floor, buyback totals across share classes

Every OpenDART tool that takes corp_code also accepts a 6-character stock code (e.g. 005930).

data.go.kr (DATAGOKR_SERVICE_KEY). Each API needs its own application (활용신청) on data.go.kr; the links are below.

ToolWhat it doesAPI to apply for
datagokr_list_holidaysPublic holidays (공휴일) for a year or month, including substitute holidays, Seollal and Chuseok, and election days, with English names and weekdays. Also anniversaries, the 24 solar terms, and seasonal days. 2004 through two years ahead한국천문연구원_특일 정보
datagokr_search_corporationsFind Korean corporations by name, listed or not. Returns the corporate registration number (crno) and, for DART filers, dart_corp_code for opendart tools금융위원회_기업기본정보
datagokr_get_corporationCurrent company profile: CEO, market, registration numbers, founding and listing dates, address, industry, employees, average tenure and salary, auditor and audit opinionSame as above
datagokr_check_business_statusCheck up to 100 business registration numbers (사업자등록번호) with the National Tax Service: registered or not, active, suspended or closed (with date), and VAT type. Hyphens are fine국세청_사업자등록정보 진위확인 및 상태조회
datagokr_list_apartment_tradesApartment sale transactions for a district and month, newest first, with a median/min/max price summary. Prices in KRW; cancelled deals excluded by default; filter by apartment name or neighborhood. The region is a name (강남구, 서울 중구, 분당구, 광주 북구) or a 5-digit code; a city with wards, such as 수원시 or 화성시, covers all of them국토교통부_아파트 매매 실거래가 자료
datagokr_list_apartment_rentsApartment jeonse (전세) and monthly-rent (월세) contracts for a district and month, newest first, with deposit and rent medians for each. New contracts and renewals, which are often capped at +5%, are told apart and can be filtered. Amounts in KRW; same regions as above. Since 2011국토교통부_아파트 전월세 실거래가 자료
datagokr_get_stock_pricesDaily prices of a KOSPI, KOSDAQ or KONEX stock: close, change, open/high/low, volume, trading value, market cap. The stock is a name (삼성전자, naver), a 6-digit code or an ISIN; history follows the code across renames. Since 2020금융위원회_주식시세정보

law.go.kr (LAWGOKR_OC)

ToolWhat it does
lawgokr_search_lawsSearch statutes in force (acts, decrees, ordinances) by name or official abbreviation (민법, 중대재해처벌법), or by article text with in_text. Exact matches and acts first
lawgokr_get_lawThe text of a statute as in force on a date (default today), whole or one article (제50조, 43의2), with paragraphs, subparagraphs and items. Lists promulgated amendments that take effect later in upcoming; any past or future date works with as_of
lawgokr_search_precedentsSearch court rulings (판례), newest first, by case name, full text, case number (2020다296604, spaces are fine), court and decision date. Court records only by default, so every result can be read
lawgokr_get_precedentA ruling by id or case number: issues (판시사항), holding (판결요지), cited statutes and cases, and the full decision with include_full_text

Bank of Korea ECOS (ECOS_API_KEY)

ToolWhat it does
ecos_get_seriesA time series by named indicator (base_rate, usd_krw, jpy_krw, eur_krw, cny_krw, treasury_3y, treasury_10y, cd_91d, corporate_bond_3y, kospi, kosdaq, cpi, gdp_growth, gdp_growth_yoy, gdp, gdp_per_capita_usd, unemployment_rate, employment_rate, current_account, house_price_index) or by any table's code, daily to annual. Each series says whether a period's value is an average, the end-of-period level or a total; amounts are in KRW or USD; index series add the change from a year earlier (in points for rates)
ecos_search_seriesFind tables by Korean or English words (수출물가, housing price), or list a table's items with their frequencies and date ranges

Hub: hub_list_providers lists the enabled providers and the keys that are missing.

Security, limits and freshness

  • Your keys stay on your machine. korea-data-mcp runs locally and sends each key only to the service that issued it. There is no telemetry. Error messages never include keys or query strings.
  • HTTP mode has no authentication. -http serves the tools to anyone who can reach the port, using your keys. Bind it to localhost (-http 127.0.0.1:8080) unless it is behind an authenticating proxy. The default stdio mode does not open a port.
  • Upstream quotas apply. A data.go.kr development account allows 10,000 calls per day for each API; OpenDART, law.go.kr and ECOS have their own limits. korea-data-mcp caches responses for 10 minutes and the DART company list for 24 hours.
  • Data is as fresh as the source. Apartment deals can be reported up to 30 days after the contract, so the latest month fills in over time. Stock prices are daily, updated after each trading day.

Roadmap

  • OpenDART: companies, disclosures, financials, dividends, shareholders, ownership reports, major decisions
  • data.go.kr: holidays, corporation info, business status, apartment trades and rents, stock prices
  • law.go.kr: statutes, court rulings
  • Bank of Korea ECOS: rates, prices, GDP, employment and any other ECOS table
  • KOSIS (Korean Statistical Information Service)
  • A sibling server for Japan, starting with EDINET (corporate disclosures)

Want a data source added? Request it. Found an API behaving oddly? Open an issue. No Korean API keys? Join the hosted waitlist. To build, test or add a provider, see docs/DEVELOPMENT.md.

License

Apache License 2.0. Data returned by the tools comes from the upstream services and is subject to their terms of use.

來源:README.md,提交 769d784

工具

0
SourceWeft 曾在隔離沙箱中以無憑證方式啟動該軟體包一次,以列出其工具,但未能完成:該軟體包類型無法在沙箱中執行。

版本歷史

4
  1. v0.1.7最新Nov 5, 2026
  2. v0.1.6Nov 1, 2026
  3. v0.1.4Oct 31, 2026
  4. v0.1.2Oct 29, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分