Releases: treesoop/hwp-mcp
Release list
v0.2.1 — fix bin symlink launch
Fix
Fix isMain guard so the server launches when invoked via the bin symlink (npm i -g, npx).
process.argv[1] holds the unresolved symlink path (e.g. /opt/homebrew/bin/hwp-mcp); import.meta.url points at the realpath (dist/server.js). The 0.2.0 comparison always failed silently — npx -y hwp-mcp exited 0 without starting the MCP transport, and clients reported ✗ Failed to connect.
realpathSync + pathToFileURL resolves both sides before comparing.
Regression coverage
test/server.bin-symlink.test.ts spawns dist/server.js through a tmp symlink and asserts the initialize handshake response — locks in the fix.
Upgrade
claude mcp remove hwp-mcp
claude mcp add hwp-mcp -- npx -y hwp-mcp@latest
claude mcp list | grep hwp-mcp # ✓ Connectednpm
https://www.npmjs.com/package/hwp-mcp/v/0.2.1
Full changelog: v0.2.0...v0.2.1
v0.2.0 — Node.js + rhwp rebuild, 34 tools, ~85% coverage
What's new
- Full rebuild: Python self-parser → Node.js MCP server backed by @rhwp/core (Rust + WebAssembly)
- 34 MCP tools covering ~85% of rhwp's feature surface (read, render, write)
- Read: text, tables (with merged cells), images, headers/footers, footnotes, equations
- Render: per-page SVG, full-document SVG, page HTML, equation → SVG
- Write (.hwpx): text replace, template fill, paragraph add/delete/edit, table row/col add/delete, cell merge (horizontal + vertical), cell text edit, image insert/replace/delete, character & paragraph styling, field value get/set
- Built on top of rhwp (Edward Kim, MIT) — please support that project too 🙏
Install
```bash
claude mcp add hwp-mcp -- npx -y hwp-mcp
```
Limitations (v0.3 roadmap)
- `.hwp` binary write (rhwp `exportHwp` round-trip limitation)
- Charts, style definitions, textbox body extraction
- `insert_hwp_table` schema completion (file is valid but rhwp walker may not detect)
Tested against
- Korean government `.hwpx` (9-page 산업AI 시행계획): all read tools + write smoke pass.
- 54/54 unit tests pass.
Co-authored with Claude Opus 4.7 (1M context).