Skip to main content
Glama
Dayoooun

Korea Stats MCP

by Dayoooun
README.md
# ๐Ÿ‡ฐ๐Ÿ‡ท Korea Stats MCP

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![MCP](https://img.shields.io/badge/MCP-Compatible-blue)](https://modelcontextprotocol.io/)
[![Deploy](https://img.shields.io/badge/Vercel-Deployed-black)](https://korea-stats-mcp.vercel.app/)
[![npm](https://img.shields.io/npm/v/@kimdayoun/korea-stats-mcp)](https://www.npmjs.com/package/@kimdayoun/korea-stats-mcp)

> **์ด ์ €์žฅ์†Œ๊ฐ€ ์›๋ณธ์ž…๋‹ˆ๋‹ค.** ์ •๋ณธ: https://github.com/Dayoooun/korea-stats-mcp
> npm ๋ฐฐํฌ๋ณธ์€ **`@kimdayoun/korea-stats-mcp`** ํ•˜๋‚˜๋ฟ์ž…๋‹ˆ๋‹ค.
> `kosis-mcp` ๋“ฑ ์Šค์ฝ”ํ”„ ์—†๋Š” ๋™๋ช… ํŒจํ‚ค์ง€๋Š” ์ด ํ”„๋กœ์ ํŠธ์™€ ๋ฌด๊ด€ํ•œ ์ œ3์ž ๋ฐฐํฌ๋ณธ์ž…๋‹ˆ๋‹ค.

> **์ž์—ฐ์–ด๋กœ KOSIS ํ†ต๊ณ„๋ฅผ ์กฐํšŒํ•˜๋Š” MCP ์„œ๋ฒ„**

ํ†ต๊ณ„์ฒญ KOSIS OpenAPI ๊ธฐ๋ฐ˜์˜ MCP(Model Context Protocol) ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค.
Claude Code์™€ Codex์—์„œ **์ž์—ฐ์–ด๋กœ ํ•œ๊ตญ ํ†ต๊ณ„ ๋ฐ์ดํ„ฐ**๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ณ  ๋ถ„์„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

**์›๊ฒฉ ์„œ๋ฒ„ URL:** `https://korea-stats-mcp.vercel.app/mcp`

**๐Ÿ“ฆ ๋กœ์ปฌ ์„ค์น˜:**

```bash
npx -y @kimdayoun/korea-stats-mcp
```

MCP ํด๋ผ์ด์–ธํŠธ ์„ค์ •:

```json
{
  "mcpServers": {
    "korea-stats": {
      "command": "npx",
      "args": ["-y", "@kimdayoun/korea-stats-mcp"]
    }
  }
}
```

---

## ๐ŸŽฏ ์™œ ๋งŒ๋“ค์—ˆ๋‚˜์š”?

AI์—๊ฒŒ **"ํ•œ๊ตญ ์ธ๊ตฌ๊ฐ€ ๋ช‡ ๋ช…์ด์•ผ?"** ๋ผ๊ณ  ๋ฌผ์œผ๋ฉด, AI๋Š” ํ•™์Šต ๋ฐ์ดํ„ฐ์˜ ์˜ค๋ž˜๋œ ์ •๋ณด๋ฅผ ๋‹ตํ•ฉ๋‹ˆ๋‹ค.
Korea Stats MCP๋ฅผ ์—ฐ๊ฒฐํ•˜๋ฉด **์‹ค์‹œ๊ฐ„ ๊ณต์‹ ํ†ต๊ณ„**๋ฅผ ์กฐํšŒํ•ด์„œ ์ •ํ™•ํ•œ ๋‹ต๋ณ€์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

| Before (MCP ์—†์ด)                      | After (Korea Stats MCP ์—ฐ๊ฒฐ)                     |
| -------------------------------------- | ------------------------------------------------ |
| Q: ํ•œ๊ตญ ์ธ๊ตฌ๊ฐ€ ๋ช‡ ๋ช…์ด์•ผ?              | Q: ํ•œ๊ตญ ์ธ๊ตฌ๊ฐ€ ๋ช‡ ๋ช…์ด์•ผ?                        |
| A: 2023๋…„ ๊ธฐ์ค€ ์•ฝ 5,100๋งŒ ๋ช…์ž…๋‹ˆ๋‹ค. โŒ | A: 2024๋…„ ํ•œ๊ตญ์˜ ์ด์ธ๊ตฌ๋Š” 51,712,619๋ช…์ž…๋‹ˆ๋‹ค. โœ… |

---

## โœจ ์ฃผ์š” ๊ธฐ๋Šฅ

| ๊ธฐ๋Šฅ             | ์„ค๋ช…                                                          |
| ---------------- | ------------------------------------------------------------- |
| **๋น ๋ฅธ ์กฐํšŒ**    | "์‹ค์—…๋ฅ ", "GDP", "์ถœ์‚ฐ์œจ", "๋ฏธ์„ธ๋จผ์ง€" ๋“ฑ ์‚ฌ์ „์„ค์ • ํ‚ค์›Œ๋“œ ์กฐํšŒ |
| ๐Ÿ“ˆ **์ถ”์„ธ ๋ถ„์„** | ์ตœ๊ทผ N๋…„๊ฐ„ ๋ฐ์ดํ„ฐ ์ถ”์ด ๋ฐ ๋ณ€ํ™”์œจ ๋ถ„์„                         |
| **ํ†ต๊ณ„ ๊ฒ€์ƒ‰**    | KOSIS OpenAPI ๊ณต๊ฐœ ํ†ต๊ณ„ํ‘œ์—์„œ ํ‚ค์›Œ๋“œ ๊ฒ€์ƒ‰                     |
| ๐Ÿ“Š **๋น„๊ต ๋ถ„์„** | ์—ฐ๋„๋ณ„, ์ง€์—ญ๋ณ„, ํ•ญ๋ชฉ๋ณ„ ํ†ต๊ณ„ ๋น„๊ต                              |
| **์ง€์—ญ๋ณ„ ์กฐํšŒ**  | ๊ณต์‹ ๋ถ„๋ฅ˜์— ๋”ฐ๋ฅธ ์‹œ๋„ยท์‹œ๊ตฐ๊ตฌ ์กฐํšŒ, ํ†ต๊ณ„ํ‘œ๋ณ„ ์ง€์› ๋ฒ”์œ„ ํ™•์ธ    |

---

## ๐Ÿš€ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•

### ๋ฐฉ๋ฒ• 1: ์›๊ฒฉ ์„œ๋ฒ„ ์‚ฌ์šฉ (์„ค์น˜ ์—†์ด ๋ฐ”๋กœ ์‚ฌ์šฉ) โญ ๊ถŒ์žฅ

์„ค์น˜ ์—†์ด ์›๊ฒฉ MCP ์„œ๋ฒ„์— ๋ฐ”๋กœ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

#### Claude Code

```bash
claude mcp add --scope user --transport http korea-stats https://korea-stats-mcp.vercel.app/mcp
claude mcp get korea-stats
```

#### Codex

```bash
codex mcp add korea-stats --url https://korea-stats-mcp.vercel.app/mcp
codex mcp get korea-stats
```

๋‘ ํด๋ผ์ด์–ธํŠธ ๋ชจ๋‘ ๋„ค์ดํ‹ฐ๋ธŒ HTTP ์—ฐ๊ฒฐ์„ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ `mcp-remote`๋‚˜ ์‚ฌ์šฉ์ž KOSIS ํ‚ค๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋“ฑ๋ก ํ›„ ์ƒˆ Claude Code ๋˜๋Š” Codex ์„ธ์…˜์—์„œ MCP ๋„๊ตฌ๋ฅผ ํ˜ธ์ถœํ•˜์„ธ์š”. ์ด๋ฏธ ๊ฐ™์€ ์ด๋ฆ„์˜ ์„œ๋ฒ„๊ฐ€ ๋“ฑ๋ก๋ผ ์žˆ๋‹ค๋ฉด ๊ธฐ์กด ์„ค์ •์„ ๋จผ์ € ํ™•์ธํ•˜๊ณ  ๋ฎ์–ด์“ฐ์ง€ ๋งˆ์„ธ์š”.

๊ฐ™์€ URL์„ ์ด๋ฏธ ์‚ฌ์šฉ ์ค‘์ด๋ผ๋ฉด ์‚ญ์ œยท์žฌ๋“ฑ๋ก์€ ํ•„์ˆ˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋„๊ตฌ ๋ชฉ๋ก์ด ๊ฐฑ์‹ ๋˜์ง€ ์•Š๋Š” ํด๋ผ์ด์–ธํŠธ์—์„œ๋Š” ์ƒˆ๋กœ๊ณ ์นจ ๋˜๋Š” ์žฌ์—ฐ๊ฒฐํ•˜์„ธ์š”.

#### ํ˜„์žฌ ํ™•์ธ๋œ ์ œํ•œ (2026-09-10)

- ๊ณต๊ฐœ ์„œ๋ฒ„์˜ ๊ตฌยท๊ตฐ ์กฐํšŒ์™€ ์ง€์—ญ ๊ตฌ๋ถ„์€ ์‹ค์ œ ํ˜ธ์ถœ๋กœ ํ™•์ธํ–ˆ์ง€๋งŒ, ๋ชจ๋“  ํ†ต๊ณ„ํ‘œ๊ฐ€ ๋ชจ๋“  ์‹œ๊ตฐ๊ตฌ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.
- ๋…๋ฆฝ ๊ฒ€์ฆ์—์„œ `get_indicator`์˜ ์ง€ํ‘œ ์ •์˜ ์กฐํšŒ๊ฐ€ KOSIS ์˜ค๋ฅ˜ `30`์œผ๋กœ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์ง€ํ‘œ ๊ฒ€์ƒ‰ ์„ฑ๊ณต์ด ๋ชจ๋“  ์ง€ํ‘œ ์ƒ์„ธยท๊ฐ’ ์กฐํšŒ์˜ ์„ฑ๊ณต์„ ์˜๋ฏธํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
- `get_indicator`, `search_businesses`, `get_microdata_info`์˜ ๊ณต๊ฐœ `tools/list`์—์„œ ์ž…๋ ฅ ์Šคํ‚ค๋งˆ์˜ `properties`๊ฐ€ ๋น„์–ด ์žˆ๋Š” ๋ฌธ์ œ๊ฐ€ ํ™•์ธ๋์Šต๋‹ˆ๋‹ค. ์ธ์ž๋ฅผ ์ง์ ‘ ์ง€์ •ํ•œ ํ˜ธ์ถœ์ด ์„ฑ๊ณตํ•˜๋”๋ผ๋„ AI์˜ ์ž๋™ ๋„๊ตฌ ์„ ํƒยท์ธ์ž ๊ตฌ์„ฑ๊นŒ์ง€ ๋ณด์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
- MDIS๋Š” ๊ณต๊ฐœ ์นดํƒˆ๋กœ๊ทธยท๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์กฐํšŒ ๋ฒ”์œ„์ด๋ฉฐ, ์—ฐ๊ตฌ์šฉ ์›์ž๋ฃŒ ๋‹ค์šด๋กœ๋“œยท๋กœ๊ทธ์ธยท๋ณ„๋„ ์ ‘๊ทผ ์Šน์ธ์„ ๋Œ€์‹ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
- ๊ณต๊ฐœ ์„œ๋ฒ„ ๋ฐฐํฌ, GitHub ์†Œ์Šค, npm ๊ฒŒ์‹œ ๋ฒ„์ „์€ ๋ณ„๊ฐœ์ž…๋‹ˆ๋‹ค. ์ด ์†Œ์Šค์˜ ๊ฐœ์„  ์‚ฌํ•ญ์ด npm ์ตœ์‹  ๋ฐฐํฌ๋ณธ์—๋„ ๋ชจ๋‘ ํฌํ•จ๋๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์ง€ ๋งˆ์„ธ์š”.

---

### ๋ฐฉ๋ฒ• 2: ๋กœ์ปฌ ์„ค์น˜

์ง์ ‘ ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ๋กœ์ปฌ์— ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

#### 1๋‹จ๊ณ„: ์„ค์น˜

```bash
# ์ €์žฅ์†Œ ํด๋ก 
git clone https://github.com/Dayoooun/korea-stats-mcp.git
cd korea-stats-mcp

# ์˜์กด์„ฑ ์„ค์น˜ (pnpm ๊ถŒ์žฅ)
pnpm install

# ๋นŒ๋“œ
pnpm run build
```

#### 2๋‹จ๊ณ„: AI ๋„๊ตฌ์— ์—ฐ๊ฒฐ

**Claude Code**:

```bash
claude mcp add --scope user --transport stdio korea-stats-local -- node /์ ˆ๋Œ€๊ฒฝ๋กœ/korea-stats-mcp/dist/index.js
```

**Codex**:

```bash
codex mcp add korea-stats-local -- node /์ ˆ๋Œ€๊ฒฝ๋กœ/korea-stats-mcp/dist/index.js
```

์‹ค์ œ ๋นŒ๋“œ ํŒŒ์ผ์˜ ์ ˆ๋Œ€๊ฒฝ๋กœ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”. ์›๊ฒฉ ์—ฐ๊ฒฐ๋งŒ ํ•„์š”ํ•˜๋ฉด ๋กœ์ปฌ ๋“ฑ๋ก์€ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. npm ๊ฒŒ์‹œ๋ณธ๊ณผ ์ด ์ €์žฅ์†Œ์˜ ๋นŒ๋“œยท์šด์˜ ๋ฐฐํฌ ๋ฒ„์ „์€ ๋ณ„๊ฐœ์ด๋ฏ€๋กœ, ์ƒˆ ๋ฒ„์ „์„ npm์— ๊ฒŒ์‹œํ–ˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์ง€ ๋งˆ์„ธ์š”.

---

### ๋ฐฉ๋ฒ• 3: Kakao PlayMCP

[Kakao PlayMCP](https://playmcp.com/)์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1. PlayMCP ์‚ฌ์ดํŠธ ์ ‘์†
2. **korea-stats-mcp** ๊ฒ€์ƒ‰
3. ํด๋ฆญ ํ•œ ๋ฒˆ์œผ๋กœ ์—ฐ๊ฒฐ ์™„๋ฃŒ!

---

## ๐Ÿ’ฌ ์‚ฌ์šฉ ์˜ˆ์‹œ

์—ฐ๊ฒฐ ํ›„ AI์—๊ฒŒ ์ž์—ฐ์–ด๋กœ ์งˆ๋ฌธํ•˜์„ธ์š”:

```
"ํ•œ๊ตญ ์ธ๊ตฌ๊ฐ€ ๋ช‡ ๋ช…์ด์•ผ?"
"์„œ์šธ ์‹ค์—…๋ฅ  ์•Œ๋ ค์ค˜"
"์ตœ๊ทผ 10๋…„ ์ถœ์‚ฐ์œจ ์ถ”์ด ๋ณด์—ฌ์ค˜"
"GDP ์„ฑ์žฅ๋ฅ ์€?"
"๋ถ€์‚ฐ๊ณผ ๋Œ€๊ตฌ ์ธ๊ตฌ ๋น„๊ตํ•ด์ค˜"
"์„œ์šธ ์•„ํŒŒํŠธ๊ฐ€๊ฒฉ ์•Œ๋ ค์ค˜"
"๊ฒฝ๊ธฐ๋„ GRDP ์–ผ๋งˆ์•ผ?"
"ํ‰๊ท  ์ž„๊ธˆ ์•Œ๋ ค์ค˜"
"2024๋…„ 10์›” ์ถœ์ƒ์•„์ˆ˜ ์•Œ๋ ค์ค˜"   # ์›”๋ณ„ ๋ฐ์ดํ„ฐ
"์„œ์šธ ์ „์„ธ๊ฐ€๊ฒฉ"                # ๐Ÿ†• ์ „์„ธ
"๊ฒฝ๊ธฐ ์ž๋™์ฐจ ๋“ฑ๋ก๋Œ€์ˆ˜"          # ๐Ÿ†• ์ž๋™์ฐจ
"๋ถ€์‚ฐ ๋ฒ”์ฃ„์œจ"                  # ๐Ÿ†• ๋ฒ”์ฃ„
"์™ธ๋ž˜๊ด€๊ด‘๊ฐ ๋ช‡ ๋ช…์ด์•ผ?"
"๊ตํ†ต์‚ฌ๊ณ  ๋ฐœ์ƒ๊ฑด์ˆ˜"            # ๐Ÿ†• ๊ตํ†ต์‚ฌ๊ณ 
"์„œ์šธ ์˜์‚ฌ์ˆ˜ ์•Œ๋ ค์ค˜"           # ๐Ÿ†• ์˜๋ฃŒ
```

**์‹ค์ œ ์‘๋‹ต ์˜ˆ์‹œ:**

```
โœ… "2025๋…„ ํ•œ๊ตญ์˜ ์ฃผ๋ฏผ๋“ฑ๋ก ์ด์ธ๊ตฌ๋Š” 51,117,378๋ช…์ž…๋‹ˆ๋‹ค."
โœ… "2024๋…„ ์„œ์šธ์˜ ์‹ค์—…๋ฅ ์€ 3%์ž…๋‹ˆ๋‹ค."
โœ… "2025๋…„ 3์›” ์„œ์šธ์˜ ์•„ํŒŒํŠธ๋งค๋งค๊ฐ€๊ฒฉ์ง€์ˆ˜๋Š” 99.687 (2021.6=100)์ž…๋‹ˆ๋‹ค."
โœ… "2025๋…„ ํ•œ๊ตญ์˜ ์ƒ์šฉ๊ทผ๋กœ์ž ์›”ํ‰๊ท  ์ž„๊ธˆ์€ 4,094,615์›์ž…๋‹ˆ๋‹ค."
โœ… "2024๋…„ ๊ฒฝ๊ธฐ์˜ ์ง€์—ญ๋‚ด์ด์ƒ์‚ฐ(๋ช…๋ชฉ)์€ 651,417,234๋ฐฑ๋งŒ์›์ž…๋‹ˆ๋‹ค."
โœ… "2025๋…„ 3์›” ์„œ์šธ์˜ ์ฃผํƒ์ „์„ธ๊ฐ€๊ฒฉ์ง€์ˆ˜๋Š” 94.134 (2021.6=100)์ž…๋‹ˆ๋‹ค."
โœ… "2024๋…„ ์„œ์šธ์˜ ์ž๋™์ฐจ ๋“ฑ๋ก๋Œ€์ˆ˜๋Š” 3,176,933๋Œ€์ž…๋‹ˆ๋‹ค."
โœ… "2024๋…„ ๋ถ€์‚ฐ์˜ ์ธ๊ตฌ ์ฒœ๋ช…๋‹น ๋ฒ”์ฃ„๋ฐœ์ƒ๊ฑด์ˆ˜๋Š” 34.4๊ฑด์ž…๋‹ˆ๋‹ค."
โœ… "2025๋…„ 11์›” ํ•œ๊ตญ์˜ ์™ธ๋ž˜๊ด€๊ด‘๊ฐ์ˆ˜๋Š” 1,596,939๋ช…์ž…๋‹ˆ๋‹ค."
โœ… "2024๋…„ ํ•œ๊ตญ์˜ ๊ตํ†ต์‚ฌ๊ณ  ๋ฐœ์ƒ๊ฑด์ˆ˜๋Š” 168,585๊ฑด์ž…๋‹ˆ๋‹ค."
โœ… "2024๋…„ ์„œ์šธ์˜ ์˜๋ฃŒ๊ธฐ๊ด€ ์ข…์‚ฌ ์˜์‚ฌ์ˆ˜๋Š” 43,547๋ช…์ž…๋‹ˆ๋‹ค."
```

---

## ๋น ๋ฅธ ์กฐํšŒ ํ‚ค์›Œ๋“œ

ํ˜„์žฌ ์‚ฌ์ „์„ค์ •์€ ๋™์˜์–ด๋ฅผ ํฌํ•จํ•ด 91๊ฐœ ํ‚ค์›Œ๋“œ์ž…๋‹ˆ๋‹ค. ์•„๋ž˜ ๋ชฉ๋ก์€ ๋น ๋ฅธ ์กฐํšŒ ์˜ˆ์‹œ์ด๋ฉฐ ์ „์ฒด ์ง€์› ํ†ต๊ณ„ํ‘œ์˜ ์ƒํ•œ์ด ์•„๋‹™๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ†ต๊ณ„๋Š” `search_statistics`์™€ ๊ณต์‹ ๋ถ„๋ฅ˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋กœ ํƒ์ƒ‰ํ•˜์„ธ์š”.

### ์ธ๊ตฌ/์ถœ์‚ฐ/์‚ฌ๋ง

| ํ‚ค์›Œ๋“œ                                     | ์„ค๋ช…       | ์ฃผ๊ธฐ       |
| ------------------------------------------ | ---------- | ---------- |
| `์ธ๊ตฌ`, `์ด์ธ๊ตฌ`                           | ์ด์ธ๊ตฌ์ˆ˜   | ์—ฐ         |
| `์ถœ์‚ฐ์œจ`, `ํ•ฉ๊ณ„์ถœ์‚ฐ์œจ`                     | ํ•ฉ๊ณ„์ถœ์‚ฐ์œจ | ์—ฐ         |
| `์ถœ์ƒ์•„์ˆ˜`, `์ถœ์ƒ์•„`, `์กฐ์ถœ์ƒ๋ฅ `           | ์ถœ์ƒ ํ†ต๊ณ„  | ์—ฐ/๋ถ„๊ธฐ/์›” |
| `์‚ฌ๋ง์ž์ˆ˜`, `์‚ฌ๋ง์ž`, `์กฐ์‚ฌ๋ง๋ฅ `, `์‚ฌ๋ง๋ฅ ` | ์‚ฌ๋ง ํ†ต๊ณ„  | ์—ฐ/๋ถ„๊ธฐ/์›” |
| `์ž์—ฐ์ฆ๊ฐ€`, `์ž์—ฐ์ฆ๊ฐ€์œจ`                   | ์ž์—ฐ์ฆ๊ฐ   | ์—ฐ/๋ถ„๊ธฐ/์›” |
| `๊ธฐ๋Œ€์ˆ˜๋ช…`, `๊ธฐ๋Œ€์—ฌ๋ช…`, `ํ‰๊ท ์ˆ˜๋ช…`         | ๊ธฐ๋Œ€์ˆ˜๋ช…   | ์—ฐ         |

### ํ˜ผ์ธ/์ดํ˜ผ

| ํ‚ค์›Œ๋“œ                           | ์„ค๋ช…      | ์ฃผ๊ธฐ       |
| -------------------------------- | --------- | ---------- |
| `ํ˜ผ์ธ์œจ`, `ํ˜ผ์ธ๊ฑด์ˆ˜`, `์กฐํ˜ผ์ธ์œจ` | ํ˜ผ์ธ ํ†ต๊ณ„ | ์—ฐ/๋ถ„๊ธฐ/์›” |
| `์ดํ˜ผ์œจ`, `์ดํ˜ผ๊ฑด์ˆ˜`, `์กฐ์ดํ˜ผ์œจ` | ์ดํ˜ผ ํ†ต๊ณ„ | ์—ฐ/๋ถ„๊ธฐ/์›” |

### ๊ณ ์šฉ/๋…ธ๋™

| ํ‚ค์›Œ๋“œ                                   | ์„ค๋ช…                            | ์ฃผ๊ธฐ |
| ---------------------------------------- | ------------------------------- | ---- |
| `์‹ค์—…๋ฅ `                                 | ์‹ค์—…๋ฅ  (์‹œ๋„๋ณ„ ์ง€์›)            | ์—ฐ   |
| `๊ณ ์šฉ๋ฅ `                                 | ๊ณ ์šฉ๋ฅ  (์‹œ๋„๋ณ„ ์ง€์›)            | ์—ฐ   |
| `์ทจ์—…์ž์ˆ˜`, `์ทจ์—…์ž`                     | ์ทจ์—…์ž ์ˆ˜                       | ์—ฐ   |
| `์‹ค์—…์ž์ˆ˜`, `์‹ค์—…์ž`                     | ์‹ค์—…์ž ์ˆ˜                       | ์—ฐ   |
| `๊ฒฝ์ œํ™œ๋™์ธ๊ตฌ`, `๋น„๊ฒฝ์ œํ™œ๋™์ธ๊ตฌ`         | ๊ฒฝ์ œํ™œ๋™์ธ๊ตฌ                    | ์—ฐ   |
| `์ž„๊ธˆ`, `์›”ํ‰๊ท ์ž„๊ธˆ`, `์›”๊ธ‰`, `ํ‰๊ท ์ž„๊ธˆ` | ์ƒ์šฉ๊ทผ๋กœ์ž ์›”ํ‰๊ท  ์ž„๊ธˆ (์‹œ๋„๋ณ„) | ์—ฐ   |

### ๊ฒฝ์ œ

| ํ‚ค์›Œ๋“œ                                 | ์„ค๋ช…                  | ์ฃผ๊ธฐ  |
| -------------------------------------- | --------------------- | ----- |
| `GDP`, `๊ตญ๋‚ด์ด์ƒ์‚ฐ`                    | GDP (๊ตญ๋‚ด์ด์ƒ์‚ฐ)      | ์—ฐ    |
| `GRDP`, `์ง€์—ญ๋‚ด์ด์ƒ์‚ฐ`                 | ์ง€์—ญ๋‚ด์ด์ƒ์‚ฐ (์‹œ๋„๋ณ„) | ์—ฐ    |
| `๊ฒฝ์ œ์„ฑ์žฅ๋ฅ `, `์„ฑ์žฅ๋ฅ `, `GDP์„ฑ์žฅ๋ฅ `    | ๊ฒฝ์ œ์„ฑ์žฅ๋ฅ             | ์—ฐ    |
| `๋ฌผ๊ฐ€`, `์†Œ๋น„์ž๋ฌผ๊ฐ€`, `์†Œ๋น„์ž๋ฌผ๊ฐ€์ง€์ˆ˜` | ์†Œ๋น„์ž๋ฌผ๊ฐ€ (์‹œ๋„๋ณ„)   | ์—ฐ/์›” |

### ๋ฌด์—ญ

| ํ‚ค์›Œ๋“œ           | ์„ค๋ช…     | ์ฃผ๊ธฐ |
| ---------------- | -------- | ---- |
| `์ˆ˜์ถœ์•ก`, `์ˆ˜์ถœ` | ์ˆ˜์ถœ์•ก   | ์—ฐ   |
| `์ˆ˜์ž…์•ก`, `์ˆ˜์ž…` | ์ˆ˜์ž…์•ก   | ์—ฐ   |
| `๋ฌด์—ญ์ˆ˜์ง€`       | ๋ฌด์—ญ์ˆ˜์ง€ | ์—ฐ   |

### ๋ถ€๋™์‚ฐ

| ํ‚ค์›Œ๋“œ                                                     | ์„ค๋ช…                        | ์ฃผ๊ธฐ |
| ---------------------------------------------------------- | --------------------------- | ---- |
| `์ฃผํƒ๊ฐ€๊ฒฉ`, `์ฃผํƒ๋งค๋งค๊ฐ€๊ฒฉ`, `์ฃผํƒ๊ฐ€๊ฒฉ์ง€์ˆ˜`                 | ์ฃผํƒ๋งค๋งค๊ฐ€๊ฒฉ์ง€์ˆ˜ (์‹œ๋„๋ณ„)   | ์›”   |
| `์•„ํŒŒํŠธ`, `์•„ํŒŒํŠธ๊ฐ€๊ฒฉ`, `์•„ํŒŒํŠธ๋งค๋งค๊ฐ€๊ฒฉ`, `์•„ํŒŒํŠธ๊ฐ€๊ฒฉ์ง€์ˆ˜` | ์•„ํŒŒํŠธ๋งค๋งค๊ฐ€๊ฒฉ์ง€์ˆ˜ (์‹œ๋„๋ณ„) | ์›”   |
| `์ „์„ธ`, `์ „์„ธ๊ฐ€๊ฒฉ`, `์ „์„ธ๊ฐ€๊ฒฉ์ง€์ˆ˜`, `์ฃผํƒ์ „์„ธ`             | ์ฃผํƒ์ „์„ธ๊ฐ€๊ฒฉ์ง€์ˆ˜ (์‹œ๋„๋ณ„)   | ์›”   |
| `์•„ํŒŒํŠธ์ „์„ธ`, `์•„ํŒŒํŠธ์ „์„ธ๊ฐ€๊ฒฉ`                             | ์•„ํŒŒํŠธ์ „์„ธ๊ฐ€๊ฒฉ์ง€์ˆ˜ (์‹œ๋„๋ณ„) | ์›”   |

### ์ž๋™์ฐจ/๊ตํ†ต ๐Ÿ†•

| ํ‚ค์›Œ๋“œ                               | ์„ค๋ช…                     | ์ฃผ๊ธฐ |
| ------------------------------------ | ------------------------ | ---- |
| `์ž๋™์ฐจ`, `์ž๋™์ฐจ๋“ฑ๋ก`, `์ž๋™์ฐจ๋Œ€์ˆ˜` | ์ž๋™์ฐจ ๋“ฑ๋ก๋Œ€์ˆ˜ (์‹œ๋„๋ณ„) | ์—ฐ   |

### ๋ฒ”์ฃ„/์น˜์•ˆ ๐Ÿ†•

| ํ‚ค์›Œ๋“œ                       | ์„ค๋ช…                              | ์ฃผ๊ธฐ |
| ---------------------------- | --------------------------------- | ---- |
| `๋ฒ”์ฃ„`, `๋ฒ”์ฃ„์œจ`, `๋ฒ”์ฃ„๋ฐœ์ƒ` | ์ธ๊ตฌ ์ฒœ๋ช…๋‹น ๋ฒ”์ฃ„๋ฐœ์ƒ๊ฑด์ˆ˜ (์‹œ๋„๋ณ„) | ์—ฐ   |

### ๊ด€๊ด‘

| ํ‚ค์›Œ๋“œ                           | ์„ค๋ช…                | ์ฃผ๊ธฐ |
| -------------------------------- | ------------------- | ---- |
| `๊ด€๊ด‘๊ฐ`, `์™ธ๋ž˜๊ด€๊ด‘๊ฐ`, `์ž…๊ตญ์ž` | ์™ธ๋ž˜๊ด€๊ด‘๊ฐ ์ž…๊ตญ์ž์ˆ˜ | ์›”   |

### ๊ตํ†ต/์•ˆ์ „ ๐Ÿ†•

| ํ‚ค์›Œ๋“œ                                 | ์„ค๋ช…                       | ์ฃผ๊ธฐ |
| -------------------------------------- | -------------------------- | ---- |
| `๊ตํ†ต์‚ฌ๊ณ `, `๊ตํ†ต์‚ฌ๊ณ ๋ฐœ์ƒ`, `์‚ฌ๊ณ ๊ฑด์ˆ˜` | ๊ตํ†ต์‚ฌ๊ณ  ๋ฐœ์ƒ๊ฑด์ˆ˜ (์‹œ๋„๋ณ„) | ์—ฐ   |

### ์˜๋ฃŒ/๊ฑด๊ฐ•

| ํ‚ค์›Œ๋“œ                       | ์„ค๋ช…                          | ์ฃผ๊ธฐ |
| ---------------------------- | ----------------------------- | ---- |
| `์˜์‚ฌ`, `์˜์‚ฌ์ˆ˜`, `์˜๋ฃŒ์ธ๋ ฅ` | ์˜๋ฃŒ๊ธฐ๊ด€ ์ข…์‚ฌ ์˜์‚ฌ์ˆ˜ (์‹œ๋„๋ณ„) | ์—ฐ   |

### ๋Œ€๊ธฐํ™˜๊ฒฝ ๐Ÿ†•

| ํ‚ค์›Œ๋“œ                                        | ์„ค๋ช…                            | ์ฃผ๊ธฐ |
| --------------------------------------------- | ------------------------------- | ---- |
| `๋ฏธ์„ธ๋จผ์ง€`, `PM2.5`, `์ดˆ๋ฏธ์„ธ๋จผ์ง€`, `๋Œ€๊ธฐ์˜ค์—ผ` | ์ดˆ๋ฏธ์„ธ๋จผ์ง€(PM2.5) ๋†๋„ (์‹œ๋„๋ณ„) | ์›”   |
| `PM10`                                        | ๋ฏธ์„ธ๋จผ์ง€(PM10) ๋†๋„ (์‹œ๋„๋ณ„)    | ์›”   |

---

## ๐Ÿ—บ๏ธ ์ง€์—ญ๋ณ„ ์กฐํšŒ

์ง€์—ญ ์ง€์› ๋ฒ”์œ„๋Š” ์„ ํƒํ•œ ํ†ต๊ณ„ํ‘œ์˜ ๊ณต์‹ ๋ถ„๋ฅ˜์— ๋”ฐ๋ผ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค. ์‹œ๊ตฐ๊ตฌ๋Š” ITM ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์™€ ์‹ค์ œ ์‘๋‹ต์˜ ๋ถ„๋ฅ˜์ถ•์„ ํ™•์ธํ•ด ์กฐํšŒํ•˜๋ฉฐ, ์ฝ”๋“œ ๊ธธ์ด๋กœ ์ง€์—ญ์„ ์ถ”์ธกํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋™๋ช…์ด๊ฑฐ๋‚˜ ์š”์ฒญํ•œ ํ•˜์œ„ ์ง€์—ญ์„ ํ™•์ธํ•  ์ˆ˜ ์—†์œผ๋ฉด ์ƒ์œ„ ์ง€์—ญยท์ „๊ตญ ๊ฐ’์œผ๋กœ ๋Œ€์‹  ๋‹ตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

KOSIS์— ์ค‘๊ฐ„ ์‹œ ์ด๋ฆ„์ด ๋น ์ง„ `์ˆ˜์›์‹œ ์˜ํ†ต๊ตฌ` ๊ฐ™์€ ์š”์ฒญ์€, ์‹ค์ œ KOSIS ๋ถ„๋ฅ˜์ถ•ยท์ฝ”๋“œ๊ฐ€ ํ™•์ธ๋œ ๋‹จ์ผ ํ›„๋ณด์— ํ•œํ•ด ๊ณต์‹ ์ƒ๊ถŒ์ •๋ณด์˜ ์‹œ๊ตฐ๊ตฌ ์ „์ฒด ์ด๋ฆ„์„ ํ•œ ๋ฒˆ ๋Œ€์กฐํ•ฉ๋‹ˆ๋‹ค. ์‹œ๊ตฐ๊ตฌ ์ฝ”๋“œยท์‹œ๋„ ์ฝ”๋“œยท๊ณต์‹ ์‹œ๋„๋ช…ยท์ „์ฒด ์ด๋ฆ„์ด ์ •ํ™•ํžˆ ๋งž์•„์•ผ ๋‹ตํ•ฉ๋‹ˆ๋‹ค. ํ™•์ธ ์ž๋ฃŒ๋‚˜ ์šด์˜์ž ํ‚ค๊ฐ€ ์—†์œผ๋ฉด ๊ฒ€์ฆ์„ ๋ณด๋ฅ˜ํ•˜๋ฉฐ, ํ˜„์žฌ ๋ช…์นญ์˜ ์†Œ์†์„ ํ™•์ธํ•œ ๊ฒƒ์ด ๊ณผ๊ฑฐ ํ–‰์ •๊ฒฝ๊ณ„์˜ ๋™์ผ์„ฑ์„ ์ž…์ฆํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ์ด ํ•œ๊ณ„๋Š” ์‘๋‹ต์˜ `caveats`์—๋„ ๋‚จ๊น๋‹ˆ๋‹ค.

**์‹œ๋„ ์ž…๋ ฅ ์˜ˆ์‹œ(์ง€์› ๋ฒ”์œ„์˜ ์ƒํ•œ์ด ์•„๋‹™๋‹ˆ๋‹ค):**
์ „๊ตญ, ์„œ์šธ, ๋ถ€์‚ฐ, ๋Œ€๊ตฌ, ์ธ์ฒœ, ๊ด‘์ฃผ, ๋Œ€์ „, ์šธ์‚ฐ, ์„ธ์ข…, ๊ฒฝ๊ธฐ, ๊ฐ•์›, ์ถฉ๋ถ, ์ถฉ๋‚จ, ์ „๋ถ, ์ „๋‚จ, ๊ฒฝ๋ถ, ๊ฒฝ๋‚จ, ์ œ์ฃผ

**์˜ˆ์‹œ:**

```
"์„œ์šธ ์ธ๊ตฌ"
"๋ถ€์‚ฐ ์‹ค์—…๋ฅ "
"์ œ์ฃผ ์ถœ์‚ฐ์œจ"
"๊ฒฝ๊ธฐ๋„ ๊ณ ์šฉ๋ฅ "
"์„œ์šธ ์•„ํŒŒํŠธ๊ฐ€๊ฒฉ"
"๊ฒฝ๊ธฐ GRDP"
"์šธ์‚ฐ ์ž„๊ธˆ"
"์„œ์šธ ์ „์„ธ๊ฐ€๊ฒฉ"
"๊ฒฝ๊ธฐ ์ž๋™์ฐจ"
"๋ถ€์‚ฐ ๋ฒ”์ฃ„์œจ"
"์„œ์šธ ๊ตํ†ต์‚ฌ๊ณ "           # ๐Ÿ†• ๊ตํ†ต์‚ฌ๊ณ 
"๋ถ€์‚ฐ ์˜์‚ฌ์ˆ˜"             # ๐Ÿ†• ์˜๋ฃŒ
```

---

## ๐Ÿ“… ์›”๋ณ„/๋ถ„๊ธฐ๋ณ„ ์กฐํšŒ ๐Ÿ†•

์ผ๋ถ€ ํ†ต๊ณ„๋Š” ์›”๋ณ„ ๋˜๋Š” ๋ถ„๊ธฐ๋ณ„ ์กฐํšŒ๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค:

**์˜ˆ์‹œ:**

```
"2024๋…„ 10์›” ์ถœ์ƒ์•„์ˆ˜"    # ์›”๋ณ„ ์กฐํšŒ
"2024๋…„ 3๋ถ„๊ธฐ ์‚ฌ๋ง์ž์ˆ˜"   # ๋ถ„๊ธฐ๋ณ„ ์กฐํšŒ
"2025๋…„ 1์›” ์ฃผํƒ๊ฐ€๊ฒฉ"     # ์›”๋ณ„ ์กฐํšŒ
```

**์ง€์› ํ†ต๊ณ„:** ์ถœ์ƒ์•„์ˆ˜, ์‚ฌ๋ง์ž์ˆ˜, ํ˜ผ์ธ๊ฑด์ˆ˜, ์ดํ˜ผ๊ฑด์ˆ˜, ์ž์—ฐ์ฆ๊ฐ€, ๋ฌผ๊ฐ€, ์ฃผํƒ๊ฐ€๊ฒฉ, ์•„ํŒŒํŠธ๊ฐ€๊ฒฉ, ์ „์„ธ๊ฐ€๊ฒฉ, ๊ด€๊ด‘๊ฐ

---

## ์ œ๊ณต ๋„๊ตฌ (๊ฐœ๋ฐœ๋ณธ 14๊ฐœ)

์ด ๋ชฉ๋ก์€ ํ˜„์žฌ ์†Œ์Šค ๊ธฐ์ค€์ž…๋‹ˆ๋‹ค. ๊ณต๊ฐœ ์›๊ฒฉ ์„œ๋ฒ„์™€ npm ๋ฐฐํฌ๋ณธ์˜ ์‹ค์ œ ๋„๊ตฌ๋Š” ํ•ด๋‹น ๋ฐฐํฌ ๋ฒ„์ „์˜ `tools/list`๋กœ ํ™•์ธํ•˜์„ธ์š”. ํ‚ค ์—†๋Š” ๋กœ์ปฌ ์‹คํ–‰์€ ๊ณต๊ฐœ ์›๊ฒฉ ๋ฐฐํฌ๋ณธ์„ ์ด์šฉํ•˜๋ฏ€๋กœ ์•„์ง ๋ฐฐํฌํ•˜์ง€ ์•Š์€ ๋กœ์ปฌ ๋ณ€๊ฒฝ์„ ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

### ํ•ต์‹ฌ ๋„๊ตฌ โญ

| ๋„๊ตฌ          | ์„ค๋ช…                      | ์˜ˆ์‹œ                                              |
| ------------- | ------------------------- | ------------------------------------------------- |
| `quick_stats` | ์‚ฌ์ „์„ค์ • ํ‚ค์›Œ๋“œ ๋น ๋ฅธ ์กฐํšŒ | "์‹ค์—…๋ฅ ", "GDP", "๋ฏธ์„ธ๋จผ์ง€", "๊ตํ†ต์‚ฌ๊ณ ", "์˜์‚ฌ์ˆ˜" |
| `quick_trend` | ์‹œ๊ณ„์—ด ์ถ”์„ธ ๋ถ„์„          | "์ถœ์‚ฐ์œจ 10๋…„ ์ถ”์ด"                                |

### ๊ณ ๊ธ‰ ๋„๊ตฌ

| ๋„๊ตฌ                         | ์„ค๋ช…                                                                          |
| ---------------------------- | ----------------------------------------------------------------------------- |
| `search_statistics`          | KOSIS ํ†ต๊ณ„ํ‘œ ํ‚ค์›Œ๋“œ ๊ฒ€์ƒ‰                                                      |
| `get_statistics_list`        | ์ฃผ์ œ๋ณ„/๊ธฐ๊ด€๋ณ„ ํ†ต๊ณ„ ๋ชฉ๋ก ํƒ์ƒ‰                                                  |
| `get_statistics_data`        | ํŠน์ • ํ†ต๊ณ„ํ‘œ ๋ฐ์ดํ„ฐ ์กฐํšŒ                                                       |
| `compare_statistics`         | ์‹œ์ ๋ณ„/ํ•ญ๋ชฉ๋ณ„ ๋น„๊ต ๋ถ„์„                                                       |
| `analyze_time_series`        | ์ƒ์„ธ ์‹œ๊ณ„์—ด ๋ถ„์„                                                              |
| `get_recommended_statistics` | ๋ถ„์•ผ๋ณ„ ์ถ”์ฒœ ํ†ต๊ณ„                                                              |
| `get_table_info`             | ๊ณต์‹ ๋ถ„๋ฅ˜ยทํ•ญ๋ชฉ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์™€ ๊ทผ๊ฑฐ๋ฅผ ๋ฐ”์ดํŠธ ์ œํ•œ ๋‚ด์—์„œ ํŽ˜์ด์ง€๋ณ„ ์กฐํšŒ           |
| `search_indicators`          | ๊ณต์‹ ์ง€ํ‘œ ์ด๋ฆ„ยทIDยท์ˆ˜๋ก์ฃผ๊ธฐ ๊ฒ€์ƒ‰                                               |
| `get_indicator`              | ๊ฒ€์ƒ‰ํ•œ ์ง€ํ‘œ์˜ ๊ณต์‹ ์ •์˜ ๋˜๋Š” ์›์ž๋ฃŒ ๊ฐ’ ์กฐํšŒ                                   |
| `search_businesses`          | ๊ณต๊ณต ์ƒ๊ถŒ์ •๋ณด์˜ ์ง€์—ญยท์—…์ข…๋ณ„ ์‚ฌ์—…์ฒด ์›์ž๋ฃŒ๋ฅผ ํŽ˜์ด์ง€๋ณ„ ์ทจ๋“                     |
| `search_microdata`           | MDIS ๊ณต๊ฐœ ์กฐ์‚ฌ ์นดํƒˆ๋กœ๊ทธ ๊ฒ€์ƒ‰                                                  |
| `get_microdata_info`         | ์ผ๋ฐ˜ ์กฐ์‚ฌ ์ƒ์„ธ ๋˜๋Š” ์„œ๋น„์Šค ์œ ํ˜•๋ณ„ ๊ณต๊ฐœ ๋ณ€์ˆ˜ยท์ฝ”๋“œ๋ถ ํ™•์ธ๊ณผ ๊ณต์‹ ์ด์šฉ ๊ฒฝ๋กœ ์•ˆ๋‚ด |

### ์ž๋ฃŒ ํ•ด์„๊ณผ ์ด์šฉ ๊ฒฝ๊ณ„

- KOSIS ๋ถ„๋ฅ˜์ฝ”๋“œ์™€ ์ƒ๊ถŒ API์˜ ํ–‰์ •๊ตฌ์—ญ ์ฝ”๋“œ๋Š” ์„œ๋กœ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณต๊ธ‰์ž๋ณ„ ๊ณต์‹ ์ฝ”๋“œ๋ฅผ ๊ตฌ๋ถ„ํ•˜์„ธ์š”.
- ์ถœ์ฒ˜ยท์กฐํšŒ ์‹œ๊ฐยท์›๋ž˜ ๊ธฐ๊ฐ„ยท๋‹จ์œ„ยท์‹๋ณ„์ž์™€ ๊ฒ€์ฆ ๋ฒ”์œ„๋ฅผ ํ•จ๊ป˜ ํ™•์ธํ•˜์„ธ์š”. ๋ˆ„๋ฝ๋œ ๊ทผ๊ฑฐ๋Š” `unknown`, `partial`, `unverified` ๋“ฑ์˜ ํ‘œ์‹œ๋กœ ๊ตฌ๋ถ„ํ•˜๋ฉฐ ๋‹จ์œ„ยท๊ฒฐ์ธก๊ฐ’ยท๋ฒ”์ฃผ ์˜๋ฏธ๋ฅผ ์ž„์˜๋กœ ์ฑ„์šฐ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
- ์—ฐยท์›”ยท๋ถ„๊ธฐ ๋ฒ”์œ„ ์กฐํšŒ๋Š” ํ•ญ๋ชฉยท๋ถ„๋ฅ˜ ์กฐํ•ฉ๋ณ„ ์‹œ์ž‘ยท์ข…๋ฃŒ ์‹œ์ ๊ณผ ๋‚ด๋ถ€ ๋ˆ„๋ฝ์„ ๊ฒ€์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๊ฐ„ ๊ทผ๊ฑฐ๊ฐ€ ๋ถˆ์™„์ „ํ•˜๋ฉด `response_incomplete`๋กœ ์‹คํŒจํ•˜๋ฉฐ ๋ฐ˜ํ™˜ ๊ฐ€๋Šฅํ•œ ์›๋ณธ์€ `data[].raw`์— ๋‚จ๊น๋‹ˆ๋‹ค. ์ผ์ •ํ•œ ์ฃผ๊ธฐ๋ฅผ ์ž…์ฆํ•  ์ˆ˜ ์—†๋Š” ์ฃผ๊ธฐ๋Š” ๋ฏธ๊ฒ€์ฆ์œผ๋กœ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
- ๊ธฐ๊ฐ„์„ ์ง€์ •ํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ `recentCount`๋งŒ ์‚ฌ์šฉํ•œ ์‘๋‹ต์€ ์ตœ์‹ ์„ฑยท์ „์ฒด์„ฑ์„ ์ž…์ฆํ•˜์ง€ ๋ชปํ•˜๋ฏ€๋กœ ๋ฏธ๊ฒ€์ฆ์ž…๋‹ˆ๋‹ค. ์š”์ฒญํ•œ ์ตœ๊ทผ ๊ด€์ธก ์ˆ˜๋ณด๋‹ค ์ ๊ฑฐ๋‚˜ ๊ด€์ธก ์‹๋ณ„์ž๊ฐ€ ์ค‘๋ณต๋˜๋ฉด ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.
- `get_statistics_data`์˜ ์–‘๋์ด ๋ช…์‹œ๋œ ์—ฐยท์›”ยท๋ถ„๊ธฐ ๋ฒ”์œ„๋Š” `pageSize`(๊ธฐ๋ณธ 50, ์ตœ๋Œ€ 200)์™€ `cursor`๋กœ ์ด์–ด๋ฐ›์Šต๋‹ˆ๋‹ค. ๊ณต๊ธ‰์ž ์‘๋‹ต 4 MiB ์ดˆ๊ณผ ์‹œ ๊ธฐ๊ฐ„์„ ๋ถ„ํ• ํ•˜๋ฉฐ, ๋‹จ์ผ ๊ธฐ๊ฐ„๋„ ์ดˆ๊ณผํ•˜๋ฉด ์„ ํƒ ์กฐ๊ฑด์„ ์ขํ˜€์•ผ ํ•ฉ๋‹ˆ๋‹ค. MCP ์‘๋‹ต์€ 32 KiB ์ด๋‚ด์ด๋ฉฐ ์›์‹œ ๊ด€์ธก ํ•˜๋‚˜๋ฅผ ์ž„์˜๋กœ ์ž๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
- ๊ณต์‹ ์ฝ”๋“œ์˜ `+` ๋‹ค์ค‘ ์„ ํƒ์‹๋„ ๊ณต๊ธ‰์ž์— ๊ทธ๋Œ€๋กœ ์ „๋‹ฌํ•˜๋ฉฐ ๋‹จ์ผ ์ฝ”๋“œ๋กœ ์˜ค์ธํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค์ค‘ ์„ ํƒ ์‘๋‹ต์€ `unverified`๋กœ ํ‘œ์‹œํ•˜๋ฉฐ, ํŽ˜์ด์ง€ ์ˆœํšŒ ์™„๋ฃŒ์™€ ๊ณต๊ธ‰์ž ์ „์ฒด์„ฑ ๊ฒ€์ฆ์€ ๋ณ„๊ฐœ์ž…๋‹ˆ๋‹ค.
- `hasMore`๊ฐ€ ์ฐธ์ด๋ฉด ์›๋ž˜ ์กฐ๊ฑด ๊ทธ๋Œ€๋กœ `nextCursor`๋ฅผ ๋„˜๊ธฐ์„ธ์š”. `partition_split` ์ง„ํ–‰ ํŽ˜์ด์ง€๋Š” 0ํ–‰์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰ ํŽ˜์ด์ง€์˜ `completion: "complete"`๋„ ์š”์ฒญ ๊ธฐ๊ฐ„ ์ˆœํšŒ ์™„๋ฃŒ์ด์ง€ ๊ณต๊ธ‰์ž ์ „์ฒด ์ž๋ฃŒยท์ „์ฒด ์‹œ์ ์˜ ๋™์ผ ์Šค๋ƒ…์ƒท์„ ์ž…์ฆํ•œ ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ์•ž ํŽ˜์ด์ง€๋“ค์„ ํ•ฉ์ณ์•ผ ์ „์ฒด ๋ฐ˜ํ™˜ ๊ด€์ธก์„ ์–ป์Šต๋‹ˆ๋‹ค.
- ์šด์˜ HTTP ์„œ๋ฒ„๋Š” 2.0.0์œผ๋กœ ๋ฐฐํฌยท๊ฒ€์ฆ๋์Šต๋‹ˆ๋‹ค. npm ๊ฒŒ์‹œ๋ณธ์€ ๋ณ„๊ฐœ์ด๋ฉฐ ์ƒˆ ๋ฒ„์ „ ๊ฒŒ์‹œ๊ฐ€ ์™„๋ฃŒ๋๋‹ค๋Š” ๋œป์€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ธฐ์กด ํ†ต๊ณ„์ž๋ฃŒ `totalCount` ๋Œ€์‹  `returnedCount`ยท`emittedCount`ยท`aggregateRowCount`๋ฅผ ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.
- ๋ถ„์„ยท๋น„๊ต์˜ ์ถœ์ฒ˜ ๋ชฉ๋ก์€ ์š”์ฒญํ•œ ๋…ผ๋ฆฌ ์กฐํšŒ์ด๋ฉฐ ์‹ค์ œ ๋„คํŠธ์›Œํฌ ํ˜ธ์ถœ ์ด๋ ฅ์ด๋‚˜ ์บ์‹œ ์ตœ์‹ ์„ฑ ์ฆ๋ช…์ด ์•„๋‹™๋‹ˆ๋‹ค. ์กฐํšŒ ์‹œ๊ฐยท๋ฏธ์ œ๊ณต ๋ฉ”ํƒ€ยท์ถœ์ฒ˜ ์ง„๋‹จ์˜ ์ ˆ๋‹จ ์—ฌ๋ถ€์™€ ๊ณ„์‚ฐ ์„ฑ๊ณต ์—ฌ๋ถ€๋ฅผ ๊ตฌ๋ถ„ํ•ด ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
- ์‹œ์  ๋น„๊ต์—๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ์‹œ์ ์ด ์ตœ์†Œ 2๊ฐœ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์ค€๊ฐ’ 0์˜ ๋ณ€ํ™”์œจ์€ 0%๊ฐ€ ์•„๋‹ˆ๋ผ ๋ฏธ์ •์ด๋ฉฐ ์ ˆ๋Œ€ ๋ณ€ํ™”๋Ÿ‰์„ ํ•จ๊ป˜ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋‹จ์œ„๊ฐ€ ์„ž์ด๊ฑฐ๋‚˜ ๋ˆ„๋ฝ๋˜๋ฉด ๋‹จ์ผ ์ƒ์œ„ `unit`์„ ๋งŒ๋“ค์ง€ ์•Š๊ณ  ๊ด€์ธก๋ณ„ ๋‹จ์œ„๋ฅผ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.
- ํŽ˜์ด์ง€ ์‘๋‹ต์€ ์ „์ฒด ์ž๋ฃŒ ์ทจ๋“ ์™„๋ฃŒ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋ฐ˜ํ™˜ ๊ฑด์ˆ˜์™€ ๊ณต๊ธ‰์ž ์ด๊ฑด์ˆ˜๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ณ , `hasMore`์™€ ๋‹ค์Œ ํŽ˜์ด์ง€๋ฅผ ํ™•์ธํ•˜์„ธ์š”.
- MDIS๋Š” ๊ณต์‹ ๊ณต๊ฐœ ์›น ํŽ˜์ด์ง€๋ฅผ ์ฝ๋Š” `adapter`(๊ณต๊ฐœ ์›น ์‘๋‹ต์„ MCP ๋„๊ตฌ ํ˜•์‹์œผ๋กœ ์—ฐ๊ฒฐํ•˜๋Š” ๋ชจ๋“ˆ)์ž…๋‹ˆ๋‹ค. ๊ณต๊ฐœ ์กฐ์‚ฌยท๋ณ€์ˆ˜ยท์ฝ”๋“œ๋ถ ํƒ์ƒ‰์—๋Š” ์—ฐ๊ตฌ์ž ๋กœ๊ทธ์ธ์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜ ์›์ž๋ฃŒ ์ด์šฉยท์ธ๊ฐ€์ž๋ฃŒ ์‹ ์ฒญยท๋ถ„์„์€ ๋ณธ์ธ ํ™˜๊ฒฝ์—์„œ ๊ณต์‹ ์ ˆ์ฐจ๋กœ ์ง„ํ–‰ํ•˜๋ฉฐ, ์ด ์„œ๋ฒ„๋Š” ์—ฐ๊ตฌ์ž ๋น„๋ฐ€๋ฒˆํ˜ธยท์ฟ ํ‚ค๋ฅผ ๋ฐ›๊ฑฐ๋‚˜ ์ €์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
- ์ฝ”๋“œ๋ถ์˜ `validation.level: "header-only"`๋Š” ํŒŒ์ผ ํ˜•์‹๊ณผ CFB(์˜› XLS๋ฅผ ๋‹ด๋Š” ๋ณตํ•ฉ ํŒŒ์ผ ํ˜•์‹) ํ—ค๋”๋งŒ ๊ฒ€์‚ฌํ–ˆ๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค. ์›Œํฌ์‹œํŠธ ๋ณธ๋ฌธ ๊ฒ€์ฆยท์›์ž๋ฃŒ ๋‹ค์šด๋กœ๋“œยท์ด์šฉ ์Šน์ธ ์™„๋ฃŒ๋ฅผ ๋œปํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

---

## ๐Ÿ”ง ๊ฐœ๋ฐœ์ž ๊ฐ€์ด๋“œ

### ๋กœ์ปฌ ๊ฐœ๋ฐœ

```bash
# ๊ฐœ๋ฐœ ๋ชจ๋“œ (watch)
pnpm run dev

# MCP Inspector๋กœ ํ…Œ์ŠคํŠธ
pnpm run inspector

# E2E ํ…Œ์ŠคํŠธ
node e2e-test.js
```

### ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

```
korea-stats-mcp/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ index.ts              # ์ง„์ž…์  (stdio ํŠธ๋žœ์ŠคํฌํŠธ)
โ”‚   โ”œโ”€โ”€ server.ts             # MCP ์„œ๋ฒ„ ์„ค์ •
โ”‚   โ”œโ”€โ”€ tools/                # 8๊ฐœ ๋„๊ตฌ ๊ตฌํ˜„
โ”‚   โ”‚   โ”œโ”€โ”€ quickStats.ts     # ๋น ๋ฅธ ์กฐํšŒ
โ”‚   โ”‚   โ”œโ”€โ”€ quickTrend.ts     # ์ถ”์„ธ ๋ถ„์„
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”œโ”€โ”€ data/
โ”‚   โ”‚   โ””โ”€โ”€ quickStatsParams.ts  # ํ†ต๊ณ„ํ‘œยทํ•ญ๋ชฉ ๊ธฐ๋ณธ ์„ค์ •
โ”‚   โ””โ”€โ”€ api/
โ”‚       โ””โ”€โ”€ client.ts         # KOSIS API ํด๋ผ์ด์–ธํŠธ
โ”œโ”€โ”€ api/
โ”‚   โ””โ”€โ”€ mcp.ts                # Vercel ์„œ๋ฒ„๋ฆฌ์Šค (์›๊ฒฉ MCP)
โ””โ”€โ”€ tests/                    # Playwright ํ…Œ์ŠคํŠธ
```

### ์ƒˆ ํ‚ค์›Œ๋“œ ์ถ”๊ฐ€ํ•˜๊ธฐ

`src/data/quickStatsParams.ts`์— ์ƒˆ ํ‚ค์›Œ๋“œ๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

```typescript
'์ƒˆํ‚ค์›Œ๋“œ': {
  orgId: '101',           // ๊ธฐ๊ด€ ์ฝ”๋“œ (101 = ํ†ต๊ณ„์ฒญ)
  tableId: 'DT_XXXXX',    // ํ†ต๊ณ„ํ‘œ ID
  tableName: 'ํ†ต๊ณ„ํ‘œ๋ช…',
  description: '์„ค๋ช…',
  objL1: '00',            // ๋ถ„๋ฅ˜๊ฐ’ ์ฝ”๋“œ
  itemId: 'T10',          // ํ•ญ๋ชฉ ์ฝ”๋“œ
  unit: '๋‹จ์œ„',
}
```

---

## ๐Ÿ“‹ API ํ‚ค

**์›๊ฒฉ ์„œ๋ฒ„๋Š” ์‚ฌ์šฉ์ž KOSIS ํ‚ค ์—†์ด ์ด์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.** MCP ํด๋ผ์ด์–ธํŠธ์— ์œ„์˜ ์›๊ฒฉ URL์„ ๋“ฑ๋กํ•˜์„ธ์š”. KOSIS ์ธ์ฆ์€ ์šด์˜์ž๊ฐ€ ์„œ๋ฒ„ ํ™˜๊ฒฝ๋ณ€์ˆ˜๋กœ ์„ค์ •ํ•œ ํ‚ค๋กœ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๋กœ์ปฌ npm/stdio ์‹คํ–‰๋„ **ํ‚ค ์—†์ด ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.** ํ‚ค๊ฐ€ ์—†์œผ๋ฉด ๊ณต๊ฐœ ์›๊ฒฉ MCP ์„œ๋ฒ„๋กœ ์—ฐ๊ฒฐ๋˜๋ฉฐ ์งˆ๋ฌธ๊ณผ ์กฐํšŒ ์กฐ๊ฑด์ด ์›๊ฒฉ ์„œ๋ฒ„๋กœ ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ์ œ๊ณต๋˜๋Š” ๋„๊ตฌยท๋ฒ„์ „์€ ํ˜„์žฌ ์›๊ฒฉ ๋ฐฐํฌ๋ณธ์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

๊ณต๊ฐœ ์„œ๋ฒ„๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š๊ณ  KOSIS๋ฅผ ์ง์ ‘ ์กฐํšŒํ•˜๋ ค๋ฉด [KOSIS OpenAPI](https://kosis.kr/openapi/)์—์„œ ๋ฐœ๊ธ‰๋ฐ›์€ ๋ณธ์ธ ํ‚ค๋ฅผ `KOSIS_API_KEY` ํ™˜๊ฒฝ๋ณ€์ˆ˜๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ํ‚ค๋ฅผ ํŒจํ‚ค์ง€์— ๋„ฃ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์›๊ฒฉ ์„œ๋ฒ„ ์šด์˜์ž๋Š” Vercel์˜ ํ•ด๋‹น ๋ฐฐํฌ ํ™˜๊ฒฝ์— `KOSIS_API_KEY`๋ฅผ ์„ค์ •ํ•˜๊ณ  ์ƒˆ ๋ฐฐํฌ์—์„œ ์‹ค์ œ ์กฐํšŒ๋ฅผ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ‚ค๋ฅผ ํ”„๋ŸฐํŠธ์—”๋“œ ๊ณต๊ฐœ ํ™˜๊ฒฝ๋ณ€์ˆ˜, ์ €์žฅ์†Œ, ๋กœ๊ทธ์— ๋„ฃ์ง€ ๋งˆ์„ธ์š”. ๊ณผ๊ฑฐ ๊ณต๊ฐœ ํ‚ค๋Š” ์ƒˆ ํ‚ค๋กœ ์ •์ƒ ๋™์ž‘์„ ํ™•์ธํ•œ ๋’ค ํ๊ธฐํ•ด์•ผ ํ•˜๋ฉฐ, ์†Œ์Šค์—์„œ ์‚ญ์ œํ•œ ๊ฒƒ๋งŒ์œผ๋กœ ๊ณผ๊ฑฐ ๋ฐฐํฌ๋ณธ๊ณผ Git ์ด๋ ฅ์—์„œ ์‚ฌ๋ผ์ง€์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.

์ƒ๊ถŒ์ •๋ณด ์ œ๊ณต๊ณผ ์œ„์˜ ์ค‘์ฒฉ ์‹œ๊ตฐ๊ตฌ ๋ช…์นญ ํ™•์ธ์„ ์ง€์›ํ•˜๋Š” ์šด์˜์ž๋Š” ๊ฐ™์€ ๋ฐฐํฌ ํ™˜๊ฒฝ์— `DATA_GO_KR_SERVICE_KEY`๋„ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ํ‚ค๋Š” ๊ณต๊ณต๋ฐ์ดํ„ฐํฌํ„ธ์˜ ํ•ด๋‹น ์ƒ๊ถŒ์ •๋ณด ์„œ๋น„์Šค ํ™œ์šฉ ์Šน์ธ์„ ๋ฐ›์€ ์šด์˜์ž์šฉ ํ‚ค์ž…๋‹ˆ๋‹ค. ์ด์šฉ์ž์—๊ฒŒ ๊ฐ์ž ๋ฐœ๊ธ‰๋ฐ›๋„๋ก ์š”๊ตฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. MDIS ๊ณต๊ฐœ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ adapter์—๋Š” ์ด ๋‘ API ํ‚ค๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

Vercel Functions๋Š” `vercel.json`์˜ `regions: ["icn1"]`์— ๋”ฐ๋ผ ์„œ์šธ์— ๋ฐฐ์น˜ํ•ฉ๋‹ˆ๋‹ค. MDIS ๊ณต๊ฐœ ์นดํƒˆ๋กœ๊ทธ์˜ ๋ณธ๋ฌธ ์ „์†ก ์ง€์—ฐ์„ ์ค„์ด๊ธฐ ์œ„ํ•œ ์„ค์ •์ด๋ฉฐ, ์š”์ฒญ 8์ดˆยท์‘๋‹ต 4 MiB ์ œํ•œ์€ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ฆฌ์ „์˜ ๋™์ž‘์„ ๋กœ์ปฌ ์„ฑ๊ณต๋งŒ์œผ๋กœ ๊ฐ€์ •ํ•˜์ง€ ๋ง๊ณ  ์‹ค์ œ ๋ฐฐํฌ์—์„œ ํ™•์ธํ•˜์„ธ์š”. ์ด ์„ค์ • ์ž์ฒด๊ฐ€ ๊ธฐ์กด ๊ณต๊ฐœ ์„œ๋ฒ„์˜ ๋ฐฐํฌ ์™„๋ฃŒ๋ฅผ ๋œปํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.

์ถœ์‹œ ์ „ ๋‹จ๊ณ„๋ณ„ ๊ฒ€์ฆ, ๊ณต๊ฐœ ๋Œ€์ƒ์˜ ์‚ฌํ›„ ํ™•์ธ๊ณผ ์•ˆ์ „ํ•œ ๋กค๋ฐฑ์€ [์‚ฌ์šฉ์ž ๊ฐ€์ด๋“œ์˜ ์šด์˜์ž ์ ˆ์ฐจ](docs/USER_GUIDE.md)๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค. ๋ณดํ˜ธ๋œ preview ๊ฒ€์ฆ๊ณผ ์‹ค์ œ ๊ณต๊ฐœ ์„œ๋น„์Šค์˜ ๋ฐฐํฌ ์™„๋ฃŒ๋ฅผ ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.

### ๊ณต๊ฐœ ์‹œ๊ตฐ๊ตฌยท์ƒ์„ธ ์กฐํšŒ ๋ฒค์น˜๋งˆํฌ

์งˆ๋ฌธยท์ฑ„์ ยทํ•ฉ๊ฒฉ์„ ์˜ ์ •๋ณธ์€ [๊ณ ์ • ๋ฒค์น˜๋งˆํฌ ๊ธฐ์ค€](tests/public-benchmark.json)์ž…๋‹ˆ๋‹ค. ์šด์˜์ž๊ฐ€ ๋…๋ฆฝ ๊ณต์‹ ์›๋ฌธ๊ณผ ๊ณต๊ฐœ MCP ์‘๋‹ต์„ ๋Œ€์กฐํ•  ๋•Œ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

```bash
node --env-file=/๋ณดํ˜ธ๋œ๊ฒฝ๋กœ/provider.env tests/public-benchmark.mjs --output /์ ˆ๋Œ€๊ฒฝ๋กœ/์ƒˆ๊ฒ€์ฆํด๋”
```

`provider.env`์—๋Š” ๋…๋ฆฝ ์›๋ฌธ ๋Œ€์กฐ์šฉ ์šด์˜์ž `KOSIS_API_KEY`์™€ `DATA_GO_KR_SERVICE_KEY`๋ฅผ ๋‘ก๋‹ˆ๋‹ค. ๊ณต๊ฐœ MCP ์—ฐ๊ฒฐ์—๋Š” ์ด ํ‚ค๋‚˜ ์ธ์ฆ ์šฐํšŒ ํ—ค๋”๋ฅผ ๋ณด๋‚ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜ ์ด์šฉ์ž๊ฐ€ ์ด ๋ฒค์น˜๋งˆํฌ๋ฅผ ์‹คํ–‰ํ•˜๊ฑฐ๋‚˜ ํ‚ค๋ฅผ ๋ฐœ๊ธ‰๋ฐ›์„ ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค.

๋งค ์‹คํ–‰์€ ์ƒˆ ๊ฒฐ๊ณผ ํด๋”์™€ ๊ธฐ์ค€ ํŒŒ์ผ ํ•ด์‹œ๋ฅผ ๋‚จ๊น๋‹ˆ๋‹ค. ๋ฏธ์‹คํ–‰ยท์™ธ๋ถ€ ์žฅ์• ยท์›์ž๋ฃŒ ๋ฏธ์ œ๊ณต์„ ํ†ต๊ณผ๋กœ ๋ฐ”๊พธ๊ฑฐ๋‚˜ ๋ถ„๋ชจ์—์„œ ๋นผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๋ฒค์น˜๋งˆํฌ๋Š” ๊ธฐ์กด ๋‹จ๊ณ„๋ณ„ ์ถœ์‹œ ๊ฒ€์‚ฌ๋‚˜ ์ „๊ตญ ๋ชจ๋“  ํ†ต๊ณ„์˜ ์ œ๊ณต ๋ฒ”์œ„๋ฅผ ๋Œ€์‹ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

---

## ๐Ÿค ๊ธฐ์—ฌํ•˜๊ธฐ

๊ธฐ์—ฌ๋ฅผ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค!

1. ์ด ์ €์žฅ์†Œ๋ฅผ Fork ํ•ฉ๋‹ˆ๋‹ค
2. ์ƒˆ ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค (`git checkout -b feature/์ƒˆ๊ธฐ๋Šฅ`)
3. ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ปค๋ฐ‹ํ•ฉ๋‹ˆ๋‹ค (`git commit -m 'feat: ์ƒˆ ๊ธฐ๋Šฅ ์ถ”๊ฐ€'`)
4. ๋ธŒ๋žœ์น˜์— Push ํ•ฉ๋‹ˆ๋‹ค (`git push origin feature/์ƒˆ๊ธฐ๋Šฅ`)
5. Pull Request๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค

### ๊ธฐ์—ฌ ์•„์ด๋””์–ด

- [ ] ์ƒˆ๋กœ์šด ํ†ต๊ณ„ ํ‚ค์›Œ๋“œ ์ถ”๊ฐ€
- [ ] ์˜๋ฌธ ํ‚ค์›Œ๋“œ ์ง€์› (population, unemployment ๋“ฑ)
- [ ] ์ง€์—ญ๋ช… ํ’€๋„ค์ž„ ์ง€์› (์„œ์šธํŠน๋ณ„์‹œ โ†’ ์„œ์šธ)
- [ ] ๋” ๋งŽ์€ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค

---

## ๐Ÿ“„ ๋ผ์ด์„ ์Šค

[MIT License](LICENSE) - ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉ, ์ˆ˜์ •, ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

MIT ๋ผ์ด์„ ์Šค๋Š” ์ด ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. KOSISยท๊ณต๊ณต๋ฐ์ดํ„ฐํฌํ„ธยทMDIS ์ž๋ฃŒ์˜ ์ €์ž‘๊ถŒ, ์ถœ์ฒ˜ ํ‘œ์‹œ, ์ด์šฉ ์กฐ๊ฑด๊ณผ ์ ‘๊ทผ ์Šน์ธ์€ ๊ฐ ๊ณต๊ธ‰์ž์˜ ์กฐ๊ฑด์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

---

## ๐Ÿ”— ๊ด€๋ จ ๋งํฌ

- [KOSIS ๊ตญ๊ฐ€ํ†ต๊ณ„ํฌํ„ธ](https://kosis.kr/)
- [KOSIS OpenAPI ๊ฐœ๋ฐœ ๊ฐ€์ด๋“œ](https://kosis.kr/openapi/)
- [Model Context Protocol](https://modelcontextprotocol.io/)
- [MCP TypeScript SDK](https://github.com/modelcontextprotocol/typescript-sdk)

---

## ๐Ÿ’ฌ ๋ฌธ์˜

์ด์Šˆ๋‚˜ ์งˆ๋ฌธ์ด ์žˆ์œผ์‹œ๋ฉด [GitHub Issues](https://github.com/Dayoooun/korea-stats-mcp/issues)์— ๋“ฑ๋กํ•ด ์ฃผ์„ธ์š”.

---

<p align="center">
  <b>Made with โค๏ธ for Korean Statistics</b><br>
  <sub>KOSIS OpenAPI ๊ธฐ๋ฐ˜ | MCP Compatible</sub>
</p>

TDQS

A3.5/5.0

Scored across 8 tools

Disambiguation4/5

Tools have distinct purposes with detailed usage hints, but quick_stats and get_statistics_data both return data and could cause minor confusion. Overall, agents can differentiate well.

Naming Consistency4/5

Most names follow verb_noun pattern (get_statistics_data, analyze_time_series), but quick_stats and quick_trend break the pattern with 'quick' as prefix, slightly reducing consistency.

Tool Count5/5

8 tools is ideal for a statistics server, covering listing, searching, data retrieval, comparison, and trend analysis without being overwhelming.

Completeness3/5

Core CRUD-like operations are present but missing get_table_info, which is referenced as a prerequisite. This gap forces agents to work around missing metadata retrieval.

Maintenance

ActivityMaintained
ResponsivenessSlow