Skip to main content
Glama

FinBridge

Korean Disclosure Filings (DART)

get_dart_filings
Read-only

List corporate disclosure filings from DART, optionally filtered by company, date range, and disclosure type. Report names are in Korean.

Not this tool for: US filings (get_edgar_filings), a cross-market feed already stored here (get_disclosure_feed), or major-event reports specifically (get_dart_major_events, a narrower slice of this one).

Args:

  • corp: optional — Company: Korean name (e.g. '삼성전자'), 6-digit stock code (e.g. '005930'), or 8-digit DART corp_code (e.g. '00126380'). Omit for a market-wide list.

  • from / to: YYYY-MM-DD (default: last 90 days)

  • type: DART pblntf_ty — A=periodic reports(정기공시), B=major events(주요사항보고), C=securities issuance(발행공시), D=ownership/stake(지분공시), E=other(기타공시), F=external audit(외부감사관련), G=funds(펀드공시), H=asset securitization(자산유동화), I=KRX disclosures(거래소공시), J=fair trade(공정위공시)

  • limit: results per page, 1-100 (default 20); page: page number (default 1)

Returns: {total, page, filings: [{rcept_no, corp_name, report_nm, flr_nm, rcept_dt, url}]} — url opens the filing in the DART viewer. Pass rcept_no to get_dart_document to explore its primary body by outline, section, or table.

Examples:

  • {corp: '삼성전자'} -> Samsung filings in the last 90 days

  • {type: 'A', from: '2026-03-01', to: '2026-03-31'} -> March periodic reports market-wide

Use to track what a company disclosed. For major events with keyword filtering use get_dart_major_events. Errors: no filings in range (DART status 013) -> widen dates or drop filters; unknown company -> search_dart_company.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toNoEnd date YYYY-MM-DD (default: today)
corpNoOptional filter — Company: Korean name (e.g. '삼성전자'), 6-digit stock code (e.g. '005930'), or 8-digit DART corp_code (e.g. '00126380')
fromNoStart date YYYY-MM-DD (default: 90 days ago)
pageNoPage number (default 1)
typeNoDisclosure type: A=periodic, B=major events, C=issuance, D=ownership, E=other, F=audit, G=funds, H=asset-backed, I=KRX, J=fair-trade
freshNofalse (default): answer from FinBridge's DART filings index (refreshed every 5 minutes) for the part of the window it covers, and ask DART live only for the uncovered remainder (saves DART's daily quota). true: ask DART directly for the whole window; on daily-quota exhaustion (020), falls back to the index for whatever it covers and says what could not be refreshed.
limitNoResults per page, 1-100 (default 20)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
noteNo
pageNo
totalNo
filingsYes
sourcesNo
uncoveredNo
index_as_ofNo
served_fromNo
quota_fallbackNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed7 schema fields changed
    • changedInput schema / properties / fresh / description
      Previous value: -"false (default): answer from FinBridge's DART filings index (refreshed every 5 minutes) when it covers the window, DART otherwise. true: ask DART directly."New value: +"false (default): answer from FinBridge's DART filings index (refreshed every 5 minutes) for the part of the window it covers, and ask DART live only for the uncovered remainder (saves DART's daily quota). true: ask DART directly for the whole window; on daily-quota exhaustion (020), falls back to the index for whatever it covers and says what could not be refreshed."
    • addedOutput schema / properties / index_as_of
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / note
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / quota_fallback
      Added value: +{
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / served_from
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / sources
      Added value: +{
      +  "additionalProperties": true,
      +  "properties": {},
      +  "type": "object"
      +}
    • addedOutput schema / properties / uncovered
      Added value: +{
      +  "items": {
      +    "additionalProperties": true,
      +    "properties": {},
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
  2. Changed1 schema field changed
    • addedInput schema / properties / fresh
      Added value: +{
      +  "default": false,
      +  "description": "false (default): answer from FinBridge's DART filings index (refreshed every 5 minutes) when it covers the window, DART otherwise. true: ask DART directly.",
      +  "type": "boolean"
      +}
  3. First observed

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnlyHint, destructiveHint=false), but the description adds non-obvious context: report names are in Korean, error codes (DART 013 for empty range, 020 for quota exhaustion) with recovery advice, and the follow-up path of passing rcept_no to get_dart_document. It does not restate what the read-only annotation already conveys, which is the right call.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well front-loaded: purpose, then exclusions, args, returns, examples, errors. It is on the long side and partly restates schema parameter lines, but each block is scannable and earns its place for a 7-parameter tool with quota subtlety.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an open-world, quota-sensitive, 7-parameter list tool, the description covers filtering, defaults, pagination, return fields, next-step chaining, and error recovery. An output schema exists, yet the brief return summary is only a glanceable convenience rather than a gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description expands the `type` enum with full Korean label meanings for every code and gives worked examples showing acceptable corp formats and date combinations. This adds genuine interpretation value over the terse schema enum descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource ('List corporate disclosure filings from DART') and enumerates the filter dimensions. The 'Not this tool for' block explicitly separates it from get_edgar_filings, get_disclosure_feed, and get_dart_major_events, so an agent can distinguish it from siblings without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use ('track what a company disclosed'), when-not-to-use (four named alternative tools with the condition that selects each), and reinforces the routing with a closing line about keyword-filtered major events. Nothing is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.