# datagokr — 공공데이터포털 검색을 더 쉽게 (find data.go.kr datasets easily)

> data.go.kr 10.9만 데이터셋을 말로 검색·미리보기(키 불필요). 활용신청·다운로드는 내 계정·키로(데스크탑 확장).

- name: dev.datagokr/datagokr
- version: 0.1.3
- connection class: R0 (autonomous)
- trust: 95/100
- quality: 79/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/dev.datagokr%2Fdatagokr
- tools: https://api.protogrid.dev/v1/servers/dev.datagokr%2Fdatagokr/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "datagokr": {
      "type": "http",
      "url": "https://datagokr.dev/mcp",
      "headers": {
        "X-DataGoKr-Key": "${X_DATAGOKR_KEY}"
      }
    }
  }
}
```

Placeholders to fill: `${X_DATAGOKR_KEY}`.

## Trust

- hygiene: 100
- liveness: 98
- freshness: 100
- provenance: 85
- drivers: +repository +dns-namespace +website +reachable +uptime-95% +updated-19d-ago
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 79/100 (good)

### protocol: 88 (weight 25)

- pass `protocol.modern`: supports 2026-07-28 (server/discover)
- pass `protocol.stateless`: answers without a session
- pass `protocol.transport`: streamable HTTP
- warn `protocol.list_ttl`: tools/list declares ttlMs 0, so clients re-fetch it on every use

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 100 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 6 of 6 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 1,316 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 25 (weight 15)

- warn `stability.changes`: 10 tool changes in 30 days
- fail `stability.rug_pull`: 1 tools kept their name but changed most of their description in 30 days; review before trusting them

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 6, about 1,316 tokens to load them all
- tool set hash: c85cadc752178e39d424b74a76da10d2
- tools last changed: 2026-10-07T03:05:06.933Z
- badge: [![protogrid quality](https://protogrid.dev/badge/dev.datagokr/datagokr.svg)](https://protogrid.dev/servers/dev.datagokr/datagokr)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-07 `search` changed (description) **meaning changed**
  - before: [공공데이터포털 검색 (datagokr)] 주제로 공공데이터를 찾습니다. "전국 주차장", "재난문자 API", "서울 병원 위치"처럼 뭘 찾는지 한 줄로 주세요. Search Korean public datasets by topic. Give a one-line description of what you need. - 주제+컬럼 조건('서울 병원 중 위도·경도 있는 것')은 이 툴에 `fields=['위도','경도']`를 같이 주세요. 주제 없이 컬럼만 조건이면 `fields` 툴. / Topic + required columns: pass `fields=[...]` here. Columns only, no topic: use the `fields` tool. - 지역과 API/파일 의도는 질문에서 알아서 뽑지만, dtype(API/FILE)·org(기관)를 주면 더 정확합니다. - 비슷한 데이터셋은 주제별로 접어서 줍니다(group=True). 접힌 것은 group_ids의 id를 show로 펼치세요. n은 최대 20. 반환: results[{id, title, org_nm, dtype, access_kind, page_url, desc_short, top_columns, group_count, group_ids, access_note(접근방식 한 줄 안내)}], summary(잘라내기 전 후보 분포), expanded_terms(적용된 동의어), region_gap/region_fallback(지역 자료가 없을 때 전국·타지역 안내), scope_warning(범위 밖 질문 안내). 다음 단계: 마음에 드는 id를 show로 확인. 핫한/인기/유명/맛집/좋은/추천/best/popular 같은 감성·평가는 공공데이터에 없습니다. 모집단(인허가·상가·시설 목록)과 대리지표(공공이 공개한 매출·유동인구·방문객·리뷰수)로 나눠 2~3회 검색하세요. / Subjective popularity is unavailable; run 2–3 searches for base listings and public proxy metrics (sales, foot traffic, visitors, review counts). 지역과 주제를 분리하고 지역 자료가 없으면 전국 자료(region_fallback)를 쓰세요. / Separate region from topic; use nationwide region_fallback when local data is unavailable. dtype/org 필터로 결과가 이상하면 필터를 빼고 다시 검색하세요. 좌표가 필요하면 fields=['위도','경도']. / Retry without dtype/org filters if results look wrong; request coordinates with fields=['위도','경도']. 한 번 검색으로 끝내지 말고 show로 컬럼을 확인한 뒤 답하세요. / Do not stop after one search; inspect columns with show before answering.
  - after: [공공데이터포털 검색 (datagokr)] 주제로 공공데이터를 찾습니다. "전국 주차장", "재난문자 API", "서울 병원 위치"처럼 뭘 찾는지 한 줄로 주세요. Search Korean public datasets by topic in one line. - 주제+컬럼 조건('서울 병원 중 위도·경도 있는 것')은 `fields=['위도','경도']`를 같이 주세요. 컬럼만 조건이면 `fields` 툴. - dtype(API/FILE)·org(기관)를 주면 더 정확합니다. 결과가 이상하면 필터를 빼고 다시 검색하세요. - 비슷한 데이터셋은 주제별로 접어서 줍니다(group=True). 접힌 것은 group_ids의 id를 show로 펼치세요. n은 최대 20. - 인기·맛집·추천 같은 평가는 공공데이터에 없습니다. 목록(인허가·시설)과 대리지표(매출·유동인구)로 나눠 2~3회 검색하세요. - 지역 자료가 없으면 region_fallback(전국 자료)을 쓰세요. 한 번 검색으로 끝내지 말고 show로 컬럼을 확인하세요. 반환: results[{id, title, org_nm, dtype, page_url, desc_short, top_columns, group_ids, access_note}], summary, region_gap/region_fallback, scope_warning.
- 2026-10-01 `download_url` changed (description, annotations)
  - before: 전체 데이터를 사용자 컴퓨터로 받는 방법을 알려줍니다. 서버가 파일을 대신 저장하진 않고 주소·요청값·절차를 돌려줍니다. 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 원본 파일 다운로드 주소'
  - after: [공공데이터포털 검색 (datagokr)] 전체 데이터를 사용자 컴퓨터로 받는 방법을 알려줍니다. 서버가 파일을 대신 저장하진 않고 주소·요청값·절차를 돌려줍니다. 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 원본 파일 다운로드 주소'
- 2026-10-01 `get_preview` changed (description, annotations)
  - before: 실제 첫 행 보기. STD_FILE·PORTAL_FILE(첨부 있으면)은 키 없이 첫 행을 줍니다. PORTAL_FILE 첨부 미리보기 실패 시 API 대체 조회에 본인 X-DataGoKr-Key가 필요할 수 있음(키는 반환·저장 안 함). 서울·경기의 확인된 공개 경로는 키 없이 최대5행. 그 밖의 OPEN_API→request_templates, LINK→url, STD 하위행→parent_id. Preview standard data and portal attachments without a key. API fallback may require the caller's 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/access_guide). 지역 API가 확인되면 service_name/request_format도 반환. data가 있으면 실제 행을 받은 것. ok=false: retry later. data means actual rows, as value arrays in columns order (up to 50 columns/20 rows).
  - after: [공공데이터포털 검색 (datagokr)] 실제 첫 행 보기. STD_FILE·PORTAL_FILE(첨부 있으면)은 키 없이 첫 행을 줍니다. PORTAL_FILE 첨부 미리보기 실패 시 API 대체 조회에 본인 X-DataGoKr-Key가 필요할 수 있음(키는 반환·저장 안 함). 서울·경기의 확인된 공개 경로는 키 없이 최대5행. 그 밖의 OPEN_API→request_templates, LINK→url, STD 하위행→parent_id. Preview standard data and portal attachments without a key. API fallback may require the caller's 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/access_guide). 지역 API가 확인되면 service_name/request_format도 반환. data가 있으면 실제 행을 받은 것. ok=false: retry later. data means actual rows, as value arrays in columns order (up to 50 columns/20 rows).
- 2026-10-01 `fields` changed (description, annotations)
  - before: 주제 없이 컬럼만 조건일 때(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.
  - after: [공공데이터포털 검색 (datagokr)] 주제 없이 컬럼만 조건일 때(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.
- 2026-10-01 `record` changed (description, annotations)
  - before: (로컬 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. 내부 상태는 제외하고, 서버에서 신청하거나 저장하지 않습니다.
  - after: [공공데이터포털 검색 (datagokr)] (로컬 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. 내부 상태는 제외하고, 서버에서 신청하거나 저장하지 않습니다.
- 2026-10-01 `show` changed (description, annotations)
  - before: 검색에서 고른 데이터셋의 구조와 접근 방법을 봅니다. 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, access_guide(인증·받는 절차), 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로 실제 첫 행을 확인하세요.
  - after: [공공데이터포털 검색 (datagokr)] 검색에서 고른 데이터셋의 구조와 접근 방법을 봅니다. 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, access_guide(인증·받는 절차), 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로 실제 첫 행을 확인하세요.
- 2026-10-01 `search` changed (description, annotations)
  - before: 주제로 공공데이터를 찾습니다. "전국 주차장", "재난문자 API", "서울 병원 위치"처럼 뭘 찾는지 한 줄로 주세요. Search Korean public datasets by topic. Give a one-line description of what you need. - 주제+컬럼 조건('서울 병원 중 위도·경도 있는 것')은 이 툴에 `fields=['위도','경도']`를 같이 주세요. 주제 없이 컬럼만 조건이면 `fields` 툴. / Topic + required columns: pass `fields=[...]` here. Columns only, no topic: use the `fields` tool. - 지역과 API/파일 의도는 질문에서 알아서 뽑지만, dtype(API/FILE)·org(기관)를 주면 더 정확합니다. - 비슷한 데이터셋은 주제별로 접어서 줍니다(group=True). 접힌 것은 group_ids의 id를 show로 펼치세요. n은 최대 20. 반환: results[{id, title, org_nm, dtype, access_kind, page_url, desc_short, top_columns, group_count, group_ids, access_note(접근방식 한 줄 안내)}], summary(잘라내기 전 후보 분포), expanded_terms(적용된 동의어), region_gap/region_fallback(지역 자료가 없을 때 전국·타지역 안내), scope_warning(범위 밖 질문 안내). 다음 단계: 마음에 드는 id를 show로 확인. 핫한/인기/유명/맛집/좋은/추천/best/popular 같은 감성·평가는 공공데이터에 없습니다. 모집단(인허가·상가·시설 목록)과 대리지표(공공이 공개한 매출·유동인구·방문객·리뷰수)로 나눠 2~3회 검색하세요. / Subjective popularity is unavailable; run 2–3 searches for base listings and public proxy metrics (sales, foot traffic, visitors, review counts). 지역과 주제를 분리하고 지역 자료가 없으면 전국 자료(region_fallback)를 쓰세요. / Separate region from topic; use nationwide region_fallback when local data is unavailable. dtype/org 필터로 결과가 이상하면 필터를 빼고 다시 검색하세요. 좌표가 필요하면 fields=['위도','경도']. / Retry without dtype/org filters if results look wrong; request coordinates with fields=['위도','경도']. 한 번 검색으로 끝내지 말고 show로 컬럼을 확인한 뒤 답하세요. / Do not stop after one search; inspect columns with show before answering.
  - after: [공공데이터포털 검색 (datagokr)] 주제로 공공데이터를 찾습니다. "전국 주차장", "재난문자 API", "서울 병원 위치"처럼 뭘 찾는지 한 줄로 주세요. Search Korean public datasets by topic. Give a one-line description of what you need. - 주제+컬럼 조건('서울 병원 중 위도·경도 있는 것')은 이 툴에 `fields=['위도','경도']`를 같이 주세요. 주제 없이 컬럼만 조건이면 `fields` 툴. / Topic + required columns: pass `fields=[...]` here. Columns only, no topic: use the `fields` tool. - 지역과 API/파일 의도는 질문에서 알아서 뽑지만, dtype(API/FILE)·org(기관)를 주면 더 정확합니다. - 비슷한 데이터셋은 주제별로 접어서 줍니다(group=True). 접힌 것은 group_ids의 id를 show로 펼치세요. n은 최대 20. 반환: results[{id, title, org_nm, dtype, access_kind, page_url, desc_short, top_columns, group_count, group_ids, access_note(접근방식 한 줄 안내)}], summary(잘라내기 전 후보 분포), expanded_terms(적용된 동의어), region_gap/region_fallback(지역 자료가 없을 때 전국·타지역 안내), scope_warning(범위 밖 질문 안내). 다음 단계: 마음에 드는 id를 show로 확인. 핫한/인기/유명/맛집/좋은/추천/best/popular 같은 감성·평가는 공공데이터에 없습니다. 모집단(인허가·상가·시설 목록)과 대리지표(공공이 공개한 매출·유동인구·방문객·리뷰수)로 나눠 2~3회 검색하세요. / Subjective popularity is unavailable; run 2–3 searches for base listings and public proxy metrics (sales, foot traffic, visitors, review counts). 지역과 주제를 분리하고 지역 자료가 없으면 전국 자료(region_fallback)를 쓰세요. / Separate region from topic; use nationwide region_fallback when local data is unavailable. dtype/org 필터로 결과가 이상하면 필터를 빼고 다시 검색하세요. 좌표가 필요하면 fields=['위도','경도']. / Retry without dtype/org filters if results look wrong; request coordinates with fields=['위도','경도']. 한 번 검색으로 끝내지 말고 show로 컬럼을 확인한 뒤 답하세요. / Do not stop after one search; inspect columns with show before answering.
- 2026-09-30 `get_preview` changed (description)
  - before: 실제 첫 행 보기. 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).
  - after: 실제 첫 행 보기. STD_FILE·PORTAL_FILE(첨부 있으면)은 키 없이 첫 행을 줍니다. PORTAL_FILE 첨부 미리보기 실패 시 API 대체 조회에 본인 X-DataGoKr-Key가 필요할 수 있음(키는 반환·저장 안 함). 서울·경기의 확인된 공개 경로는 키 없이 최대5행. 그 밖의 OPEN_API→request_templates, LINK→url, STD 하위행→parent_id. Preview standard data and portal attachments without a key. API fallback may require the caller's 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/access_guide). 지역 API가 확인되면 service_name/request_format도 반환. data가 있으면 실제 행을 받은 것. ok=false: retry later. data means actual rows, as value arrays in columns order (up to 50 columns/20 rows).
- 2026-09-30 `show` changed (description)
  - before: 검색에서 고른 데이터셋의 구조와 접근 방법을 봅니다. 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로 실제 첫 행을 확인하세요.
  - after: 검색에서 고른 데이터셋의 구조와 접근 방법을 봅니다. 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, access_guide(인증·받는 절차), 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로 실제 첫 행을 확인하세요.
- 2026-09-29 `search` changed (description)
  - before: 주제로 공공데이터를 찾습니다. "전국 주차장", "재난문자 API", "서울 병원 위치"처럼 뭘 찾는지 한 줄로 주세요. Search Korean public datasets by topic. Give a one-line description of what you need. - 주제+컬럼 조건('서울 병원 중 위도·경도 있는 것')은 이 툴에 `fields=['위도','경도']`를 같이 주세요. 주제 없이 컬럼만 조건이면 `fields` 툴. / Topic + required columns: pass `fields=[...]` here. Columns only, no topic: use the `fields` tool. - 지역과 API/파일 의도는 질문에서 알아서 뽑지만, dtype(API/FILE)·org(기관)를 주면 더 정확합니다. - 비슷한 데이터셋은 주제별로 접어서 줍니다(group=True). 접힌 것은 group_ids의 id를 show로 펼치세요. n은 최대 20. 반환: results[{id, title, org_nm, dtype, access_kind, page_url, desc_short, top_columns, group_count, group_ids, access_note(접근방식 한 줄 안내)}], summary(잘라내기 전 후보 분포), expanded_terms(적용된 동의어), region_gap/region_fallback(지역 자료가 없을 때 전국·타지역 안내), scope_warning(범위 밖 질문 안내). 다음 단계: 마음에 드는 id를 show로 확인.
  - after: 주제로 공공데이터를 찾습니다. "전국 주차장", "재난문자 API", "서울 병원 위치"처럼 뭘 찾는지 한 줄로 주세요. Search Korean public datasets by topic. Give a one-line description of what you need. - 주제+컬럼 조건('서울 병원 중 위도·경도 있는 것')은 이 툴에 `fields=['위도','경도']`를 같이 주세요. 주제 없이 컬럼만 조건이면 `fields` 툴. / Topic + required columns: pass `fields=[...]` here. Columns only, no topic: use the `fields` tool. - 지역과 API/파일 의도는 질문에서 알아서 뽑지만, dtype(API/FILE)·org(기관)를 주면 더 정확합니다. - 비슷한 데이터셋은 주제별로 접어서 줍니다(group=True). 접힌 것은 group_ids의 id를 show로 펼치세요. n은 최대 20. 반환: results[{id, title, org_nm, dtype, access_kind, page_url, desc_short, top_columns, group_count, group_ids, access_note(접근방식 한 줄 안내)}], summary(잘라내기 전 후보 분포), expanded_terms(적용된 동의어), region_gap/region_fallback(지역 자료가 없을 때 전국·타지역 안내), scope_warning(범위 밖 질문 안내). 다음 단계: 마음에 드는 id를 show로 확인. 핫한/인기/유명/맛집/좋은/추천/best/popular 같은 감성·평가는 공공데이터에 없습니다. 모집단(인허가·상가·시설 목록)과 대리지표(공공이 공개한 매출·유동인구·방문객·리뷰수)로 나눠 2~3회 검색하세요. / Subjective popularity is unavailable; run 2–3 searches for base listings and public proxy metrics (sales, foot traffic, visitors, review counts). 지역과 주제를 분리하고 지역 자료가 없으면 전국 자료(region_fallback)를 쓰세요. / Separate region from topic; use nationwide region_fallback when local data is unavailable. dtype/org 필터로 결과가 이상하면 필터를 빼고 다시 검색하세요. 좌표가 필요하면 fields=['위도','경도']. / Retry without dtype/org filters if results look wrong; request coordinates with fields=['위도','경도']. 한 번 검색으로 끝내지 말고 show로 컬럼을 확인한 뒤 답하세요. / Do not stop after one search; inspect columns with show before answering.

Full history: https://api.protogrid.dev/v1/servers/dev.datagokr%2Fdatagokr/changes

## Remotes

- https://datagokr.dev/mcp (streamable-http, auth none, reachable true, uptime30d 0.9529412)

## Packages

_none_

## Tools (6)

- `download_url`: [공공데이터포털 검색 (datagokr)] 전체 데이터를 사용자 컴퓨터로 받는 방법을 알려줍니다. 서버가 파일을 대신 저장하진 않고 주소·요청값·절차를 돌려줍니다.
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 원본 파일 다운로드 주소'
- `fields`: [공공데이터포털 검색 (datagokr)] 주제 없이 컬럼만 조건일 때(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.
- `get_preview`: [공공데이터포털 검색 (datagokr)] 실제 첫 행 보기. STD_FILE·PORTAL_FILE(첨부 있으면)은 키 없이 첫 행을 줍니다.
PORTAL_FILE 첨부 미리보기 실패 시 API 대체 조회에 본인 X-DataGoKr-Key가 필요할 수 있음(키는 반환·저장 안 함).
서울·경기의 확인된 공개 경로는 키 없이 최대5행. 그 밖의 OPEN_API→request_templates, LINK→url, STD 하위행→parent_id.
Preview standard data and portal attachments without a key. API fallback may require the caller's
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/access_guide). 지역 API가 확인되면 service_name/request_format도 반환.
data가 있으면 실제 행을 받은 것.
ok=false: retry later. data means actual rows, as value arrays in columns order (up to 50 columns/20 rows).
- `record`: [공공데이터포털 검색 (datagokr)] (로컬 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. 내부 상태는 제외하고, 서버에서 신청하거나 저장하지 않습니다.
- `search`: [공공데이터포털 검색 (datagokr)] 주제로 공공데이터를 찾습니다. "전국 주차장", "재난문자 API", "서울 병원 위치"처럼 뭘 찾는지 한 줄로 주세요.
Search Korean public datasets by topic in one line.

- 주제+컬럼 조건('서울 병원 중 위도·경도 있는 것')은 `fields=['위도','경도']`를 같이 주세요. 컬럼만 조건이면 `fields` 툴.
- dtype(API/FILE)·org(기관)를 주면 더 정확합니다. 결과가 이상하면 필터를 빼고 다시 검색하세요.
- 비슷한 데이터셋은 주제별로 접어서 줍니다(group=True). 접힌 것은 group_ids의 id를 show로 펼치세요. n은 최대 20.
- 인기·맛집·추천 같은 평가는 공공데이터에 없습니다. 목록(인허가·시설)과 대리지표(매출·유동인구)로 나눠 2~3회 검색하세요.
- 지역 자료가 없으면 region_fallback(전국 자료)을 쓰세요. 한 번 검색으로 끝내지 말고 show로 컬럼을 확인하세요.

반환: results[{id, title, org_nm, dtype, page_url, desc_short, top_columns, group_ids, access_note}],
summary, region_gap/region_fallback, scope_warning.
- `show`: [공공데이터포털 검색 (datagokr)] 검색에서 고른 데이터셋의 구조와 접근 방법을 봅니다. 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, access_guide(인증·받는 절차),
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로 실제 첫 행을 확인하세요.
