Skip to main content
Glama
woongaro

Korean Law MCP Server

by woongaro
README.md
# ๐Ÿ‡ฐ๐Ÿ‡ท Korean Law MCP Server(๋ฒ•๋ฅ ์‚ฌ๋ฌด์†Œ ๋กœ์•ค์—์…‹)

๋Œ€ํ•œ๋ฏผ๊ตญ ๋ฒ•๋ น, ํŒ๋ก€, ํ—Œ๋ฒ•์žฌํŒ์†Œ ๊ฒฐ์ •์„ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๋Š” MCP(Model Context Protocol) ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค.


<img width="1408" height="768" alt="image" src="https://github.com/user-attachments/assets/7f019679-a7b9-456d-89e4-7303397eaa1f" />



## ๐Ÿ“‹ ์ œ๊ณต ๋„๊ตฌ

| ๋„๊ตฌ๋ช… | ์„ค๋ช… | ๋ฐ์ดํ„ฐ ์ถœ์ฒ˜ |
|--------|------|------------|
| `search_korean_law` | ํ˜„ํ–‰ ๋ฒ•๋ น ๊ฒ€์ƒ‰ | ๊ตญ๊ฐ€๋ฒ•๋ น์ •๋ณด์„ผํ„ฐ |
| `get_law_detail` | ๋ฒ•๋ น ์ƒ์„ธ ์กฐํšŒ (์กฐ๋ฌธ ํฌํ•จ) | ๊ตญ๊ฐ€๋ฒ•๋ น์ •๋ณด์„ผํ„ฐ |
| `search_precedent` | ๋Œ€๋ฒ•์›/ํ•˜๊ธ‰์‹ฌ ํŒ๋ก€ ๊ฒ€์ƒ‰ | ๊ตญ๊ฐ€๋ฒ•๋ น์ •๋ณด์„ผํ„ฐ |
| `get_precedent_detail` | ํŒ๋ก€ ์ƒ์„ธ ์กฐํšŒ | ๊ตญ๊ฐ€๋ฒ•๋ น์ •๋ณด์„ผํ„ฐ |
| `search_constitutional` | ํ—Œ๋ฒ•์žฌํŒ์†Œ ๊ฒฐ์ • ๊ฒ€์ƒ‰ | ๊ตญ๊ฐ€๋ฒ•๋ น์ •๋ณด์„ผํ„ฐ |
| `get_constitutional_detail` | ํ—Œ์žฌ ๊ฒฐ์ • ์ƒ์„ธ ์กฐํšŒ | ๊ตญ๊ฐ€๋ฒ•๋ น์ •๋ณด์„ผํ„ฐ |

## ๐Ÿš€ ์„ค์น˜ ๋ฐ ์„ค์ •

### 1. API ํ‚ค ๋ฐœ๊ธ‰

> โš ๏ธ **ํ•„์ˆ˜**: ๊ตญ๊ฐ€๋ฒ•๋ น์ •๋ณด์„ผํ„ฐ Open API ์‚ฌ์šฉ์„ ์œ„ํ•ด API ํ‚ค๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

1. [๊ตญ๊ฐ€๋ฒ•๋ น์ •๋ณด ๊ณต๋™ํ™œ์šฉ](https://open.law.go.kr) ์ ‘์†
2. ํšŒ์›๊ฐ€์ž…
3. ๊ณต๋™ํ™œ์šฉ ๋ฐ์ดํ„ฐ ์„ ํƒ โ†’ ํ™œ์šฉ ์‹ ์ฒญ
4. **IP ์ฃผ์†Œ ๋“ฑ๋ก** (์‚ฌ์šฉํ•˜๋Š” ์ปดํ“จํ„ฐ์˜ ๊ณต์ธ IP ๋“ฑ๋ก ํ•„์ˆ˜)
5. ์Šน์ธ ์™„๋ฃŒ (1~2์ผ ์†Œ์š”)

### 2. ์˜์กด์„ฑ ์„ค์น˜

```bash
cd korean-law-mcp
npm install
```

### 3. ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ •

```bash
cp .env.example .env
```

`.env` ํŒŒ์ผ์„ ์—ด๊ณ  ๊ฐ€์ž… ์‹œ ์‚ฌ์šฉํ•œ ์ด๋ฉ”์ผ ID ์ž…๋ ฅ:

```
LAW_API_OC=your_email_id
```

### 4. ๋นŒ๋“œ ๋ฐ ์‹คํ–‰

```bash
npm run build
npm start
```

## ๐Ÿ”ง MCP ํด๋ผ์ด์–ธํŠธ ์„ค์ •

MCP ํ˜ธํ™˜ ํด๋ผ์ด์–ธํŠธ(Antigravity, Claude Desktop ๋“ฑ)์—์„œ ์„ค์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

### Claude Desktop

`~/Library/Application Support/Claude/claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "korean-law": {
      "command": "node",
      "args": ["/path/to/korean-law-mcp/dist/index.js"],
      "env": {
        "LAW_API_OC": "your_email_id"
      }
    }
  }
}
```

### Antigravity / ๊ธฐํƒ€ MCP ํด๋ผ์ด์–ธํŠธ

ํ•ด๋‹น ํด๋ผ์ด์–ธํŠธ์˜ MCP ์„œ๋ฒ„ ์„ค์ •์— ๋™์ผํ•œ ๊ตฌ์„ฑ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”.

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

### ๋ฒ•๋ น ๊ฒ€์ƒ‰

```
๋ฏผ๋ฒ• ์ œ750์กฐ ๋ถˆ๋ฒ•ํ–‰์œ„ ์กฐ๋ฌธ์„ ์ฐพ์•„์ค˜
๊ทผ๋กœ๊ธฐ์ค€๋ฒ•์—์„œ ํ•ด๊ณ  ๊ด€๋ จ ์กฐ๋ฌธ์„ ๊ฒ€์ƒ‰ํ•ด์ค˜
```

### ํŒ๋ก€ ๊ฒ€์ƒ‰

```
์†ํ•ด๋ฐฐ์ƒ ์†Œ๋ฉธ์‹œํšจ ๊ด€๋ จ ๋Œ€๋ฒ•์› ํŒ๋ก€๋ฅผ ๊ฒ€์ƒ‰ํ•ด์ค˜
2020๋‹ค12345 ํŒ๋ก€๋ฅผ ์ฐพ์•„์ค˜
```

### ํ—Œ์žฌ ๊ฒฐ์ • ๊ฒ€์ƒ‰

```
์–‘์‹ฌ์  ๋ณ‘์—ญ๊ฑฐ๋ถ€ ๊ด€๋ จ ํ—Œ์žฌ ๊ฒฐ์ •์„ ์ฐพ์•„์ค˜
๊ณผ์ž‰๊ธˆ์ง€์›์น™ ์œ„๋ฐ˜ ๊ฒฐ์ •๋ก€๋ฅผ ๊ฒ€์ƒ‰ํ•ด์ค˜
```

## ๐Ÿ” API ์ƒ์„ธ ์ •๋ณด

### ๋ฒ•๋ น ๊ฒ€์ƒ‰ ํŒŒ๋ผ๋ฏธํ„ฐ

| ํŒŒ๋ผ๋ฏธํ„ฐ | ์„ค๋ช… | ์˜ˆ์‹œ |
|----------|------|------|
| query | ๊ฒ€์ƒ‰ ํ‚ค์›Œ๋“œ | "๋ฏผ๋ฒ•", "๊ทผ๋กœ๊ธฐ์ค€๋ฒ•" |
| nw | ๋ฒ•๋ น ์ƒํƒœ | 1:์—ฐํ˜, 2:์‹œํ–‰์˜ˆ์ •, 3:ํ˜„ํ–‰ |
| sort | ์ •๋ ฌ | lasc, ldes, dasc, ddes |

### ํŒ๋ก€ ๊ฒ€์ƒ‰ ํŒŒ๋ผ๋ฏธํ„ฐ

| ํŒŒ๋ผ๋ฏธํ„ฐ | ์„ค๋ช… | ์˜ˆ์‹œ |
|----------|------|------|
| query | ๊ฒ€์ƒ‰ ํ‚ค์›Œ๋“œ | "์†ํ•ด๋ฐฐ์ƒ", "๋ถˆ๋ฒ•ํ–‰์œ„" |
| curt | ๋ฒ•์›๋ช… | "๋Œ€๋ฒ•์›", "์„œ์šธ๊ณ ๋“ฑ๋ฒ•์›" |
| org | ๋ฒ•์›์ข…๋ฅ˜ | 400201:๋Œ€๋ฒ•์›, 400202:ํ•˜์œ„๋ฒ•์› |

### ํ—Œ์žฌ ๊ฒฐ์ • ๊ฒ€์ƒ‰ ํŒŒ๋ผ๋ฏธํ„ฐ

| ํŒŒ๋ผ๋ฏธํ„ฐ | ์„ค๋ช… | ์˜ˆ์‹œ |
|----------|------|------|
| query | ๊ฒ€์ƒ‰ ํ‚ค์›Œ๋“œ | "์œ„ํ—Œ", "๊ณผ์ž‰๊ธˆ์ง€" |
| sort | ์ •๋ ฌ | lasc, ddes, nasc |

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

MIT License

## ๐Ÿ™ ๋ฐ์ดํ„ฐ ์ถœ์ฒ˜

- [๊ตญ๊ฐ€๋ฒ•๋ น์ •๋ณด์„ผํ„ฐ](https://www.law.go.kr) - ๋ฒ•์ œ์ฒ˜
- [๊ตญ๊ฐ€๋ฒ•๋ น์ •๋ณด ๊ณต๋™ํ™œ์šฉ](https://open.law.go.kr) - Open API