DutyKit
EU business duties for AI agents: legal obligations with sources and pre-checks (DE, LU, EU)
제작자가 쓴 설명(영어 원문)
Korean public data: corporate filings, stock prices, apartments, statutes, economic statistics
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
OPENDART_API_KEY, DATAGOKR_SERVICE_KEY, LAWGOKR_OC, ECOS_API_KEY비밀로 표시된 값은 내 계정의 열쇠예요. 절대 다른 사람과 공유하거나 채팅에 붙여 넣지 마세요.
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
링크는 제작자의 파일로 바로 연결돼요. 우리가 보관하거나 다시 패키징하지 않아요. 파일을 열면 Claude Desktop이 설치해요.
터미널에서 이 명령어를 실행하세요
실행하기 전에 빈 값을 채워 주세요.
브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
레지스트리 이름이 GitHub 계정 YoungsoonLee 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
입력해야 할 값: OPENDART_API_KEY, DATAGOKR_SERVICE_KEY, LAWGOKR_OC, ECOS_API_KEY
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.1.7)은 그저께 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 MCPB도 있어야 해요.
같은 카테고리에는: DutyKit, Agent Data Tools: Company, compliance and checks, Agent Data Tools
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
EU business duties for AI agents: legal obligations with sources and pre-checks (DE, LU, EU)
38 tools: OFAC sanctions, counterparty checks, company, domain, email. 25 free calls.
641 agent tools: chain data, prices, sanctions, web, PDF. 25 free calls, then from $0.002.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
English | 한국어
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.
Example: "What was Samsung Electronics' revenue in the first half of 2025?" Here is what OpenDART actually returns:
{ "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:
{ "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:
Three more traps, each of which silently produces a wrong answer:
upcoming (tool output shortened):광주 북구 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 78: [What korea-data-mcp handles for you](docs/QUIRKS.md).
Connect korea-data-mcp to Claude (or any MCP client) and ask in English or Korean:
| Source | What it covers | Key |
|---|---|---|
| OpenDART (전자공시) | Company profiles, disclosures, financial statements, dividends, shareholders, 5% holders, insider trades, stakes in other companies and major decisions (rights offerings, convertible bonds, buybacks, mergers) of ~120,000 companies | OPENDART_API_KEY |
| data.go.kr (공공데이터포털) | Holidays, corporation info, business status, apartment trades, stock prices | DATAGOKR_SERVICE_KEY |
| law.go.kr (국가법령정보) | Statutes as in force on any date, court rulings | LAWGOKR_OC |
| ECOS (한국은행 경제통계) | Interest and exchange rates, prices, GDP, employment, balance of payments and thousands of other series | ECOS_API_KEY |
All four keys are free. You can start with just one.
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.
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:
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):
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.
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](docs/KEYS.md). 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](https://github.com/YoungsoonLee/korea-data-mcp/issues/new?template=hosted-access.yml).
Use absolute paths. Leave out the keys you don't have.
Claude Code:
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:
{
"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.
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.
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 variable | Source | How to get it |
|---|---|---|
OPENDART_API_KEY | OpenDART | opendart.fss.or.kr → 인증키 신청 (request a key) |
DATAGOKR_SERVICE_KEY | data.go.kr | data.go.kr → sign up → apply for each API (활용신청; links in Tools) → My Page |
LAWGOKR_OC | law.go.kr | open.law.go.kr → OPEN API 신청 (apply) → 마이페이지 → API인증키관리 (OC) |
ECOS_API_KEY | ECOS | ecos.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).
OpenDART (OPENDART_API_KEY)
| Tool | What it does |
|---|---|
opendart_search_companies | Find a company's corp_code by Korean/English name, stock code, or corp_code |
opendart_get_company | Company profile (기업개황): CEO, market, registration numbers, address, fiscal year-end |
opendart_search_disclosures | Search disclosures (공시) by company, date range, type, and market |
opendart_get_financials | Key financial accounts (주요계정) for a year and report, with prior-period comparisons |
opendart_get_dividends | Dividends (배당): 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_shareholders | The 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_investments | Stakes i
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요