Skip to main content
Glama
GeeYun086

korea-public-data-mcp

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    Each tool is clearly scoped to a specific data source and operation (e.g., search, get data, check status). Tools within the same source have distinct purposes (e.g., dart_search_company vs. dart_get_financial_statements), and the ECOS/KOSIS pairs are well-separated by search vs. retrieval. No overlapping or ambiguous tools.

    Naming Consistency5/5

    All tool names follow a consistent `source_verb_noun` pattern in snake_case (e.g., dart_search_company, ecos_get_key_indicator, koreaexim_get_exchange_rates). The naming convention is uniform across all 13 tools, making it predictable for an agent.

    Tool Count5/5

    13 tools is a well-balanced count for a server aggregating multiple Korean public data sources. Each source (OpenDART, ECOS, KOSIS, data.go.kr, Korea Eximbank) gets a focused set of 2-4 tools, covering search and data retrieval without becoming bloated.

    Completeness4/5

    The tool set covers core operations for each integrated source: search, retrieve financial/statistical data, check business status, and fetch exchange/loan rates. The inclusion of a generic `data_go_kr_generic_get` tool fills gaps for unlisted data.go.kr services. Minor absences like more granular OpenDART disclosure filters or additional KOSIS metadata tools do not critically hinder coverage.

  • Average 3.6/5 across 13 of 13 tools scored. Lowest: 2.6/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 34 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • This server has been verified by its author.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    No annotations are present, so the description carries the full burden of disclosure. It does not mention that this is a read-only operation, what the response format is (which is important since there is no output schema), whether it paginates, or any limitations (e.g., maximum date range, rate limits). The agent has little beyond the parameter types.

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

    Conciseness3/5

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

    The description is short—one sentence. It is front-loaded with the purpose (조회한다). However, it quotes length is reasonable, but it lacks structure (no paragraphs or lists) and could include the date format inline. It is not verbose, but it is under-informative, not just concise.

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

    Completeness2/5

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

    For a tool with 3 required parameters, no output schema, and no annotations, the description is incomplete. It does not tell the agent what the response will look like, how to interpret corp_code, or any usage constraints. The date format instruction is helpful but insufficient given the complexity of the Korean DART system (which has specific code formats and pagination).

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

    Parameters2/5

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

    Schema description coverage is 0%, meaning the parameters have no descriptions other than their types. The tool description only explains the date format (YYYYMMDD) but does not explain what corp_code refers to (likely a DART company code), nor how to obtain it. It adds minimal value over the schema.

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

    Purpose4/5

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

    The description clearly states it retrieves (조회한다) a list of company disclosures (회사 공시 목록) within a date range. The verb '조회한다' (retrieve) and the resource '회사 공시 목록' (company disclosure list) are specific. It is distinguishable from sibling tools, which focus on financial statements, exchange rates, or general search.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool compared to siblings like dart_get_financial_statements or dart_search_company. There is no mention of prerequisites, such as needing a valid corp_code from dart_search_company, which would be critical for an agent to use it correctly.

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

  • Behavior2/5

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

    No annotations are provided, so the description bears the full burden of behavioral disclosure. It only states that the tool searches for tables with a keyword; it does not mention return format, pagination, rate limits, or any side effects (e.g., whether it initiates downloads or is read-only).

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

    Conciseness3/5

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

    The description is short and to the point, which is appropriate for a simple tool. It includes one example. However, it could be more efficient by front-loading the purpose and possibly trimming the example formatting.

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

    Completeness3/5

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

    Given the tool has only one required parameter and no output schema, the description is relatively complete. It identifies the resource being searched (KOSIS statistics tables) and provides examples. However, it lacks any detail on what the search results look like, which limits the agent's ability to plan subsequent steps.

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

    Parameters2/5

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

    The schema has only one parameter 'keyword' with no title or description, and schema description coverage is 0%. The description adds minimal semantic value by noting that the keyword is something like '실업률' or '인구', but it does not explain expected format (e.g., partial vs exact match), language, or constraints.

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

    Purpose4/5

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

    The description clearly states the tool searches for KOSIS statistics tables (org_id/tbl_id) by a keyword. It provides relevant examples ('실업률', '인구', '출생아수') that clarify the type of queries it handles. However, it doesn't explicitly distinguish it from siblings like ecos_search_statistics, which also searches statistical data by keyword.

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

    Usage Guidelines2/5

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

    The description gives no explicit guidance on when to use this tool versus alternatives such as ecos_search_statistics or kosis_get_statistics_data. The context suggests Korean economic/statistical data search, but no exclusions or recommendations for other tools are provided.

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

  • Behavior2/5

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

    No annotations are provided, so the description must carry the full burden of behavioral disclosure. It mentions that the tool retrieves financial statements but does not disclose any side effects, authentication requirements, rate limits, error behavior, or what happens with invalid input. The behavioral traits beyond the action are largely absent.

    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?

    The description is short and front-loaded with the main action. It uses a clear list format for parameter options. Every sentence serves a purpose, and there is no redundant information. It is appropriately sized for the tool's complexity.

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

    Completeness2/5

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

    Given the tool has 4 parameters, no output schema, and no annotations, the description is incomplete. It does not describe the return value format, what 'entire financial statements' includes, error conditions, or pagination. Year parameter is unexplained. The description lacks sufficient context for the agent to fully understand the tool's behavior.

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

    Parameters3/5

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

    Schema description coverage is 0%, so the description must compensate. It explains the allowed values and defaults for 'report' and 'fs_div', and clarifies that 'corp_code' should be obtained from a sibling tool. However, 'year' is not explained (e.g., format, range) and 'corp_code' details are minimal. The description adds some meaning but not for all parameters.

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

    Purpose4/5

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

    The description clearly states the tool retrieves entire financial statements for a single company from OpenDART, which is a specific verb and resource. It also mentions a prerequisite (finding corp_code via dart_search_company). However, it does not explicitly distinguish itself from the sibling tool 'dart_get_company_disclosures', which could be related.

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

    Usage Guidelines3/5

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

    The description provides a prerequisite instruction to use dart_search_company first and explains the allowed values for 'report' and 'fs_div'. However, it does not give explicit guidance on when to use this tool versus alternatives like dart_get_company_disclosures, nor does it state when not to use it.

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

  • Behavior2/5

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

    No annotations are provided, so the description must carry the full behavioral disclosure burden. It does not mention any behavioral traits such as whether the tool is read-only, rate limits, auth requirements, or what happens if invalid parameters are provided. The description only adds the cycle format, which is minimal.

    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?

    The description is very short (two sentences) and front-loaded with the main purpose. However, the second sentence is a list of cycle options, which could be more structured. Still, no redundant information is present.

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

    Completeness2/5

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

    Given the tool has 6 parameters (4 required), no output schema, and no annotations, the description is severely incomplete. It does not explain the meaning of start and end, the format of item_code1 and item_code2, or the expected return format. The context signals confirm high complexity, and the description fails to provide adequate guidance for an agent.

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

    Parameters3/5

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

    Schema description coverage is 0%, so the description must compensate for the lack of parameter documentation. It only explains the cycle parameter and leaves the other five parameters (stat_code, start, end, item_code1, item_code2) completely undocumented. The schema provides no default values for required parameters, so the description adds value only for cycle. This is a partial compensation, earning a baseline-adjusted 3.

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

    Purpose4/5

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

    The description clearly states that the tool retrieves numeric data using a stat_code obtained from a sibling tool (ecos_search_statistics), and specifies the cycle options. It effectively distinguishes its purpose from the search tool and other sibling tools.

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

    Usage Guidelines3/5

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

    The description mentions that the stat_code should come from a sibling tool, providing a basic usage context. However, it does not explain when to use this tool vs. other tools like ecos_get_key_indicator or kosis_get_statistics_data, nor does it provide any exclusions or prerequisites beyond the input schema.

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

  • Behavior2/5

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

    No annotations at all, so the description carries full transparency responsibility. It hints at batching advantages ('individual call repetition prohibited') but omits what gets destroyed (nothing), auth requirements, or whether the tool is read-only or state-changing. A batch-fetch tool needs to clarify whether partial failures are possible and if the result is a single combined table.

    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?

    Three sentences are adequate: first states main action, second explains period selection parameter, third emphasizes batch advantage. Every sentence earns its place, but a bit more structure (e.g., a line for required params) would help scannability.

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

    Completeness2/5

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

    With no output schema and 0% schema parameter descriptions, the description should compensate by stating return format (e.g., rows/columns), handling of missing data, maximum period range, and error responses for invalid IDs. Sibling tools (ecos_search_statistics etc.) add context but don't fill gaps for this tool's specific output.

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

    Parameters2/5

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

    Schema coverage is 0%, so the description is the only source for parameter meaning. It explains prd_se values ('Y'/'Q'/'M') and teaches start_prd~end_prd as a range idiom. But org_id, tbl_id, item_ids, and end_prd are not described: org_id and tbl_id are required and assumed from kosis_search_statistics results, yet no linking description is given.

    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?

    Uses a specific verb ('retrieve') and specific resource ('statistics data for org_id/tbl_id found via kosis_search_statistics'), then distills from sibling tools (dart_, ecos_, kosis_) by referring to the search tool. Distinct from dart's financial statements and ecos's indicator data.

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

    Usage Guidelines4/5

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

    Explicitly states when to use: after kosis_search_statistics provides org_id/tbl_id. Also gives explicit when-not: avoid individual calls by using start_prd~end_prd batched range. No mention of when to prefer siblings like ecos_get_statistic_data for other data sources.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It implies a read operation but does not explicitly state that it is non-destructive, does not mention authentication requirements, rate limits, or error handling behaviors. The only behavioral point is the default date logic.

    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?

    The description is extremely concise: two short sentences covering the core purpose and the single parameter. Every word adds value, with no redundancy or filler. It is front-loaded with the primary action.

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

    Completeness3/5

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

    Given the tool's simplicity (one optional parameter, no output schema), the description is adequate for basic understanding. However, it lacks information about the response structure, potential empty results, or any connection to other Korea Eximbank data. It is minimally viable but not fully complete.

    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?

    The input schema has 0% description coverage (the property has only a title). The description adds meaningful detail by specifying the accepted formats (YYYYMMDD or YYYY-MM-DD) and the default behavior (current business day if omitted). This compensates well for the schema gap.

    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?

    The description explicitly states the tool retrieves international interest rates (LIBOR etc.) from Korea Eximbank. This is a specific verb+resource combination, and it clearly distinguishes from sibling tools like koreaexim_get_exchange_rates (currency) and koreaexim_get_loan_rates (loans).

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or exclusions. It only describes the parameter format and default, which is insufficient for an agent deciding between sibling tools.

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

  • Behavior3/5

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

    No annotations are provided, so the description must carry the full burden. It adds transparency about the input format (YYYYMMDD or YYYY-MM-DD) and default behavior (current business day if omitted). However, it fails to disclose other behavioral aspects such as authentication requirements, rate limits, or whether the tool returns a single value or a list.

    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?

    The description is extremely concise at two sentences. The first sentence immediately states the purpose, and the second covers the parameter. Every word earns its place, and the structure is well front-loaded.

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

    Completeness2/5

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

    The description lacks information about the output format or data structure. Since there is no output schema, the description should at least hint at what the tool returns (e.g., a single rate, multiple rates, or additional fields). This gap makes the tool less self-contained for an agent without prior knowledge.

    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?

    The input schema has 0% description coverage, leaving the parameter `search_date` completely unexplained. The description compensates by specifying the accepted formats and default behavior, which adds essential meaning beyond the bare schema. This is helpful for correct invocation.

    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?

    The description clearly states the tool retrieves loan rates (fixed base rate) from the Korea Export-Import Bank. The verb '조회한다' (retrieves/query) and resource '대출금리' (loan rates) are specific, and the tool is easily distinguished from siblings like exchange rate or international rate tools.

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

    Usage Guidelines2/5

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

    The description does not provide any explicit guidance on when to use this tool versus alternatives. While the sibling tools cover different financial data types, the description relies on the user to infer usage context from the name rather than stating it explicitly.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries the full burden. The description accurately describes the operation as a search (read-only) but does not disclose important behavioral aspects such as whether it returns multiple results, pagination behavior, or any rate limits. With zero annotations, a score of 3 is appropriate as it doesn't offer deep behavioral insight beyond the single sentence.

    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?

    The description is very concise at two short sentences. It directly states the core function in the first sentence and adds usage context in the second. Every word serves a purpose, and there is no redundancy. However, it could be slightly improved by more clearly separating the main purpose from additional context, but overall it's efficient.

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

    Completeness3/5

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

    Given the tool has a single required parameter, no output schema, no annotations, and a clear purpose, the description is nearly sufficient but lacks details on the return format (e.g., what fields are returned alongside the stat_code). The sibling context suggests other tools exist for fetching data once the code is known, but the description doesn't explicitly connect this. Overall, adequate for a simple search tool but leaves some gaps.

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

    Parameters2/5

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

    Schema description coverage is 0%, meaning the schema itself provides no description for the only parameter 'keyword'. The description mentions that the tool searches by keyword but does not elaborate on the nature of acceptable keywords (e.g., English or Korean, partial match, case sensitivity). For a single parameter with zero schema documentation, the description should compensate, but it barely does.

    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?

    The description clearly states the tool's purpose: searching for ECOS statistics tables by keyword. It uses specific verb-resource pairing (검색한다+ECOS 통계표) and distinguishes the return value being a stat_code. The additional phrase '사전 등록되지 않은 지표를 찾을 때 사용' adds context that this tool is for finding unregistered indicators, which differentiates it from sibling tools like ecos_get_statistic_data that likely use an already-known code.

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

    Usage Guidelines4/5

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

    The description provides clear context on when to use this tool: when searching for a stat_code for an indicator that is not pre-registered. However, it does not explicitly state when NOT to use it (e.g., if you already have the stat_code) or explicitly name alternatives. The sibling tool ecos_get_statistic_data is implied as the alternative for when you have the code, but this is not stated outright.

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

  • Behavior2/5

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

    With no annotations, the description alone must disclose behavioral traits. It indicates a read operation but omits details on error handling (e.g., invalid numbers), rate limits, authentication needs, or whether the operation is idempotent. This lack of transparency could lead to confusion during execution.

    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?

    The description is extremely concise—two sentences and an example—with no redundant words. The key constraint (format, limit) and usage pattern are front-loaded, earning every sentence its place.

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

    Completeness4/5

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

    For a simple one-parameter tool without an output schema, the description covers input format and batch limit adequately. It lacks details about the return value or status, but given the tool's straightforward nature (batch status check), it is mostly complete. Minor gap: no mention of what '상태' (status) entails.

    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?

    The input schema has 0% description coverage, so the description must compensate. It adds significant semantic value: explains the expected number format (10 digits, no hyphen), batch limit (100), and provides an example. This goes well beyond the bare schema definition.

    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?

    The description clearly identifies the specific verb '조회한다' (inquire/check) and the resource 'business registration numbers', with precise constraints: 10 digits, no hyphen, max 100 batch. This distinguishes it from sibling tools which focus on different Korean data sources (dart, ecos, kosis, etc.).

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

    Usage Guidelines4/5

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

    The description explicitly states the required input format (10 digits without hyphen) and batch size limit (100), which are key usage guidelines. While it does not mention when not to use (there are no direct alternatives), the provided constraints are clear and actionable for an AI agent.

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

  • Behavior3/5

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

    With no annotations provided, the description must convey behavioral traits. It mentions that serviceKey is auto-filled (an important side effect), but does not disclose other behaviors such as rate limits, authentication requirements, error handling, or whether the tool is read-only or destructive. The description implies a safe call, but lacks explicit behavioral details beyond the auto-fill mechanism.

    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?

    The description is remarkably concise: three sentences that front-load the purpose, then dive into usage details. Every sentence adds unique value—purpose, parameter semantics, and recommendation for alternatives. No wasted words.

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

    Completeness4/5

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

    Given that there is no output schema, the description does not mention return values or error formats. However, for a generic endpoint tool, the focus on input parameters and usage is appropriate. The description covers why, when, and how to use it, but could benefit from a note on response format or common error codes. Still, it feels sufficient for an agent to invoke correctly.

    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?

    There are 3 parameters (base_url, path, params) with 0% schema description coverage, meaning the schema provides no descriptions. The description compensates by explaining that base_url and path come from the endpoint, and params should not include serviceKey. It also notes that params is an object (additionalProperties: true). While not exhaustive (e.g., no format details for base_url), it adds significant meaning beyond the bare schema.

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

    Purpose4/5

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

    The description clearly states it is a generic tool for calling other public data portal services not having a client code. It specifies the verb (call/invoke) and the resource (공공데이터포털 services), distinguishing it from sibling tools that are specialized (e.g., dart_search_company, kosis_get_statistics_data). However, it does not explicitly name these siblings, relying on the context of 'pre-made client tools'.

    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?

    The description provides excellent usage guidance: it explains when to use this tool (for services without client code), what to put in base_url/path (endpoint from application details), and what not to include in params (excluding serviceKey since it's auto-filled). It also recommends creating a dedicated client/tool for frequently used services, pointing to a README extension guide. This explicitly helps the agent decide between this generic tool and alternatives.

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

  • Behavior5/5

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

    With no annotations provided, the description fully compensates by clearly explaining date format requirements (monthly=YYYYMM, quarterly=YYYYQn, daily=YYYYMMDD) and listing the exact supported indicators. This is sufficient behavioral context for an agent to use the tool correctly.

    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?

    The description is extremely concise—two short sentences. The first sentence states the core purpose, and the second provides enumerations and format rules. No wasted words.

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

    Completeness4/5

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

    Given the low schema coverage (0%) and no annotations or output schema, the description covers purpose, parameter options, and date format rules. It is nearly complete for this simple key indicator lookup tool, though it omits details like error handling or response shape.

    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?

    The schema provides 0% description coverage, meaning no parameter descriptions exist. The tool description adds significant value by specifying the exact indicator values and date format rules. However, it could benefit from clarifying start/end meaning (e.g., date range, inclusive) but is adequate.

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

    Purpose4/5

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

    The description clearly states the tool fetches frequently searched macroeconomic indicators by name, listing four specific indicator values. It is distinct from sibling tools like ecos_search_statistics and ecos_get_statistic_data, which imply broader search or data retrieval, while this tool targets specific key indicators.

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

    Usage Guidelines4/5

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

    The description provides specific indicator names ('기준금리', etc.) and start/end date format rules based on indicator frequency. However, it lacks explicit guidance on when to use this tool versus alternatives, such as ecos_get_statistic_data for a wider range of statistics.

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

  • Behavior3/5

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

    No annotations are provided, so the description must disclose behavior. It states the tool searches by company name and returns a corp_code, which covers the core purpose. However, it does not disclose potential behavior such as partial matches, error handling, rate limits, or whether it is read-only versus destructive. The description is adequate for a simple data lookup but lacks depth.

    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?

    The description is two sentences plus an example, with no wasted words. It is front-loaded with the core purpose and immediately provides usage context and an example.

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

    Completeness4/5

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

    Given the simple tool (2 parameters, no output schema, no annotations), the description covers the essential information: what it does, when to use it, and an example. It does not explicitly describe the return value format, but for this tool it is adequately implied.

    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 description coverage is 0%, so the description must compensate. It describes 'company_name' with an example ('삼성전자'), clarifying the expected input. The 'limit' parameter is not mentioned, but its default value of 10 and integer type are in the schema. The description adds significant semantic value for 'company_name'.

    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?

    The description states a specific verb ('검색한다') and resource ('OpenDART corp_code'), and clearly distinguishes the tool's role as a preliminary step before financial statement or disclosure queries. The example '삼성전자' clarifies the input format.

    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?

    The description explicitly says to call this tool before financial statement or disclosure searches, providing a clear when-to-use directive. It does not mention alternatives, but the sibling list includes similar DART tools, so the context is sufficient.

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

  • Behavior4/5

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

    No annotations are provided, so the description carries the full burden. It discloses that data may be empty if queried before 11 AM on a business day or on a non-business day, and that the date defaults to the current business day. It does not mention authentication, rate limits, or whether the operation is read-only (though implicit from 'get').

    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?

    Three sentences, each earning its place: purpose, parameter details, behavioral note. Information is front-loaded and no words are wasted. Ideal length for a single-parameter tool.

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

    Completeness4/5

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

    Given the tool's simplicity (one parameter, no output schema, no annotations), the description covers the main usage and limitations. However, it does not describe the return format or fields, which would be useful for an agent. Still, it is largely complete for the task.

    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 description coverage is 0%, so the description must compensate. It fully explains the search_date parameter: accepted formats (YYYYMMDD or YYYY-MM-DD), default behavior (current business day if omitted), and the consequence of querying at certain times. This adds significant meaning beyond the bare schema.

    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?

    The description clearly states the tool retrieves current exchange rates (basic rate/telegraphic transfer rate) from Korea Exim Bank, using a specific verb (조회하다) and resource. It distinguishes from sibling tools like get_loan_rates and get_international_rates by naming the exact rate types.

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

    Usage Guidelines4/5

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

    The description explains when to use the tool (for exchange rates) and provides practical context: search_date format, default behavior, and warning about empty data on non-business days or before 11 AM. It does not explicitly state when not to use it or name alternatives, but the sibling tools are clearly different domains.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

korea-public-data-mcp MCP server

Copy to your README.md:

Score Badge

korea-public-data-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/GeeYun086/korea-public-data-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server