# kordoc

> Gives your agent tools to read Korean HWP, HWPX, PDF and Office files as Markdown, fill forms and generate official HWPX documents.

kordoc is a community toolkit for Korean documents by chrisryugj (딴짓하는 류주임), a civil servant in Seoul. This is its MCP server: it runs on your computer with npx kordoc mcp and gives your agent document tools for Hangul word-processor files (HWP 3.x/5.x, HWPX and HWPML) as well as PDF, Word, Excel, PowerPoint and image files. It reads them as Markdown and writes new HWPX documents, without Hancom Office; it only needs Node.js 20 or later.

What you can do with it
- Convert a document to Markdown, or pull just its metadata, a page range, one table or heading-based chunks for RAG (parse_document, parse_metadata, parse_pages, parse_table, parse_chunks). Merged table cells come through as HTML tables, and scanned PDFs and images are read with built-in local OCR.
- Fill forms: list a form's fields as JSON, then fill them, keeping an HWPX form's layout (parse_form, fill_form). Values can come from a JSON file, so they stay out of the conversation.
- Edit a document by changing its Markdown and patching the changes back into the original HWPX or HWP with its formatting kept (patch_document).
- Generate HWPX documents from Markdown with Korean official-document presets such as reports, plans, notices, minutes and press releases, or reuse a reference document's table format (generate_document, extract_profile).
- Review an official document's notation, with optional style, logic, number and budget checks (lint_document).
- Compare two documents, even in different formats (compare_documents).
- Render an HWPX or HWP file to an image, SVG, HTML or PDF so the agent can check the layout, crop tables and figures from page images, and tell data tables from org charts (render_document, crop_regions, extract_tables).
- Place a seal or signature image over a phrase (place_seal), and mask personal information while keeping the format (redact_document).

How it connects
It's a local MCP server: the command is npx -y kordoc mcp, and it opens files from the paths you give your agent. npx -y kordoc setup writes the settings for the agents you have installed; the maker's docs name Claude Desktop, Claude Code, Cursor, Codex, Windsurf, VS Code, Gemini CLI, Zed and Antigravity. On Windows, if Claude Desktop can't find npx, the docs suggest running it through cmd /c.

Good to know
- No sign-in or API key. OCR runs on your own computer.
- KORDOC_OFFLINE=1 blocks all outbound traffic, and KORDOC_ROOT=<folder> limits the files the server can open to that folder.
- Password-protected files open with their password; files under Hancom's document security (DRM) can't be read.
- Generated and patched files are HWPX (patching also works on HWP); it reads Word files but doesn't write them.
- The same project also offers a command-line tool, a library and a Claude Code plugin.
- It's a community project, not made by Hancom.

- Type: Plugin
- Made by: chrisryugj
- Category: Productivity
- Formats: Local MCP
- Version: 4.24.9
- Website: https://github.com/chrisryugj/kordoc
- Source: https://github.com/chrisryugj/kordoc
- Page: https://pluginboard.ai/plugins/kordoc

## Works with

- Claude
- GitHub Copilot
- Cursor
- Claude Code
- Codex
- Antigravity
- Gemini CLI
- OpenClaw
- OpenCode
- Hermes Agent

## Install

### Claude

Add to claude_desktop_config.json:

```json
{
  "mcpServers": {
    "kordoc": {
      "command": "npx",
      "args": [
        "-y",
        "kordoc@4.24.9",
        "mcp"
      ]
    }
  }
}
```

### GitHub Copilot

Add to VS Code: vscode:mcp/install?%7B%22name%22%3A%22kordoc%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22kordoc%404.24.9%22%2C%22mcp%22%5D%7D

Run in your terminal:

```shell
code --add-mcp '{"name":"kordoc","command":"npx","args":["-y","kordoc@4.24.9","mcp"]}'
```

Copilot CLI:

```shell
copilot mcp add kordoc -- npx -y kordoc@4.24.9 mcp
```

### Cursor

Add to Cursor: cursor://anysphere.cursor-deeplink/mcp/install?name=kordoc&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsImtvcmRvY0A0LjI0LjkiLCJtY3AiXX0%3D

Add to .cursor/mcp.json:

```json
{
  "mcpServers": {
    "kordoc": {
      "command": "npx",
      "args": [
        "-y",
        "kordoc@4.24.9",
        "mcp"
      ]
    }
  }
}
```

### Claude Code

Run in your terminal:

```shell
claude mcp add kordoc -- npx -y kordoc@4.24.9 mcp
```

### Codex

Run in your terminal:

```shell
codex mcp add kordoc -- npx -y kordoc@4.24.9 mcp
```

### Antigravity

Add to ~/.gemini/config/mcp_config.json:

```json
{
  "mcpServers": {
    "kordoc": {
      "command": "npx",
      "args": [
        "-y",
        "kordoc@4.24.9",
        "mcp"
      ]
    }
  }
}
```

### Gemini CLI

Run in your terminal:

```shell
gemini mcp add kordoc npx -y kordoc@4.24.9 mcp
```

### OpenClaw

In a terminal: Run openclaw mcp add kordoc --command npx, with --arg before each argument (-y kordoc@4.24.9 mcp) and --env NAME=value for each variable it needs.

### OpenCode

Run in your terminal:

```shell
opencode mcp add kordoc -- npx -y kordoc@4.24.9 mcp
```

### Hermes Agent

Add to ~/.hermes/config.yaml:

```json
{
  "mcp_servers": {
    "kordoc": {
      "command": "npx",
      "args": [
        "-y",
        "kordoc@4.24.9",
        "mcp"
      ]
    }
  }
}
```

---
From Pluginboard (https://pluginboard.ai).
