Mcp Opendart Server

io.github.kcw2034-sayouzone由 GitHub 账号 kcw2034-sayouzone 发布v0.0.4更新于 Oct 24, 2026

An MCP server that provides OpenDart API

已验证STDIO仅桌面金融数据与分析

概览

AI 生成的概览

一个本地 MCP 服务器,让助手通过 OpenDART API 获取韩国股票基本面、财务报表和分红数据。

可以做什么
按公司名称(如三星电子)获取 OpenDART 的基本面与股票基本信息,可按年份和季度查询(例如 2025 年第三季度)。查询公司的财务报表与财务状况。查询分红信息与分红派息趋势。README 的包结构还列出公告、股权、证券申报书和定期报告主要事项的解析器,但未公布具体工具列表。
适用场景
适合让助手基于 OpenDART 官方数据回答韩国上市公司财务、分红或公告相关问题,而不是依赖一般网络来源。
运行要求
作为本地进程运行(PyPI 包 sayou-opendart-mcp,stdio 传输)。需要通过 OPENDART_API_KEY 环境变量提供 OpenDART API 密钥,并需要访问 OpenDART 服务的网络连接。仅限桌面端,无网页可执行版本。
安装前请注意
服务器需要以 OPENDART_API_KEY 提供 OpenDART API 密钥,请勿将其写入共享配置或日志。查询内容会发送到外部 OpenDART 服务。README 还展示了可选的 Cloud Run 部署步骤,涉及 Google Cloud 服务账号和身份令牌,本地使用无需这些。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Mcp Opendart Server,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

OpenDart MCP Server

OpenDart Crawling and Caching MCP Server

주식 정보를 OpenDart에서 종목 기본 정보 (펀더멘탈, fundamental)를 가져온다.

모델 컨텍스트 프로토콜 (Model Context Protocol, MCP) 서버를 빌도하고 배포
MCP 서버는 LLM에 외부 도구 및 서비스에 대한 액세스 권한을 제공
FastMCP를 사용, MCP 서버와 클라이언트를 빌드하는 빠르고 Pythonic한 방법을 제공

  • Gemini 3.0 Pro
  • Gemini 3.0 Flash
참조 문서

패키지 구조

├── opendart/│   ├── __init__.py          # 공개 API 정의│   ├── client.py            # OpenDART HTTP 클라이언트│   ├── models.py            # 데이터 클래스 (DTO)│   ├── utils.py             # 유틸리티 함수 & 상수│   ├── crawler.py           # 통합 인터페이스 (Facade)│   ├── examples.py          # 사용 예시│   └── parsers/│       ├── __init__.py│       ├── document.py        # 문서 API 파서│       ├── document_viewer.py # 문서 뷰어 API 파서│       ├── disclosure.py      # 공시정보 API 파서│       ├── finance.py         # 정기보고서 재무정보 API 파서│       ├── material_facts.py  # 주요사항보고서 주요정보 API 파서│       ├── ownership.py       # 지분공시 종합정보 API 파서│       ├── registration.py    # 증권신고서 주요정보 API 파서│       └── reports.py         # 정기보고서 주요정보 API 파서├── tests/│   ├── test_opendart.py       # OpenDART 테스트 (로컬 소스)│   └── test_opendart_.py      # OpenDART 테스트 (sayou-stock)├── __init__.py├── .gitignore├── Dockerfile├── LICENSE├── opendarts.py├── pyproject.toml├── README.md├── requirements.txt└── server.py

배포 (Cloud Run)

bash
MCP_SERVER_NAME=opendart-mcp-serverexport GOOGLE_CLOUD_PROJECT=sayouzone-ai
GCP 설정 (1회만)

서비스 활성화

bash
gcloud services enable \  run.googleapis.com \  artifactregistry.googleapis.com \  cloudbuild.googleapis.com

서비스 계정 생성

bash
gcloud iam service-accounts create mcp-server-sa --display-name="MCP Server Service Account"
bash
gcloud projects add-iam-policy-binding $GOOGLE_CLOUD_PROJECT \    --member=user:$(gcloud config get-value account) \    --role='roles/run.invoker'
bash
gcloud projects add-iam-policy-binding $GOOGLE_CLOUD_PROJECT \    --member=serviceAccount:mcp-server-sa@$GOOGLE_CLOUD_PROJECT.iam.gserviceaccount.com \    --role="roles/secretmanager.secretAccessor"
배포

패키지 소스로 테스트

bash
gcloud run deploy $MCP_SERVER_NAME \    --service-account=mcp-server-sa@$GOOGLE_CLOUD_PROJECT.iam.gserviceaccount.com \    --no-allow-unauthenticated \    --region=us-central1 \    --source=. \    --labels=dev-tutorial=stocks-mcp

패키지 소스 및 접근권한 테스트

bash
gcloud run deploy $MCP_SERVER_NAME \    --region=us-central1 \    --source=. \    --labels=dev-tutorial=stocks-mcp

sayou-stock 설치 및 테스트

bash
gcloud run deploy $MCP_SERVER_NAME \    --service-account=mcp-server-sa@$GOOGLE_CLOUD_PROJECT.iam.gserviceaccount.com \    --no-allow-unauthenticated \    --region=us-central1 \    --source=. \    --labels=dev-tutorial=stocks-mcp

sayou-stock 설치 및 접근권한 테스트

bash
gcloud run deploy $MCP_SERVER_NAME \    --region=us-central1 \    --source=. \    --labels=dev-tutorial=stocks-mcp

Tests

Gemini 테스트
bash
export PROJECT_NUMBER=$(gcloud projects describe $GOOGLE_CLOUD_PROJECT --format="value(projectNumber)")export ID_TOKEN=$(gcloud auth print-identity-token)

settings.json

json
{    "ide": {        "hasSeenNudge": true    },    "mcpServers": {        "opendart-remote": {            "httpUrl": "https://opendart-mcp-server-$PROJECT_NUMBER.us-central1.run.app/mcp",            "headers": {                "Authorization": "Bearer $ID_TOKEN"            }        }    },    "security": {        "auth": {            "selectedType": "gemini-api-key"        }    }}

Copy settings.json file to ~/.gemini/ directory.

bash
cp settings.json ~/.gemini/
bash
gemini
  • 삼성전자
  • 삼성전자 재무제표 보여줘
  • 삼성전자 재무 상태를 보여줘
  • 삼성전자 재무제표 보여줘
  • 2024년 삼성전자 재무제표 보여줘
  • 2025년 3분기 삼성전자 재무제표 보여줘
  • 삼성전자 배당 정보를 보여줘
  • 삼성전자 배당에 대해 알려줘
  • 삼성전자 배당이 어떻게 되지?
  • 2025년 삼성전자 배당이 어떻게 되지?
  • 삼성전자 최근 배당 성향에 대해 알려줘
  • 삼성전자가 지급하는 보상에 대해 알려줘
bash
Loaded cached credentials.
 ███            █████████  ██████████ ██████   ██████ █████ ██████   █████ █████░░░███         ███░░░░░███░░███░░░░░█░░██████ ██████ ░░███ ░░██████ ░░███ ░░███  ░░░███      ███     ░░░  ░███  █ ░  ░███░█████░███  ░███  ░███░███ ░███  ░███    ░░░███   ░███          ░██████    ░███░░███ ░███  ░███  ░███░░███░███  ░███     ███░    ░███    █████ ░███░░█    ░███ ░░░  ░███  ░███  ░███ ░░██████  ░███   ███░      ░░███  ░░███  ░███ ░   █ ░███      ░███  ░███  ░███  ░░█████  ░███ ███░         ░░█████████  ██████████ █████     █████ █████ █████  ░░█████ █████░░░            ░░░░░░░░░  ░░░░░░░░░░ ░░░░░     ░░░░░ ░░░░░ ░░░░░    ░░░░░ ░░░░░
Tips for getting started:1. Ask questions, edit files, or run commands.2. Be specific for the best results.3. Create GEMINI.md files to customize your interactions with Gemini.4. /help for more information.
╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮│ Gemini CLI update available! 0.14.0 → 0.15.0                                                                            ││ Installed via Homebrew. Please update with "brew upgrade".                                                              │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

⠋ Connecting to MCP servers... (1/2)
 Using: 2 MCP servers╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮│ >   Type your message or @path/to/file                                                                                  │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ~/.../src/sayou/mcp/stocks_mcp (main*)                                      no sandbox (see /docs)                                       auto

Deploy sayou-stock

bash
git push origin maingit tag sayou-stock-v0.1.1git push origin sayou-stock-v0.1.1 

Errors

bash
> /mcp
Configured MCP servers:
🟢 stocks-remote - Ready (4 tools)  Tools:  - find_fnguide_data  - find_yahoofinance_data  - get_yahoofinance_fundamentals  - save_fundamentals_data_to_gcs
🟢 zoo-remote - Ready (2 tools, 1 prompt)  Tools:  - get_animal_details  - get_animals_by_species  Prompts:  - find

ℹ Gemini CLI update available! 0.14.0 → 0.15.0  Installed via Homebrew. Please update with "brew upgrade".
 Using: 2 MCP servers╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮│ >   Type your message or @path/to/file                                                                                  │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ~/.../src/sayou/mcp/stocks_mcp (main*)                     no sandbox (see /docs)                                     auto
bash
> 삼성전자
ℹ Gemini CLI update available! 0.14.0 → 0.15.0  Installed via Homebrew. Please update with "brew upgrade".╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮│ x  find_fnguide_data (stocks-remote MCP Server) {"stock":"삼성전자"}                                                      ││                                                                                                                         ││    MCP tool 'find_fnguide_data' reported tool error for function call: {"name":"find_fnguide_data","args":{"stock":"삼성전자"}} with  ││    response: [{"functionResponse":{"name":"find_fnguide_data","response":{"error":{"content":[{"type":"text","text":"Error calling tool ││    'find_fnguide_data': BrowserType.launch: Executable doesn't exist at                                                                     ││    /root/.cache/ms-playwright/chromium_headless_shell-1194/chrome-linux/headless_shell\n╔══════════════════════════════════════════════════ ││    ══════════╗\n║ Looks like Playwright was just installed or updated.       ║\n║ Please run the following command to download new          ││    browsers: ║\n║                                                            ║\n║     playwright install                                    ││    ║\n║                                                            ║\n║ <3 Playwright Team                                                  ││    ║\n╚════════════════════════════════════════════════════════════╝"}],"isError":true}}}}]                                                 │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮│ -  Shell playwright install [current working directory /Users/seongjungkim/Development/sayouzone/base-framework/src/sayou/mcp/stocks_mcp] … │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

References

来源:README.md,提交 31963b2

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.0.4最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分