kiwi-mcp-server

phddy/kiwi-mcp-server

3.2

If you are the rightful owner of kiwi-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

Kiwi MCP Server provides a Korean morphological analyzer as a Model Context Protocol (MCP) server, facilitating accurate text analysis and processing for AI agents.

Kiwi MCP Server

ํ•œ๊ตญ์–ด ํ˜•ํƒœ์†Œ ๋ถ„์„๊ธฐ Kiwi๋ฅผ Model Context Protocol (MCP) ์„œ๋ฒ„๋กœ ์ œ๊ณตํ•˜๋Š” ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.

AI ์—์ด์ „ํŠธ(Claude ๋“ฑ)๊ฐ€ ํ•œ๊ตญ์–ด ํ…์ŠคํŠธ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ๋ถ„์„ํ•˜๊ณ  ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค.

๊ธฐ๋Šฅ

1. analyze - ํ˜•ํƒœ์†Œ ๋ถ„์„

ํ•œ๊ตญ์–ด ํ…์ŠคํŠธ๋ฅผ ํ˜•ํƒœ์†Œ ๋‹จ์œ„๋กœ ๋ถ„์„ํ•˜๊ณ  ํ’ˆ์‚ฌ ํƒœ๊น…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์ž…๋ ฅ:

  • text (ํ•„์ˆ˜): ๋ถ„์„ํ•  ํ•œ๊ตญ์–ด ํ…์ŠคํŠธ
  • pos (์„ ํƒ): ํ•„ํ„ฐ๋งํ•  ํ’ˆ์‚ฌ ํƒœ๊ทธ ๋ฐฐ์—ด

์˜ˆ์‹œ:

{
  "text": "์•ˆ๋…•ํ•˜์„ธ์š”. ์˜ค๋Š˜ ๋‚ ์”จ๊ฐ€ ์ข‹๋„ค์š”.",
  "pos": ["NNG", "VA"]
}

2. similarity - ํ…์ŠคํŠธ ์œ ์‚ฌ๋„ ์ธก์ •

๋‘ ํ…์ŠคํŠธ ๊ฐ„์˜ ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„๋ฅผ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.

์ž…๋ ฅ:

  • text (ํ•„์ˆ˜): ์ฒซ ๋ฒˆ์งธ ๋น„๊ตํ•  ํ…์ŠคํŠธ
  • text2 (ํ•„์ˆ˜): ๋‘ ๋ฒˆ์งธ ๋น„๊ตํ•  ํ…์ŠคํŠธ
  • pos (์„ ํƒ): ์œ ์‚ฌ๋„ ๊ณ„์‚ฐ ์‹œ ์‚ฌ์šฉํ•  ํ’ˆ์‚ฌ ํƒœ๊ทธ

์˜ˆ์‹œ:

{
  "text": "์˜ค๋Š˜ ๋‚ ์”จ๊ฐ€ ์ข‹์Šต๋‹ˆ๋‹ค",
  "text2": "๋‚ ์”จ๊ฐ€ ์ •๋ง ์ข‹๋„ค์š”",
  "pos": ["NNG", "VA"]
}

์ง€์› ํ’ˆ์‚ฌ ํƒœ๊ทธ

์ฒด์–ธ

  • NNG: ์ผ๋ฐ˜ ๋ช…์‚ฌ
  • NNP: ๊ณ ์œ  ๋ช…์‚ฌ
  • NNB: ์˜์กด ๋ช…์‚ฌ
  • NR: ์ˆ˜์‚ฌ
  • NP: ๋Œ€๋ช…์‚ฌ

์šฉ์–ธ

  • VV: ๋™์‚ฌ
  • VA: ํ˜•์šฉ์‚ฌ
  • VX: ๋ณด์กฐ ์šฉ์–ธ
  • VCP: ๊ธ์ • ์ง€์ •์‚ฌ
  • VCN: ๋ถ€์ • ์ง€์ •์‚ฌ

๊ธฐํƒ€

  • MAG, MAJ: ๋ถ€์‚ฌ
  • MM: ๊ด€ํ˜•์‚ฌ
  • IC: ๊ฐํƒ„์‚ฌ
  • JKS, JKC, JKG, JKO, JKB, JKV, JKQ, JX, JC: ์กฐ์‚ฌ
  • EP, EF, EC, ETN, ETM: ์–ด๋ฏธ
  • XPN, XSN, XSV, XSA, XSM, XR: ์ ‘์‚ฌ/์–ด๊ทผ
  • SF, SP, SS, SE, SO, SW: ๊ธฐํ˜ธ
  • W_URL, W_EMAIL, W_HASHTAG, W_MENTION: ์›น ๊ด€๋ จ

์ „์ฒด ํ’ˆ์‚ฌ ํƒœ๊ทธ ๋ชฉ๋ก

๋น ๋ฅธ ์‹œ์ž‘

Docker๋กœ ์‹คํ–‰

# ์ตœ์‹  ๋ฒ„์ „
docker run -p 5100:5100 phddy/kiwi-mcp-server:latest

# ํŠน์ • ๋ฒ„์ „
docker run -p 5100:5100 phddy/kiwi-mcp-server:0.21.0

๋กœ์ปฌ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ

์š”๊ตฌ์‚ฌํ•ญ
  • Go 1.24.7+
  • Kiwi ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ (0.21.0)
  • GCC/G++ (CGO ๋นŒ๋“œ์šฉ)
ํ…Œ์ŠคํŠธ
go test ./...

Docker ๋นŒ๋“œ

# ๋กœ์ปฌ ๋นŒ๋“œ
docker build -t kiwi-mcp-server .

# ๋ฉ€ํ‹ฐ์•„ํ‚คํ…์ฒ˜ ๋นŒ๋“œ
docker buildx build --platform linux/amd64,linux/arm64 -t kiwi-mcp-server .

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

Claude Desktop ์„ค์ •

์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•œ ํ›„, Claude Desktop์˜ ์„ค์ • ํŒŒ์ผ์— ๋‹ค์Œ ๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”.

MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "kiwi": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "http://localhost:5100/sse"
      ]
    }
  }
}

์‚ฌ์šฉ ์˜ˆ์‹œ

Claude Desktop์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

"์•ˆ๋…•ํ•˜์„ธ์š”"๋ฅผ ํ˜•ํƒœ์†Œ ๋ถ„์„ํ•ด์ค˜

"์˜ค๋Š˜ ๋‚ ์”จ๊ฐ€ ์ข‹๋‹ค"์™€ "๋‚ ์”จ๊ฐ€ ์ •๋ง ์ข‹๋„ค์š”"์˜ ์œ ์‚ฌ๋„๋ฅผ ์ธก์ •ํ•ด์ค˜

"์„œ์šธํŠน๋ณ„์‹œ"๋ฅผ ๋ช…์‚ฌ๋งŒ ์ถ”์ถœํ•ด์„œ ๋ถ„์„ํ•ด์ค˜

Docker Compose๋กœ ์‹คํ–‰

์ง€์†์ ์œผ๋กœ ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•˜๋ ค๋ฉด Docker Compose๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”:

# docker-compose.yml
version: '3.8'
services:
  kiwi-mcp:
    image: phddy/kiwi-mcp-server:latest
    ports:
      - "5100:5100"
    restart: unless-stopped
docker-compose up -d

ํ™˜๊ฒฝ ๋ณ€์ˆ˜

  • KIWI_MODEL_PATH: Kiwi ๋ชจ๋ธ ํŒŒ์ผ ๊ฒฝ๋กœ (๊ธฐ๋ณธ๊ฐ’: /usr/share/kiwi/models/base)

๊ด€๋ จ ๋งํฌ