Hwpx MCP Server
์ด ํ๋ก์ ํธ๋ ํ๊ธ MCP(HWPX) ์๋ฒ๋ก, HWPX ๋ฌธ์๋ฅผ ํ๊ธ ์๋ํ๋ก์ธ์ ์์ด ์ง์ ์ด๊ณ ์๋ํํ ์ ์๋๋ก ์ค๊ณ๋์์ต๋๋ค. Claude Desktop๊ณผ ๊ฐ์ MCP ํด๋ผ์ด์ธํธ์ ์ฐ๊ฒฐํ์ฌ ๋ฌธ์ ์์ฑยทํธ์งยทํ์ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
Ask AI about Hwpx MCP Server
Powered by Claude ยท Grounded in docs
I know everything about Hwpx MCP Server. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
๐ hwpx-mcp-server
ํ๊ธ(HWPX) ๋ฌธ์๋ฅผ AI๋ก ์๋ํํ๋ MCP ์๋ฒ
ํ๊ธ ์๋ํ๋ก์ธ์ ์์ด ยท ์์ ํ์ด์ฌ ยท ํฌ๋ก์ค ํ๋ซํผ
hwpx-mcp-server๋ ๋ชจ๋ธ ์ปจํ ์คํธ ํ๋กํ ์ฝ(MCP) ํ์ค์ ๋ฐ๋ฅด๋ ์๋ฒ๋ก, python-hwpx ๊ธฐ๋ฐ์์ HWPX ๋ฌธ์์ ์ด๋ ยท ๊ฒ์ ยท ํธ์ง ยท ์ถ์ถ์ AI ํด๋ผ์ด์ธํธ์์ ์ง์ ์ํํ ์ ์๊ฒ ํฉ๋๋ค.
์ฐธ๊ณ ์ด ์๋ฒ๋ Open XML ๊ธฐ๋ฐ
.hwpxํฌ๋งท์ ์ง์ํฉ๋๋ค. ๋ฐ์ด๋๋ฆฌ.hwpํฌ๋งท์ ์ง์ ํธ์ง ๋์์ด ์๋๋๋ค.
์ ํ์ํ๊ฐ?
๊ตญ๋ด ๊ณต๊ณต๊ธฐ๊ดยทํ๊ตยท๊ธฐ์ ์์๋ ํ๊ธ ๋ฌธ์ ๊ธฐ๋ฐ ์ ๋ฌด๊ฐ ๋ง์ง๋ง, ์๋ํ๋ ์ค๋ซ๋์ ์ด์์ฒด์ ์ ํ๋ก๊ทธ๋จ์ ํฌ๊ฒ ์์กดํ์ต๋๋ค.
hwpx-mcp-server๋ ์ด ์ ์ฝ์ ์ค์ด๋ ๋ฐ ์ด์ ์ ๋ก๋๋ค.
- โ ์ด์์ฒด์ ๋ฌด๊ด โ Windows, macOS, Linux์์ ๋์
- โ ํ๊ธ ์๋ํ๋ก์ธ์ ๋ถํ์ โ ์์ ํ์ด์ฌ ๊ธฐ๋ฐ ์ฒ๋ฆฌ
- โ AI ์ฐ๋ ์ค์ฌ โ Claude Desktop, VS Code, Gemini CLI ๋ฑ MCP ํด๋ผ์ด์ธํธ์ ์ง์ ์ฐ๊ฒฐ
- โ
์ผ๊ด๋ ํธ์ถ ๋ฐฉ์ โ ๋๊ตฌ ํธ์ถ๋ง๋ค
filename์ ๋ช ์ํ๋ stateless ๊ตฌ์กฐ
์ฌ์ฉ ์ฌ๋ก
- ์ค์ ์ฌ์ฉ ์ฌ๋ก:
docs/use-cases.md - ์ข
ํฉ ํ
์คํธ ๋ฆฌํฌํธ:
tests/hwpx_mcp_report_updated.md
๋น ๋ฅธ ์์
1. ์ค์น ๋ฐ ์คํ
uv ๊ธฐ์ค:
uvx hwpx-mcp-server
๋๋ pip ์ค์น ํ ์คํ:
pip install hwpx-mcp-server
hwpx-mcp-server
์๊ตฌ ์ฌํญ:
Python >= 3.10python-hwpx >= 2.6
ํ์ฌ ์ ์ฅ์ ๊ธฐ์ค ๊ฒ์ฆ ๋ฒ์ ์ python-hwpx 2.7.1์
๋๋ค.
2. MCP ํด๋ผ์ด์ธํธ ์ค์
Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"hwpx": {
"command": "uvx",
"args": ["hwpx-mcp-server"]
}
}
}
Gemini CLI
~/.gemini/settings.json
{
"mcpServers": {
"hwpx": {
"command": "uvx",
"args": ["hwpx-mcp-server"]
}
}
}
VS Code
.vscode/mcp.json
{
"servers": {
"hwpx": {
"command": "uvx",
"args": ["hwpx-mcp-server"]
}
}
}
Cursor / Windsurf
๊ฐ ์๋ํฐ์ MCP ์ค์ ํ์ผ์ ๊ฐ์ ๋ธ๋ก์ ์ถ๊ฐํ๋ฉด ๋ฉ๋๋ค.
{
"mcpServers": {
"hwpx": {
"command": "uvx",
"args": ["hwpx-mcp-server"]
}
}
}
์ฃผ์ ๊ธฐ๋ฅ
๊ธฐ๋ณธ ๋ชจ๋์์ ์ฃผ์ HWPX ํธ์ง ๋๊ตฌ๋ฅผ ์ ๊ณตํ๋ฉฐ, ๊ณ ๊ธ ๋ชจ๋(HWPX_MCP_ADVANCED=1)์์๋ ์ ๊ฒยท๊ฒ์ฆ์ฉ ๋๊ตฌ๊ฐ ์ถ๊ฐ๋ก ํ์ฑํ๋ฉ๋๋ค.
๐ ์ฝ๊ธฐ ๋ฐ ํ์
| ๋๊ตฌ | ์ค๋ช |
|---|---|
get_document_info | ๋ฌธ์ ๋ฉํ๋ฐ์ดํฐ, ์น์ , ๋ฌธ๋จ, ํ ๊ฐ์ ์กฐํ |
get_document_text | ๋ฌธ์ ์ ์ฒด ํ
์คํธ ์ถ์ถ (max_chars ์ง์) |
get_document_outline | ์ ๋ชฉ๊ณผ ๊ฐ์ ๊ตฌ์กฐ ์ถ์ถ |
get_paragraph_text | ํน์ ๋ฌธ๋จ ํ ์คํธ ์กฐํ |
get_paragraphs_text | ๋ฌธ๋จ ๋ฒ์ ์กฐํ |
list_available_documents | ํด๋ ์์ .hwpx ํ์ผ ๋ชฉ๋ก ์กฐํ |
๐ ๊ฒ์ ๋ฐ ์นํ
| ๋๊ตฌ | ์ค๋ช |
|---|---|
find_text | ํค์๋ ๊ฒ์๊ณผ ์ฃผ๋ณ ๋ฌธ๋งฅ ๋ฐํ |
search_and_replace | ๋จ์ผ ํ ์คํธ ์นํ |
batch_replace | ์ฌ๋ฌ ์นํ ์์ ์ผ๊ด ์คํ |
โ๏ธ ๋ฌธ์ ํธ์ง
| ๋๊ตฌ | ์ค๋ช |
|---|---|
add_heading | ์ ๋ชฉ(ํค๋ฉ) ๋ฌธ๋จ ์ถ๊ฐ |
add_paragraph / insert_paragraph / delete_paragraph | ๋ฌธ๋จ ์ถ๊ฐ, ์ฝ์ , ์ญ์ |
add_page_break | ํ์ด์ง ๋๋๊ธฐ ์ถ๊ฐ |
add_memo / remove_memo | ๋ฉ๋ชจ ์ถ๊ฐ, ์ ๊ฑฐ |
copy_document | ์์ ํ ์ฌ๋ณธ ์์ฑ ํ ์์ ์์ |
๐ ํ ํธ์ง
| ๋๊ตฌ | ์ค๋ช |
|---|---|
add_table / get_table_text | ํ ์์ฑ, ์กฐํ |
set_table_cell_text | ์ ํ ์คํธ ์์ |
merge_table_cells / split_table_cell | ์ ๋ณํฉ, ๋ถํ |
format_table | ํ ํค๋ ๋ฑ ๊ธฐ๋ณธ ์์ ์ ์ฉ |
๐จ ์์ ๋ฐ ์คํ์ผ
| ๋๊ตฌ | ์ค๋ช |
|---|---|
format_text | ํ ์คํธ ๋ฒ์ ์์ ์ ์ฉ |
create_custom_style | ์ปค์คํ ์คํ์ผ ์์ฑ |
list_styles | ๋ฌธ์ ์คํ์ผ ๋ชฉ๋ก ์กฐํ |
์คํ์ผ ์ฐธ์กฐ ํ: add_paragraph(..., style=...)์ insert_paragraph(..., style=...)๋ list_styles์ id, create_custom_style์ด ๋ฐํํ๋ style_id, ์คํ์ผ ์ด๋ฆ์ ๋ชจ๋ ๋ฐ์ ์ ์์ต๋๋ค.
๐ค ์ถ์ถ
| ๋๊ตฌ | ์ค๋ช |
|---|---|
hwpx_to_markdown | HWPX ๋ฌธ์๋ฅผ Markdown์ผ๋ก ๋ณํ |
hwpx_to_html | HWPX ๋ฌธ์๋ฅผ HTML๋ก ๋ณํ |
hwpx_extract_json | HWPX ๋ฌธ์๋ฅผ ๊ตฌ์กฐํ๋ JSON์ผ๋ก ์ถ์ถ |
๐ฌ ๊ณ ๊ธ ๋๊ตฌ
HWPX_MCP_ADVANCED=1์ผ ๋ ํ์ฑํ:
| ๋๊ตฌ | ์ค๋ช |
|---|---|
package_parts | OPC ํํธ ๋ชฉ๋ก ์กฐํ |
package_get_xml / package_get_text | ํํธ XML ๋๋ ํ ์คํธ ์กฐํ |
object_find_by_tag / object_find_by_attr | XML ์์ ๊ฒ์ |
plan_edit / preview_edit / apply_edit | ํธ์ง ๊ณํ, ๋ฏธ๋ฆฌ๋ณด๊ธฐ, ์ ์ฉ |
validate_structure / lint_text_conventions | ๊ตฌ์กฐ ๊ฒ์ฆ, ํ ์คํธ ๊ท์น ์ ๊ฒ |
ํ๊ฒฝ ๋ณ์
| ๋ณ์ | ์ค๋ช | ๊ธฐ๋ณธ๊ฐ |
|---|---|---|
HWPX_MCP_MAX_CHARS | ํ ์คํธ ๋ฐํ ๋๊ตฌ ๊ธฐ๋ณธ ์ต๋ ๊ธธ์ด | 10000 |
HWPX_MCP_AUTOBACKUP | 1์ด๋ฉด ์ ์ฅ ์ .bak ๋ฐฑ์
์์ฑ | 1 |
HWPX_MCP_ADVANCED | 1์ด๋ฉด ๊ณ ๊ธ ๋๊ตฌ ํ์ฑํ | 0 |
LOG_LEVEL | ๋ก๊ทธ ๋ ๋ฒจ | INFO |
ํ๊ฒฝ ๋ณ์ ํฌํจ MCP ์ค์ ์์:
{
"mcpServers": {
"hwpx": {
"command": "uvx",
"args": ["hwpx-mcp-server"],
"env": {
"HWPX_MCP_MAX_CHARS": "12000",
"HWPX_MCP_AUTOBACKUP": "1",
"HWPX_MCP_ADVANCED": "0",
"LOG_LEVEL": "INFO"
}
}
}
}
ํ ์คํธ
# ํ
์คํธ ์์กด์ฑ ์ค์น
python -m pip install -e ".[test]"
# ์ ์ฒด ํ
์คํธ
python -m pytest -q
์ถ๊ฐ ์ฐธ๊ณ :
- ์ฌ์ฉ ์ฌ๋ก:
docs/use-cases.md - ์ข
ํฉ ๋ฆฌํฌํธ:
tests/hwpx_mcp_report_updated.md - ์คํฌ ๊ธฐ๋ฐ ์ํฌํ๋ก:
docs/skill-first-workflows.md
๋ผ์ด์ ์ค
์์ฑ์
๊ณ ๊ทํ โ ๊ด๊ต๊ณ ๋ฑํ๊ต ์ ๋ณดยท์ปดํจํฐ ๊ต์ฌ
- ์ด๋ฉ์ผ: kokyuhyun@hotmail.com
- GitHub: @airmang
