opendart-fss-mcp
An MCP server that provides access to Korea's DART corporate disclosure system, offering 84 tools for retrieving financial statements, periodic reports, and shareholding information. It enables users to programmatically query and analyze official Korean corporate data via the OpenDART API.
README
opendart-fss-mcp
MCP server for Korea's DART (Financial Supervisory Service) corporate disclosure API.
What is OpenDART?
DART (Data Analysis, Retrieval and Transfer System) is Korea's equivalent of the SEC's EDGAR system. It is the official electronic disclosure system operated by the Financial Supervisory Service (FSS) where all Korean corporations submit their financial reports, major event disclosures, and shareholding information.
OpenDART provides a public API to access this data programmatically.
Features
- 85 tools covering 7 categories — disclosure search, financial statements, periodic reports, shareholding, major events, securities registration, and utilities
- Runs as a stdio or HTTP (Streamable HTTP) MCP server
- Works with Claude Desktop, Claude Code, and any MCP-compatible client
- Smart company search — 6-tier search with Korean initial consonant (chosung) matching and fuzzy typo correction
"삼성전자"exact match,"삼성"prefix,"전자"substring"ㅅㅅㅈㅈ"chosung → 삼성전자,"ㅅㅅSDI"mixed → 삼성SDI"삼선전자"fuzzy → 삼성전자
- Built on FastMCP and opendart-fss SDK
Prerequisites
- Python 3.14+
- uv (recommended package manager)
- OpenDART API Key — get one free at opendart.fss.or.kr
Installation
uv pip install opendart-fss-mcp
Or install from source:
git clone https://github.com/hypn4/opendart-fss-mcp.git
cd opendart-fss-mcp
uv sync
Configuration
Copy .env.example to .env and set your values:
cp .env.example .env
| Variable | Description | Default |
|---|---|---|
OPENDART_API_KEY |
OpenDART API key (required) | — |
OPENDART_MCP_TRANSPORT |
Transport protocol: stdio | http |
stdio |
OPENDART_MCP_HOST |
HTTP bind address | 127.0.0.1 |
OPENDART_MCP_PORT |
HTTP port | 8000 |
OPENDART_MCP_LOG_LEVEL |
Log level: DEBUG | INFO | WARNING | ERROR | CRITICAL |
INFO |
Usage
Claude Desktop
Add to your Claude Desktop configuration (claude_desktop_config.json):
From PyPI:
{
"mcpServers": {
"opendart": {
"command": "uvx",
"args": [
"--from", "opendart-fss-mcp",
"opendart-mcp"
],
"env": {
"OPENDART_API_KEY": "your_api_key_here"
}
}
}
}
From source:
{
"mcpServers": {
"opendart": {
"command": "uv",
"args": [
"run",
"--directory", "/path/to/opendart-fss-mcp",
"opendart-mcp"
],
"env": {
"OPENDART_API_KEY": "your_api_key_here"
}
}
}
}
Claude Code
From PyPI:
claude mcp add opendart -e OPENDART_API_KEY=your_api_key_here -- uvx --from opendart-fss-mcp opendart-mcp
From source:
claude mcp add opendart -e OPENDART_API_KEY=your_api_key_here -- uv run --directory /path/to/opendart-fss-mcp opendart-mcp
CLI
# stdio mode (default)
opendart-mcp
# HTTP mode
opendart-mcp --transport http --host 127.0.0.1 --port 8000
FastMCP
fastmcp run src/opendart_fss_mcp/server.py:mcp
Example Prompts
Show me Samsung Electronics' 2024 consolidated financial statements
Compare revenue and operating profit for Samsung, SK Hynix, and LG Electronics in 2023
Who are the largest shareholders of Hyundai Motor?
What dividends did Samsung pay last year?
Search for M&A-related disclosures from January to June 2024
Has Samsung announced any convertible bond issuances recently?
Show me the executive compensation for POSCO Holdings
What is the auditor's opinion on Kakao's financial statements?
Available Tools
85 tools organized into 7 categories:
| Category | Prefix | Tools | Description |
|---|---|---|---|
| Disclosure | disclosure_ |
5 | Company search, disclosure list, document viewer |
| Financial | financial_ |
7 | Financial statements (single/multi account, XBRL) |
| Report | report_ |
28 | Periodic report key items (compensation, capital, directors, etc.) |
| Shareholding | shareholder_ |
2 | Major shareholder and executive holdings |
| Major Events | event_ |
36 | M&A, capital changes, stock events, lawsuits, and more |
| Registration | registration_ |
6 | Securities registration statement details |
| Utility | utility_ |
1 | Current date/time (KST) |
Development
# Install dev dependencies
uv sync
# Run tests
uv run pytest
# Lint & format
uv run ruff check .
uv run ruff format .
# Type check
uv run pyright
License
MIT
Links
- OpenDART — Official OpenDART API portal
- DART — Electronic Disclosure System
- opendart-fss — Python SDK for OpenDART API
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.