Skip to main content
Glama

FinBridge

Search Korean Companies (DART)

search_dart_company
Read-only

Search companies registered with DART, South Korea's corporate disclosure system, by name, 6-digit stock code, or 8-digit DART corp_code. Returns the corp_code required by the other dart_* tools.

Not this tool for: US registrants (use search_edgar_company). Japan, Taiwan and Europe have no search tool — reach them through query_db on the companies table.

Args:

  • query: company name in Korean ('삼성전자') or English ('Samsung Electronics'), 6-digit KRX stock code ('005930'), or 8-digit corp_code

  • listed_only: restrict to KRX-listed companies (default true). Set false to include ~90k unlisted entities.

  • limit: max results, 1-50 (default 10)

Returns: {count, companies: [{corp_code, corp_name, corp_name_en, stock_code}]} — corp_name is the Korean name DART registers, corp_name_en the registered English name where the company files one (about three quarters of Korean issuers). stock_code is null for unlisted companies. Match priority: exact stock code > exact Korean name > listed Korean partial > unlisted Korean partial > English name. English matching reads our own company table, so it covers issuers whose English name we hold, not every DART entity.

Examples:

  • {query: '삼성전자'} -> corp_code 00126380, stock_code 005930

  • {query: '카카오', listed_only: false} -> listed 카카오 plus unlisted same-name entities

  • {query: 'Samsung Electronics'} -> 삼성전자 (matched on the registered English name)

Use when you need a corp_code or must disambiguate similar names. Don't use for US companies (use search_edgar_company). Errors: DART_API_KEY not configured; no match returns count 0 (not an error).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMax results, 1-50 (default 10)
queryYesCompany name, 6-digit stock code, or 8-digit DART corp_code
listed_onlyNoOnly KRX-listed companies (default true)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
countYes
companiesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedOutput schema / properties / companies / items / properties / corp_name_en
      Added value: +{
      +  "$ref": "#/properties/companies/items/properties/corp_code"
      +}
  2. First observed

TDQS

A5/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds valuable behavioral details: no-match returns count 0 (not an error), DART_API_KEY error condition, match priority ordering, and English name matching limitations. These go well beyond annotations and inform the agent of edge cases.

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

Conciseness5/5

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

Though long, the description is front-loaded with purpose and usage, then parameters, return format, matching, examples, and errors. Each sentence adds value; no fluff. The structure uses headers ('Args:', 'Returns:', 'Match priority:', 'Examples:') which aids scanning. Appropriate length for the tool's complexity.

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?

Covers all necessary information: purpose, usage, parameters, return structure, matching behavior, examples, error conditions, and limitations. Even though an output schema exists, the description explains the return format clearly. The tool's complexity (multiple query types, matching priority, edge cases) is fully addressed.

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

Parameters5/5

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

Schema coverage is 100%, so baseline is 3. The description goes beyond schema by explaining query accepts name/stock code/corp_code, clarifying listed_only default and meaning, and detailing match priority (exact stock code > Korean name > partial > English). This adds substantial semantic value beyond the schema's terse 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?

Description states a specific verb ('search'), resource ('companies registered with DART'), and output (corp_code required by other dart_* tools). It distinguishes itself from search_edgar_company by name and usage, and clarifies its role as the entry point for DART tools. Purpose is unambiguous and differentiated.

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?

Explicitly tells when to use ('Use when you need a corp_code or must disambiguate similar names') and when not to use ('Don't use for US companies' with alternative 'use search_edgar_company'). Also covers Japan/Taiwan/Europe via query_db. No ambiguity left for the agent.

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.