Skip to main content
Glama
OpenDART MCP Server

OpenDART MCP Server

by Dayoooun

OpenDART MCP Server ๐Ÿ‡ฐ๐Ÿ‡ท

License: MIT Python 3.10+ Vercel

ํ•œ๊ตญ ๊ธˆ์œต๊ฐ๋…์› ์ „์ž๊ณต์‹œ์‹œ์Šคํ…œ(DART) API๋ฅผ MCP(Model Context Protocol)๋กœ ์ œ๊ณตํ•˜๋Š” ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค.

AI ์–ด์‹œ์Šคํ„ดํŠธ๊ฐ€ ํ•œ๊ตญ ์ƒ์žฅ๊ธฐ์—…์˜ ๊ณต์‹œ, ์žฌ๋ฌด์ •๋ณด, ๊ธฐ์—…์ •๋ณด๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์กฐํšŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ“… ์ง€์› ๋ฐ์ดํ„ฐ: 2023๋…„ ~ 2025๋…„ ์ตœ์‹  (3๋ถ„๊ธฐ) ๋ชจ๋‘ ์กฐํšŒ ๊ฐ€๋Šฅ!

๐ŸŽฌ ์‹œ์—ฐ ์˜์ƒ

OpenDART MCP ์‹œ์—ฐ

๐ŸŽฅ ํด๋ฆญํ•˜๋ฉด YouTube์—์„œ ์‹œ์—ฐ ์˜์ƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!

Related MCP server: MCP OpenDART

โœจ ์ฃผ์š” ๊ธฐ๋Šฅ (14๊ฐœ ๋„๊ตฌ)

๐Ÿ” ๊ธฐ์—… ๊ฒ€์ƒ‰

๊ธฐ๋Šฅ

์„ค๋ช…

find_company

๊ธฐ์—…๋ช…์œผ๋กœ corp_code ๊ฒ€์ƒ‰ (114,951๊ฐœ ์ „์ฒด ๊ธฐ์—…)

๐Ÿ“‹ ๊ณต์‹œ/๊ธฐ์—…์ •๋ณด

๊ธฐ๋Šฅ

์„ค๋ช…

search_disclosures

๊ณต์‹œ ๊ฒ€์ƒ‰ (๊ธฐ๊ฐ„, ๊ธฐ์—…, ์‹œ์žฅ ํ•„ํ„ฐ๋ง)

get_company_info

๊ธฐ์—… ๊ธฐ๋ณธ์ •๋ณด (ํšŒ์‚ฌ๋ช…, ๋Œ€ํ‘œ์ž, ์—…์ข… ๋“ฑ)

๐Ÿ’ฐ ์žฌ๋ฌด์ •๋ณด

๊ธฐ๋Šฅ

์„ค๋ช…

get_financial_account

์ฃผ์š” ์žฌ๋ฌด๊ณ„์ • (์ž์‚ฐ, ๋ถ€์ฑ„, ๋งค์ถœ, ์˜์—…์ด์ต ๋“ฑ)

get_full_financial_statement

์ „์ฒด ์žฌ๋ฌด์ œํ‘œ (BS, IS, CF ๋“ฑ)

get_financial_index

โญ ์ฃผ์š” ์žฌ๋ฌด์ง€ํ‘œ (ROE, ROA, ๋ถ€์ฑ„๋น„์œจ, PER, PBR ๋“ฑ)

get_dividend_info

๋ฐฐ๋‹น ์ •๋ณด

๐Ÿ‘ฅ ์ธ์ ์ •๋ณด

๊ธฐ๋Šฅ

์„ค๋ช…

get_executives

์ž„์› ํ˜„ํ™ฉ

get_employees

์ง์› ํ˜„ํ™ฉ (ํ‰๊ท  ๊ธ‰์—ฌ, ๊ทผ์†์—ฐ์ˆ˜ ๋“ฑ)

๐Ÿ“ˆ ์ง€๋ถ„์ •๋ณด

๊ธฐ๋Šฅ

์„ค๋ช…

get_largest_shareholders

์ตœ๋Œ€์ฃผ์ฃผ ํ˜„ํ™ฉ

get_major_stock

โญ ๋Œ€๋Ÿ‰๋ณด์œ  ์ƒํ™ฉ๋ณด๊ณ  (5%๋ฃฐ - 5% ์ด์ƒ ์ฃผ์ฃผ ๋ณ€๋™)

get_executive_stock

โญ ์ž„์›ยท์ฃผ์š”์ฃผ์ฃผ ์ง€๋ถ„ ๋ณ€๋™

๐Ÿ’ต ์ž๋ณธ/์ฃผ์‹์ •๋ณด

๊ธฐ๋Šฅ

์„ค๋ช…

get_capital_change

โญ ์ฆ์ž/๊ฐ์ž ํ˜„ํ™ฉ

get_treasury_stock

โญ ์ž๊ธฐ์ฃผ์‹ ์ทจ๋“/์ฒ˜๋ถ„ ํ˜„ํ™ฉ


๐Ÿš€ ๋น ๋ฅธ ์‹œ์ž‘

๋ฐฉ๋ฒ• 1: ๋ฐฐํฌ๋œ ์„œ๋ฒ„ ์‚ฌ์šฉ (๊ถŒ์žฅ) โšก

๋ณ„๋„ ์„ค์ • ์—†์ด ๋ฐ”๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅ!

https://dart-mcp-self.vercel.app/sse

MCP ํด๋ผ์ด์–ธํŠธ์— ์œ„ URL๋งŒ ์ถ”๊ฐ€ํ•˜๋ฉด ๋!

๋ฐฉ๋ฒ• 2: ์ง์ ‘ Vercel ๋ฐฐํฌ

Deploy with Vercel

Fork ํ›„ Vercel์— ์—ฐ๊ฒฐํ•˜๋ฉด ์ž๋™ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

๋ฐฉ๋ฒ• 3: ๋กœ์ปฌ ์‹คํ–‰

git clone https://github.com/Dayoooun/dart-mcp.git
cd dart-mcp

# ์˜์กด์„ฑ ์„ค์น˜ ๋ฐ ์‹คํ–‰
pip install -e .
opendart-mcp

โš™๏ธ MCP ํด๋ผ์ด์–ธํŠธ ์„ค์ •

Cursor IDE

~/.cursor/mcp.json ํŒŒ์ผ์— ์ถ”๊ฐ€:

{
  "mcpServers": {
    "opendart": {
      "type": "http",
      "url": "https://dart-mcp-self.vercel.app/sse"
    }
  }
}

Claude Desktop

claude_desktop_config.json์— ์ถ”๊ฐ€:

{
  "mcpServers": {
    "opendart": {
      "url": "https://dart-mcp-self.vercel.app/sse"
    }
  }
}

๋กœ์ปฌ ์‹คํ–‰ ์‹œ (stdio)

{
  "mcpServers": {
    "opendart": {
      "command": "opendart-mcp"
    }
  }
}

๐Ÿ“– ์‚ฌ์šฉ ์˜ˆ์‹œ

๐Ÿ’ก ํ•ต์‹ฌ: ๊ธฐ์—…๋ช…์œผ๋กœ ๊ฒ€์ƒ‰ํ•˜๊ธฐ

corp_code๋ฅผ ๋ชฐ๋ผ๋„ ๋ฉ๋‹ˆ๋‹ค! find_company๋กœ ๊ฒ€์ƒ‰ํ•˜์„ธ์š”:

"์ธ์‚ฐ๊ฐ€๋ผ๋Š” ํšŒ์‚ฌ ์žฌ๋ฌด์ œํ‘œ ๋ณด์—ฌ์ค˜"

AI๊ฐ€ ์ž๋™์œผ๋กœ:

  1. find_company("์ธ์‚ฐ๊ฐ€") โ†’ corp_code ํš๋“

  2. get_financial_account(corp_code=...) โ†’ ์žฌ๋ฌด์ •๋ณด ์กฐํšŒ

๊ธฐ๋ณธ ์‚ฌ์šฉ

"์‚ผ์„ฑ์ „์ž ๊ธฐ์—… ์ •๋ณด ์•Œ๋ ค์ค˜"
"๋„ค์ด๋ฒ„์˜ 2023๋…„ ์—ฐ๊ฐ„ ์žฌ๋ฌด์ œํ‘œ ๋ณด์—ฌ์ค˜"
"์นด์นด์˜ค ์ง์› ํ˜„ํ™ฉ๊ณผ ํ‰๊ท  ๊ธ‰์—ฌ ์•Œ๋ ค์ค˜"

์ž˜ ๋ชจ๋ฅด๋Š” ๊ธฐ์—… ์กฐํšŒ

"์˜ค๋ฅด๋น„ํ…์ด๋ผ๋Š” ํšŒ์‚ฌ์˜ ์ง์› ํ˜„ํ™ฉ ์•Œ๋ ค์ค˜"
"๋‚˜๋…ธ์”จ์— ์—์Šค ์ž„์› ํ˜„ํ™ฉ ๋ณด์—ฌ์ค˜"
"๋‘์‚ฐ๋กœ๋ณดํ‹ฑ์Šค ์žฌ๋ฌด์ •๋ณด ์กฐํšŒํ•ด์ค˜"

์˜๋ฌธ/ํ•œ๊ธ€ ๋™์‹œ ๊ฒ€์ƒ‰ ์ง€์›

"NAVER ์žฌ๋ฌด์ •๋ณด" โ†’ ๋„ค์ด๋ฒ„ ์ฐพ์Œ
"๋„ค์ด๋ฒ„ ์žฌ๋ฌด์ •๋ณด" โ†’ NAVER ์ฐพ์Œ
"LG ๊ณ„์—ด์‚ฌ ๋ชฉ๋ก" โ†’ LG์ „์ž, LGํ™”ํ•™, LG์—๋„ˆ์ง€์†”๋ฃจ์…˜ ๋“ฑ ์ฐพ์Œ

๐Ÿข ์ฃผ์š” ๊ธฐ์—… ๊ณ ์œ ๋ฒˆํ˜ธ

์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ๋Œ€๊ธฐ์—…์€ corp_code๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•ด๋„ ๋ฉ๋‹ˆ๋‹ค:

๊ธฐ์—…๋ช…

corp_code

์ข…๋ชฉ์ฝ”๋“œ

์‚ผ์„ฑ์ „์ž

00126380

005930

SKํ•˜์ด๋‹‰์Šค

00164779

000660

LG์ „์ž

00401731

066570

ํ˜„๋Œ€์ž๋™์ฐจ

00164742

005380

๋„ค์ด๋ฒ„

00266961

035420

์นด์นด์˜ค

00258801

035720

์‚ผ์„ฑSDI

00126371

006400

LGํ™”ํ•™

00356361

051910

์…€ํŠธ๋ฆฌ์˜จ

00421045

068270

ํฌ์Šค์ฝ”ํ™€๋”ฉ์Šค

00126186

005490

๊ทธ ์™ธ ๊ธฐ์—…: find_company๋กœ ๊ฒ€์ƒ‰ํ•˜์„ธ์š”! (114,951๊ฐœ ๊ธฐ์—… ์ง€์›)


๐Ÿ“‹ API ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐ€์ด๋“œ

๋ณด๊ณ ์„œ ์ฝ”๋“œ (reprt_code)

์ฝ”๋“œ

์„ค๋ช…

ํŠน์ง•

11011

์‚ฌ์—…๋ณด๊ณ ์„œ (์—ฐ๊ฐ„)

๊ฐ€์žฅ ์ƒ์„ธ, ์ง์›ํ˜„ํ™ฉ ํฌํ•จ

11012

๋ฐ˜๊ธฐ๋ณด๊ณ ์„œ

6๊ฐœ์›” ์‹ค์ 

11013

1๋ถ„๊ธฐ๋ณด๊ณ ์„œ

3๊ฐœ์›” ์‹ค์ 

11014

3๋ถ„๊ธฐ๋ณด๊ณ ์„œ

9๊ฐœ์›” ์‹ค์ 

์žฌ๋ฌด์ œํ‘œ ๊ตฌ๋ถ„ (fs_div)

๊ฐ’

์„ค๋ช…

CFS

์—ฐ๊ฒฐ์žฌ๋ฌด์ œํ‘œ (์žํšŒ์‚ฌ ํฌํ•จ, ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ)

OFS

๊ฐœ๋ณ„์žฌ๋ฌด์ œํ‘œ (ํ•ด๋‹น ๋ฒ•์ธ๋งŒ)

์‹œ์žฅ ๊ตฌ๋ถ„ (corp_cls)

๊ฐ’

์„ค๋ช…

Y

์œ ๊ฐ€์ฆ๊ถŒ์‹œ์žฅ (์ฝ”์Šคํ”ผ)

K

์ฝ”์Šค๋‹ฅ์‹œ์žฅ

N

์ฝ”๋„ฅ์Šค์‹œ์žฅ

E

๊ธฐํƒ€ (๋น„์ƒ์žฅ ๋“ฑ)

์žฌ๋ฌด์ง€ํ‘œ ๋ถ„๋ฅ˜์ฝ”๋“œ (idx_cl_code)

get_financial_index API์—์„œ ์‚ฌ์šฉ (ํ•„์ˆ˜):

์ฝ”๋“œ

์„ค๋ช…

ํฌํ•จ ์ง€ํ‘œ

M210000

์ˆ˜์ต์„ฑ์ง€ํ‘œ

ROE, ROA, ์˜์—…์ด์ต๋ฅ , ์ˆœ์ด์ต๋ฅ  ๋“ฑ

M220000

์•ˆ์ •์„ฑ์ง€ํ‘œ

๋ถ€์ฑ„๋น„์œจ, ์œ ๋™๋น„์œจ, ๋‹น์ขŒ๋น„์œจ ๋“ฑ

M230000

์„ฑ์žฅ์„ฑ์ง€ํ‘œ

๋งค์ถœ์ฆ๊ฐ€์œจ, ์˜์—…์ด์ต์ฆ๊ฐ€์œจ ๋“ฑ

M240000

ํ™œ๋™์„ฑ์ง€ํ‘œ

์ด์ž์‚ฐํšŒ์ „์œจ, ์žฌ๊ณ ์ž์‚ฐํšŒ์ „์œจ ๋“ฑ


๐Ÿ”ง find_company ์ƒ์„ธ

๊ธฐ์—…๋ช…์œผ๋กœ corp_code๋ฅผ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค. 114,951๊ฐœ ์ „์ฒด ๊ธฐ์—… ๋ฐ์ดํ„ฐ์—์„œ ์ฆ‰์‹œ ๊ฒ€์ƒ‰!

ํŠน์ง•:

  • ๐Ÿš€ ๋น ๋ฅธ ๊ฒ€์ƒ‰ (~50ms) - ๋ฏธ๋ฆฌ ๋กœ๋“œ๋œ ๋ฐ์ดํ„ฐ ์‚ฌ์šฉ

  • ๐Ÿ”„ ํ•œ๊ธ€/์˜๋ฌธ ๋™์‹œ ๊ฒ€์ƒ‰ - "๋„ค์ด๋ฒ„" ๊ฒ€์ƒ‰ ์‹œ "NAVER"๋„ ์ฐพ์Œ

  • โญ ์ƒ์žฅ๊ธฐ์—… ์šฐ์„  ์ •๋ ฌ

์š”์ฒญ:

{
  "query": "๋„ค์ด๋ฒ„"
}

์‘๋‹ต:

{
  "status": "000",
  "companies": [
    {
      "corp_code": "00266961",
      "corp_name": "NAVER",
      "stock_code": "035420"
    },
    {
      "corp_code": "01246715",
      "corp_name": "๋„ค์ด๋ฒ„๋žฉ์Šค",
      "stock_code": ""
    }
  ]
}

๐Ÿ› ๏ธ ๊ฐœ๋ฐœ

ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

dart-mcp/
โ”œโ”€โ”€ api/
โ”‚   โ”œโ”€โ”€ index.py          # Vercel ์„œ๋ฒ„๋ฆฌ์Šค ํ•จ์ˆ˜ (SSE)
โ”‚   โ””โ”€โ”€ companies.json    # ๊ธฐ์—… ๋ฐ์ดํ„ฐ (114,951๊ฐœ)
โ”œโ”€โ”€ scripts/
โ”‚   โ””โ”€โ”€ update_companies.py  # ๊ธฐ์—… ๋ฐ์ดํ„ฐ ์—…๋ฐ์ดํŠธ ์Šคํฌ๋ฆฝํŠธ
โ”œโ”€โ”€ src/opendart_mcp/
โ”‚   โ”œโ”€โ”€ server.py         # MCP ์„œ๋ฒ„ ํ•ต์‹ฌ ๋กœ์ง
โ”‚   โ”œโ”€โ”€ api/              # API ๋ชจ๋“ˆ
โ”‚   โ””โ”€โ”€ models/           # Pydantic ๋ชจ๋ธ
โ”œโ”€โ”€ vercel.json           # Vercel ์„ค์ •
โ””โ”€โ”€ pyproject.toml        # ํŒจํ‚ค์ง€ ์„ค์ •

๋กœ์ปฌ ๊ฐœ๋ฐœ

# uv ์‚ฌ์šฉ (๊ถŒ์žฅ)
uv sync
uv run opendart-mcp

# ๋˜๋Š” pip ์‚ฌ์šฉ
pip install -e ".[dev]"
opendart-mcp

๊ธฐ์—… ๋ฐ์ดํ„ฐ ์—…๋ฐ์ดํŠธ

find_company๋Š” api/companies.json ํŒŒ์ผ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ๊ธฐ์—…์ด ๋“ฑ๋ก๋˜๋ฉด ์›” 1ํšŒ ์ •๋„ ์—…๋ฐ์ดํŠธ๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค:

# ๊ธฐ์—… ๋ฐ์ดํ„ฐ ์—…๋ฐ์ดํŠธ (114,000+ ๊ธฐ์—…)
python scripts/update_companies.py

# ๋ณ€๊ฒฝ์‚ฌํ•ญ ๋ฐฐํฌ
git add api/companies.json
git commit -m "Update companies data"
git push

๐Ÿค ๊ธฐ์—ฌํ•˜๊ธฐ

๊ธฐ์—ฌ๋ฅผ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค!

  1. Fork

  2. Feature branch ์ƒ์„ฑ (git checkout -b feature/amazing-feature)

  3. Commit (git commit -m 'Add amazing feature')

  4. Push (git push origin feature/amazing-feature)

  5. Pull Request


๐Ÿ“„ ๋ผ์ด์„ ์Šค

MIT License - ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉ, ์ˆ˜์ •, ๋ฐฐํฌ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.


๐Ÿ”— ๊ด€๋ จ ๋งํฌ


โญ Star History

์ด ํ”„๋กœ์ ํŠธ๊ฐ€ ๋„์›€์ด ๋˜์…จ๋‹ค๋ฉด โญ Star๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”!

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelogโ€ฆ

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      Enables AI agents to query Korean listed companies' financial statements, public disclosures, executive information, and shareholder structures in real-time using the DART API.
      2
      -
    • F
      license
      C
      quality
      D
      maintenance
      Enables AI assistants to access South Korea's financial disclosure system (OpenDART), allowing users to retrieve corporate financial reports, disclosure documents, shareholder information, and automatically extract and search financial statement notes through natural language queries.
      85
      -
    • A
      license
      B
      quality
      D
      maintenance
      Provides natural language access to South Korean corporate disclosure data, financial statements, and shareholder information through the DART Open API. It enables users to query 83 different tools for real-time reporting and regulatory filings from Korean listed companies.
      83
      59 PyPI
      3
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI agents to access Korean corporate disclosure data from DART, allowing natural language queries about companies, financial statements, and disclosures.
      48 npm
      2
      MIT