Skip to main content
Glama

datagokr — 한국 공공데이터 검색 (Korean public data search)

Server Details

Search Korea's public data portal (data.go.kr): find datasets, schema, preview rows, download steps

Glama couldn't complete the latest health check. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.

If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.

Status
Unhealthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
datagokr-dev/datagokr
GitHub Stars
0
Server Listing
datagokr

TDQS

A4.1/5.0

Scored across 6 tools

Disambiguation5/5

Each tool has a distinct purpose and the descriptions explicitly guide users on when to use which tool (e.g., search vs fields based on topic presence, show vs get_preview for schema vs rows). Cross-references are clear, minimizing misselection.

Naming Consistency3/5

Tool names mix verb_noun patterns (download_url, get_preview) with single nouns (fields, record, search, show). While readable, the lack of a consistent convention reduces predictability.

Tool Count5/5

With 6 tools, the server is well-scoped: each tool earns its place for discovery, inspection, and access instructions. No excess or missing tools for the core purpose.

Completeness5/5

The tool surface covers the full search lifecycle: finding datasets by topic or columns (search, fields), inspecting details (show), previewing data (get_preview), and obtaining download/access instructions (download_url, record). No obvious gaps for a search-focused server.

Available Tools

6 tools
download_url다운로드 방법 (How to download)A
Read-only
Inspect

전체 데이터를 사용자 컴퓨터로 받는 방법을 알려줍니다. 서버가 파일을 대신 저장하진 않고 주소·요청값·절차를 돌려줍니다. Get client-side download instructions (URL, params, steps). The server never stores files. 반환: access_kind, url 또는 post_url/get_url, params, version_keys(파일 버전), message(절차), page_url. 예: '15028200 전체 JSON 받는 법', '15000001 원본 파일 다운로드 주소'

ParametersJSON Schema
NameRequiredDescriptionDefault
dataset_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior4/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 genuinely useful behavior beyond that: the server does not proxy or store the file, it returns instructions (URL/params/steps) for the client to execute, and it enumerates the response shapes (access_kind, url vs post_url/get_url, params, version_keys, message, page_url). This prevents the classic mistake of assuming the call itself downloads data.

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 key claim ('server never stores files') and the core verb+resource are front-loaded, and the bilingual redundancy is mostly justified for a user-facing help tool. The return-field enumeration is somewhat expendable given an output schema exists, but the description is not bloated.

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 single-parameter, read-only tool with an output schema, the description covers the essential behavioral surprise (no server-side storage, instructions-only response) and shows realistic triggers. The only real gap is that the required dataset_id argument is never explained, which is the one thing an agent cannot infer for certain.

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?

There is exactly one parameter (dataset_id) and schema description coverage is 0%, so the description must carry the burden of explaining it. It never mentions dataset_id, its format, or where to obtain it; the numeric IDs appear only inside example user queries, which is indirect at best. The description instead spends its detail on return fields, which the output schema already covers.

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 English sentence states a specific verb+resource: 'Get client-side download instructions (URL, params, steps)'. It also pre-empts the most likely misreading by saying 'The server never stores files', which separates it from an actual file-fetch tool. No sibling tool is named, but none of the listed siblings (fields, get_preview, record, search, show) overlap in function.

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?

Usage is only implied through two sample queries ('15028200 전체 JSON 받는 법', '15000001 원본 파일 다운로드 주소'), which show the agent when such a request arises. There is no explicit when-to-use statement, no condition that selects this over get_preview or show, and no exclusions.

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

fields컬럼으로 찾기 (Find by columns)A
Read-only
Inspect

주제 없이 컬럼만 조건일 때(query는 빈 문자열로 고정됨). 주제가 있으면 search(query, fields=...)를 쓰세요. Find datasets with ALL given columns and no topic; for a topic use search(query, fields=...). names에 적은 컬럼을 전부 가진 데이터셋만 나옵니다(필드명 역색인). dtype/org로 좁힐 수 있고 n은 최대 20. 반환: id, title, org_nm, dtype, access_kind, page_url, rank, matched_fields(일치한 컬럼), last_probe_ok.

ParametersJSON Schema
NameRequiredDescriptionDefault
nNo
orgNo
dtypeNo
groupNo
namesYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false). The description adds non-obvious behavior beyond that: AND semantics (only datasets containing every column), the inverted-index basis, narrowing via dtype/org, and a hard cap of n ≤ 20. It does restate return fields, which the output schema already provides.

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 routing rule (this tool vs. `search`) is front-loaded and the constraint/return details follow logically. Length is inflated by bilingual duplication of the same content and by listing return fields already in the output schema.

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?

Covers the essential selection logic, match semantics, filter options, and result cap, which is sufficient for a read-only query tool with an output schema and annotations. The only real gap is the undocumented `group` parameter.

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 carry the load, and it mostly does: `names` requires ALL listed columns to match, `dtype`/`org` are narrowing filters, and `n` is capped at 20. The boolean `group` parameter is never mentioned in either place, leaving one 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?

States a specific verb+resource (find datasets) and the exact scope constraint: ALL given columns present and no topic. It explicitly names the sibling `search(query, fields=...)` for the topic case, so an agent can distinguish the two without opening either 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?

Gives both when-to-use and when-not-to-use in one move: use this when columns are the only condition (query fixed to an empty string), and use `search` instead when a topic exists. The alternative and the condition selecting it are stated explicitly.

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

get_preview첫 행 미리보기 (Preview rows)A
Read-only
Inspect

실제 첫 행 보기. STD_FILE·PORTAL_FILE(첨부 있으면)은 키 없이 첫 행을 줍니다. PORTAL_FILE 첨부 미리보기가 불가한 파일만 X-DataGoKr-Key 헤더 필요(키는 절대 반환·저장 안 함). OPEN_API→request_templates, LINK→url, STD 하위행→parent_id. Preview standard data and portal attachments without a key; only unavailable attachments need X-DataGoKr-Key. Keys are never returned or stored. API/link/subset responses give access guidance. 반환: ok(true=처리됨, false=포털이 지금 응답 안 함→잠시 후 재시도), data{columns, rows}(rows는 columns 순서의 값 배열, 최대 50컬럼·20행), total, truncated, source_note, 또는 안내 필드(url/parent_id/request_templates/message/page_url). data가 있으면 실제 행을 받은 것. ok=false: retry later. data means actual rows, as value arrays in columns order (up to 50 columns/20 rows).

ParametersJSON Schema
NameRequiredDescriptionDefault
nNo
dataset_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description goes beyond them: keys are never returned or stored, ok=false means the portal is temporarily unresponsive (retry later), and truncation is capped at 50 columns/20 rows. This is useful operational context for an agent deciding how to react to results.

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 key operational facts are reasonably front-loaded, but the content is duplicated in Korean and English ('ok=false: retry later. data means actual rows...' restates the Korean), and the return-field enumeration is long. It is serviceable but not tight.

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?

An output schema exists, so the description need not enumerate return values, yet the key behavioral nuance (ok=false → retry, data present → real rows received) is genuinely additive. Combined with the source-type routing rules, an agent has enough to call and interpret the tool, though input parameter meaning remains a gap.

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% and neither parameter is described: dataset_id has no explanation of expected format, and n (default 5) is only indirectly implied by the '20 rows' truncation note without stating it controls row count or its cap. The description compensates with output-field semantics but leaves the two inputs essentially undocumented.

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?

States a specific verb and resource ('실제 첫 행 보기' / preview the actual first rows) and adds source-type routing (STD_FILE·PORTAL_FILE, OPEN_API→request_templates, LINK→url, STD 하위행→parent_id). It is clear what the tool returns, but it never names or contrasts itself with the sibling tools (download_url, fields, record, search, show), so differentiation relies on the reader inferring from the routing hints.

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?

Gives concrete when-to-use/when-key-is-needed conditions: files are previewed without a key, only attachments the portal cannot preview require X-DataGoKr-Key, and API/link/subset cases return guidance instead of rows. It stops short of stating when NOT to use this tool or explicitly naming an alternative sibling to call instead.

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

record원본 메타데이터 (Raw metadata)A
Read-only
Inspect

(로컬 datagokr 패키지 전용) 조회·신청·다운로드에 필요한 원본 메타데이터를 돌려줍니다. 일반 사용에서는 show를 쓰세요. Allowlisted raw metadata for the local datagokr client; prefer show for normal use. 반환: id/title/list_title/org_nm, dtype/access_kind, page_url/external_url, parent_id, versions/version_keys, examples(요청 템플릿), std_meta, api_sample. 내부 상태는 제외하고, 서버에서 신청하거나 저장하지 않습니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataset_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds genuinely useful behavioral context beyond them: internal state is excluded and nothing is applied or saved server-side, so the agent knows this is a purely local, side-effect-free read.

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 core message is front-loaded, but the same content is repeated in Korean and English, and the return-field list overlaps heavily with the output schema, so a meaningful share of the text is redundant rather than additive.

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 read-only, single-parameter tool with an output schema, the safety profile, scope, and alternative are all covered. Only the `dataset_id` semantics remain unexplained, which is a minor but real gap.

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% and the single parameter `dataset_id` is not explained in the description at all – no format, source, or where to obtain the id. With one undocumented required parameter, the description fails to compensate 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?

States a specific verb and resource (returns raw metadata needed for viewing/applying/downloading) and explicitly scopes it to the local datagokr client. It also distinguishes itself from the sibling `show` by naming it as the preferred tool for normal use.

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?

Gives an explicit usage condition ('local datagokr package only') and an explicit alternative ('prefer `show` for normal use'), so an agent can route correctly without opening any schema.

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

show데이터셋 상세 (Dataset details)A
Read-only
Inspect

검색에서 고른 데이터셋의 구조와 접근 방법을 봅니다. Inspect a dataset's schema and access methods. 반환: id, title, org_nm, category, dtype, access_kind, page_url, portal_updated, columns(최대 50), operations, operation_names, examples, n_versions, version_keys(최신 3개), note, truncated(잘린 항목과 전체 개수), more(후속 조회법). 응답은 약 20KB 이내로 잘림. operations가 많은 API는 show(id, operation='기능명 또는 operation_seq')로 한 기능만 전체 보기. Responses are trimmed to about 20KB; select an operation by name or sequence for its full fields. 쓸 만하면 get_preview로 실제 첫 행을 확인하세요.

ParametersJSON Schema
NameRequiredDescriptionDefault
operationNo
dataset_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false), but the description adds genuine behavioral traits: responses are trimmed to ~20KB, columns capped at 50, version_keys limited to the latest 3, and a truncated field reports what was cut. This is real context an agent needs to interpret partial results.

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?

Purpose is front-loaded and useful, but the same content is duplicated in Korean and English, roughly doubling length, and the return-field enumeration is largely redundant with the existing output schema. Adequate but not tight.

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?

Since an output schema exists, enumerating return fields is not strictly required, yet the description still supplies the operation-selection workflow, the 20KB truncation caveat, and the get_preview handoff. An agent has enough to call it correctly; only minor edge cases (e.g. behavior when truncated) are left implicit.

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 carry the load. It explains the operation parameter concretely with syntax ('show(id, operation=\'기능명 또는 operation_seq\')'), clarifying it accepts either a name or a sequence. dataset_id is only implicitly covered, which keeps this from a 5.

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?

States a specific verb and resource in both Korean and English: inspect a dataset's schema and access methods ('데이터셋의 구조와 접근 방법을 봅니다'). An agent can immediately distinguish this from search (discovery), get_preview (row data), fields, and record.

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?

Gives a clear selection context ('검색에서 고른 데이터셋' – a dataset picked from search) and routes to a sibling: use get_preview to check the actual first row. It also explains the when-to-use for the operation parameter (when an API has many operations). It lacks an explicit 'when not to use', so not quite a 5.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 6 tool updates
    • First observeddownload_url
    • First observedfields
    • First observedget_preview
    • First observedrecord
    • First observedsearch
    • First observedshow

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Enables users to discover and recommend Korea public datasets by describing their project idea, searching a static catalog of 96,056 datasets without API calls.
    7
    15
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables exploration and interaction with South Korea's Public Data Portal (OpenAPI) through keyword search, standard documentation retrieval, and direct API endpoint calls with automatic service key injection.
    11
    Apache 2.0
  • A
    license
    A
    quality
    A
    maintenance
    Enables searching and retrieving South Korean national statistics tables, inspecting table metadata and values, and exporting results to xlsx/csv/json/sqlite, with automatic time-period splitting when responses exceed 40,000 cells.
    11
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Bridges Korean public data APIs (data.go.kr) into MCP with automatic OpenAPI normalization, quota management, caching, and backoff. Enables natural language interaction with Korean government data through MCP.
    Apache 2.0
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.