Skip to main content
Glama

hwpx_new

version python license MCP site

한글(HWPX) 문서를 AI 로 만드는 도구입니다. 서식 파일을 주면 그 서식 그대로 새 문서를, 서식이 없으면 차례·통계·도표까지 맞춰진 연구학교 결과보고서를 HWPX 와 PDF 로 만들어 줍니다.

"이 계획서를 결과보고서로 바꿔줘" · "작년 안내문을 올해로 고쳐줘" · "겉공문 만들어줘" · "연구학교 결과보고서 써줘, 설문 자료는 data.csv"

Claude · ChatGPT(Codex) · Gemini · Grok · Cursor · Antigravity 등 어떤 AI 에서도 같은 결과가 나오도록 만든 스킬 + MCP + 명령줄 도구입니다. 소개 페이지: https://zzombie04.github.io/hwpx_new/

연구학교 결과보고서 예시(가상 학교): 표지 · 연구 요약 · 결과 분석 · 도표

서식(계획서)

→

결과(결과보고서)

서식

결과

표지 띠, 소제목 바, 표 색·테두리, 강조 박스, 글머리 기호, 글자 색·굵기, 줄 간격, 쪽 번호까지 원본 서식 그대로 복제됩니다.

새 기능 2.4.0 — 사용자 화면을 절대 건드리지 않는 한글 자동화 · 겉공문 고정 서식

  • 숨은 데스크톱 실행: PDF 저장·.hwp 변환·--check·qa 를 하는 동안 한글이 사용자의 키보드·마우스·창 포커스를 가져가지 않습니다. 작업 중에도 평소처럼 타자·클릭을 계속할 수 있습니다. 한글 작업은 잠금으로 한 번에 하나씩 돕니다.

  • 겉공문 본문 고정: gongmun 본문은 서식 파일과 관계없이 돋움체 · 12pt · 줄 간격 123%, 마지막 끝. 아래에는 들여쓰기·여백 없는 빈 줄 하나가 자동으로 들어갑니다(본문이 표로 끝나면 표 다음 줄에 끝.).

  • kordoc 과 함께 쓸 때의 규칙을 지침(AGENTS.md·CLAUDE.md·GEMINI.md·스킬)에 넣었습니다: 읽기·검수·미리보기는 kordoc, 만들기는 이 도구.

Related MCP server: report-mcp

2.3.0 — 연구학교 결과보고서·연구보고서를 원고 한 장으로

hwpx-new report init 내보고서                 # 바로 빌드되는 예시 원고 + 자료(CSV) + 사진
hwpx-new report 내보고서/report.txt           # → 내보고서/결과/이름.hwpx + .pdf + 점검 결과

도구가 알아서

내용

차례·표 차례 실제 쪽수

한글로 PDF 를 만들어 제목이 놓인 쪽을 읽고, 쪽이 바뀌지 않을 때까지 다시 조판(보통 2번)

표·그림 번호와 참조

{표:키} → '표 Ⅴ-3', 번호 뒤 조사(과/와, 을/를)도 받침에 맞게

통계는 계산 명령으로

@stats paired data.csv --pre 사전 --post 사후 → t·p·d·95% CI·α·κ·r 을 조판할 때마다 자료에서 다시 계산(외부 패키지 없이, scipy 와 소수점 13자리까지 일치)

도표 12종

막대·묶음·효과 크기·산점도·누적·흐름·절차·순환… 자료만 쓰거나 data=자료.csv 로 파일에서 바로. 인쇄해도 읽히는 글자, 300dpi

긴 표

쪽을 넘으면 행 단위로 나누고 머리행 반복, 표 제목만 쪽 끝에 남으면 다음 쪽으로

조판 다듬기

t(31) = 6.16·p < .001 같은 통계 표현이 줄 끝에서 갈라지지 않게, 한 장짜리 사진은 틀을 사진에 맞춰 가운데로

심사 전 점검

참고문헌에 없는 인용, 틀린 요일, 풀리지 않은 참조, 근거보다 큰 말('입증'), 검정 없는 '유의', 쪽수 초과

예시는 가상 학교 ‘가온중학교’의 20쪽 보고서입니다(수치는 예시 자료, 사진은 생성형 AI 예시). 원고 문법은 hwpx_new/REPORT.md (hwpx-new report guide).


핵심 아이디어: "서식은 도구가, 글은 AI 가"

서식의 모양(글자 색·크기·굵기, 줄 간격, 들여쓰기, 글머리 기호, 표 테두리·칸 색, 간격)을 AI 가 흉내 내면 AI 마다 결과가 달라집니다. 그래서 hwpx_new 는 서식 안의 실제 요소를 그대로 복제하고 AI 는 글과 구조만 씁니다.

  1. hwpx-new analyze 서식.hwpx — 서식을 분석해 같은 모양끼리 묶은 "서식 종류"(H1 소제목, B1 글머리, T2 표 …)와, 서식을 그대로 다시 만들어 내는 뼈대 Markdown 을 줍니다.

  2. AI 는 뼈대의 글만 새 목적에 맞게 고치고 구조를 재구성합니다(표시 {B2} 는 그대로 둠).

  3. hwpx-new build — 원본 요소를 복제해 HWPX 를 만들고, 한글로 PDF 를 만들어 쪽 배치를 점검·자동 보정합니다.

실제 공문서·계획서 54종으로 "서식 → 뼈대 → 재조립 → 원본과 비교"를 돌리면 블록의 약 87% 가 글자 크기·색·굵기·정렬·들여쓰기·줄간격·테두리까지 원본과 같은 모양으로 재현됩니다 (hwpx-new selfcheck 서식.hwpx 로 내 서식의 재현도를 직접 볼 수 있습니다. 사진·도면·병합 표 같은 복잡한 블록은 통째로 복제하므로 모양 100%).

설치 (5분, git 불필요)

  1. Python 3.9 이상 설치 (Windows: winget install -e --id Python.Python.3.12, 또는 python.org — Add python.exe to PATH 체크)

  2. 아래 중 하나

    • ZIP 으로: GitHub 의 Code → Download ZIP → 압축 풀기 → Windows 는 install.bat 더블클릭 / macOS·Linux 는 bash install.sh

    • 한 줄로 (git 없이도 됨):

      pip install https://github.com/ZZombie04/hwpx_new/archive/refs/heads/main.zip
    • git 이 있으면: pip install git+https://github.com/ZZombie04/hwpx_new.git

  3. 확인 및 AI 프로그램 연결

    hwpx-new doctor      # 환경 점검
    hwpx-new setup       # 설치된 AI 프로그램(Claude·Codex·Gemini·Cursor…)에 MCP 자동 연결

    install.bat / install.sh 는 전용 가상환경에 설치하고 위 두 단계까지 자동으로 해 줍니다. hwpx-new 명령이 안 잡히면 python -m hwpx_new … 로 쓰면 됩니다.

필요한 패키지는 lxml, pymupdf, pillow, segno(QR) 네 개뿐입니다(MCP 서버·통계·점검기는 표준 라이브러리만으로 구현). 한글(Hancom Office)이 설치된 Windows 에서는 실제 한글로 PDF 를 만들어 쪽 배치가 가장 정확합니다. 한글이 없으면 Chrome/Edge 기반 내장 렌더러가 근사 PDF 를 만듭니다(HWPX 자체는 동일).

AI 에 연결하기

방법

대상

하는 일

A. 명령줄 AI

Claude Code · Codex · Gemini CLI · Grok · Antigravity …

이 폴더를 열고 말하면 됩니다. 저장소의 AGENTS.md(= CLAUDE.md, GEMINI.md)에 작업 절차 전체가 있어 AI 가 스스로 분석 → 작성 → 변환 → 확인 → 보정까지 합니다

B. MCP

Claude Desktop/Code · Cursor · Windsurf · Codex · Gemini …

hwpx-new setup (자동) 또는 hwpx-new mcp-config (출력된 설정을 붙여 넣기). hwpx_analyze · hwpx_build · hwpx_preview 등 도구가 생깁니다 → docs/clients.md

C. Claude 스킬

Claude Code

hwpx-new setup --skill

D. 도구 연결 없는 채팅 AI

웹 ChatGPT · Gemini · Grok

hwpx-new prompt 서식.hwpx "요청" 출력 전체를 채팅창에 붙여넣고, AI 가 준 Markdown 을 content.md 로 저장해 hwpx-new build 서식.hwpx content.md -o 결과

E. 채팅 AI 로 장편 보고서

웹 ChatGPT · Gemini · Claude · Grok

hwpx-new report prompt "요청" --data 자료.csv -o 프롬프트.txt → 붙여 넣기 → 받은 원고를 report.txt 로 저장 → hwpx-new report report.txt

서식.hwpx 를 분석해서 결과보고서로 만들어줘. 연수는 9/16, 9/22 두 번 했고 각각 11명, 13명 이수했어.

이렇게 말하세요 (예시)

하고 싶은 일

AI 에게

계획서 → 결과보고서

"계획서.hwpx 를 결과보고서로 만들어줘. 참석 24명, 만족도는 매우 좋았어"

작년 문서 → 올해

"작년 안내문.hwpx 를 올해(2026년 10월 14일 수요일) 행사로 바꿔줘"

같은 양식으로 새 문서

"이 양식.hwpx 로 ○○ 사업 운영 계획서 만들어줘. 자료는 아래와 같아…"

사진·도면이 많은 기존 문서를 우리 기관용으로

"도교육청 요강.hwpx 를 읽고 우리 지역 조건(참가 대상·신청 방법·시상)을 넣어 운영 계획서를 만들어줘" (원본 사진·표·양식은 그대로 복제)

옛 .hwp 파일

"서식.hwp 로 …" (Windows+한글이면 자동 변환)

AI 는 마지막에 HWPX 경로, PDF 경로, (지어낸 내용이 있다면) 그 목록을 알려 줍니다. 사용자가 주지 않은 숫자·이름을 임의로 만들지 않는다는 규칙이 지침에 들어 있습니다. 빌드는 서식 원문의 문장이 그대로 남았는지(옛 기관명·날짜), 날짜-요일 불일치, 표 칸 수 불일치도 경고합니다.

사진도 알아서 넣어 줍니다

서식(계획서).hwpx 로 결과보고서 만들어줘. 사진은 사진/ 폴더에 있어. 1기는 9/16, 11명 이수.
  1. hwpx-new photos 사진/ — 촬영 시각 순 목록과 번호 붙은 한눈에 보기 이미지. AI 가 이 이미지를 보고 각 사진이 무엇인지 파악합니다.

  2. 활동 장면은 사진 대지(표 안의 사진 격자 + 캡션), 단체 사진은 단독 사진, 설문지·자료는 표 셀 안에 넣습니다.

  3. 사진은 자동으로 회전 보정 · 형식 변환(HEIC 등) · 용량 줄이기 후 HWPX 안에 들어갑니다.

    • 원본을 그대로 넣지 않고 문서에 보이는 크기 × 200dpi(인쇄해도 깨끗한 해상도)로 줄입니다. 키우지는 않습니다.

    • 사진은 JPEG(품질 82), 도표·QR 같은 그림은 색 수에 맞춘 PNG — 휴대전화 사진 한 장(35MB)이 보통 100300KB 가 됩니다.

    • 이미 원본 사진이 잔뜩 들어간 문서는 hwpx-new shrink 문서.hwpx -o 작은문서.hwpx 로 그림만 줄입니다(글·서식은 그대로, 원본 파일은 그대로 둠).

사진이 들어간 결과 페이지

산만한 서식을 깔끔하게 — 정돈 조판(compose)

서식 원본의 글자색·정렬·번호가 제각각이면, 그대로 복제하는 대신 본문을 하나의 체계로 새로 짭니다(표지·대제목 디자인만 서식에서 가져옴).

  • 체계: Ⅰ(대제목) → ■ 소제목 → ❍ 항목 → - 세부 → ※ 참고 — 단계마다 글꼴·크기·들여쓰기·줄간격 고정, 둘째 줄은 기호 뒤 글자에 정확히 맞춤

  • 글자색은 검정, 꼭 지킬 기한만 강조색 / 표는 머리행 연한 남색·항목 열 연회색·위아래 굵은 선으로 통일

  • 명세(JSON): hwpx-new compose 명세.json -o 결과.hwpx --check (예시 examples/compose_spec.json), 파이썬 API 는 hwpx_new.compose.Composer

  • 만든 뒤 hwpx-new qa 결과.pdf 로 정렬·색·겹침을 자동 점검합니다.

어떤 AI 모델로 해도 같은 결과가 나오게

모양을 AI 가 파이썬으로 직접 짜면 모델마다 결과가 달라집니다(강한 모델은 잘 짜고, 가벼운 모델은 들여쓰기·표·결재란을 놓침). 그래서 2.2.0 부터는 모양은 도구가, AI 는 JSON 명세(글과 구조)만 씁니다 — compose·gongmun·patch 명세 → 만들기 → --check(오류 0 까지) → 쪽 그림 확인. 지침(AGENTS.md)은 '작업 고르기 표 → 공통 순서 체크리스트'로 되어 있어 가벼운 모델도 같은 순서를 따릅니다. 예시 명세: examples/*.json.

2.3.0 은 한 걸음 더 갑니다.

  • 숫자도 AI 가 만들지 않습니다. 원고에는 @stats 계산 명령만 쓰고 숫자는 도구가 자료에서 계산합니다(가벼운 모델이 t값·p값을 지어내는 일이 없음).

  • 도표 코드도 짜지 않습니다. @chart 에 자료만 쓰면 같은 디자인으로 그립니다.

  • 바로 고쳐 쓸 완성 예시(report init)가 있어 어떤 모델이든 구성을 그대로 따라 씁니다.

  • 원고 실수에도 멈추지 않습니다. @end 빠짐·모르는 표시·칸 수가 틀린 표·없는 사진·없는 열 이름은 도구가 고치거나 표시하고, 점검 결과로 알려 줍니다.

  • 실험: 가장 가벼운 모델(Claude Haiku)에게 지침 파일만 주고 다른 학교·다른 설문 자료로 보고서를 맡겼더니, 통계 19개를 모두 @stats 로 계산해 20쪽(본문 13쪽) 보고서를 점검 오류 0 으로 완성했습니다. 이때 나온 헷갈린 점(쪽수 기준·색 규칙·변화량 계산)은 지침과 도구에 반영했습니다.

  • 어떤 환경에서도: MCP 서버·통계·도표·점검기는 표준 라이브러리 + lxml·pymupdf·pillow 만 씁니다(Node·브라우저 자동화 불필요). 한글이 있으면 한글이 PDF 를 만들고(한글 2024 에서 실측), 없으면 내장 렌더러가 같은 쪽 수의 근사 PDF 를 만듭니다. 콘솔이 CP949 여도 출력이 깨지지 않습니다.

한글이 "파일 접근 허용"을 물어볼 때

한글은 외부 프로그램이 파일을 열 때 "파일 접근 허용" 보안 승인 창을 띄웁니다. 다만 한글(HwpAutomation.dll)은 Windows 임시 폴더(GetTempPath) 아래 파일은 묻지 않고 허용합니다 (한글 2024 13.0.0.1408 에서 역분석·실측). 그래서 hwpx_new 는 작업 파일을 %TEMP%\hwpx_new_work 에 복사해 열고 저장하므로 승인 창이 뜨지 않습니다 — 한글 보안 설정·레지스트리는 바꾸지 않습니다.

  • 사용자 PC 를 방해하지 않습니다(2.4.0): 한글은 이 도구 전용 숨은 데스크톱에서 돕니다. 숨은 데스크톱의 창은 사용자 화면의 전경 창이 될 수 없어 키보드 포커스·마우스·창 순서를 절대 가져가지 않습니다. 마우스 커서를 옮기거나 키를 보내거나 창을 앞으로 가져오는 코드는 없습니다. 실측: python tools/focus_guard_test.py (변환하는 동안 50ms 마다 전경 창·사용자 화면의 한글 창을 기록 → 판정: 방해 없음).

  • 한글 작업은 한 번에 하나씩: 여러 AI·여러 창이 동시에 변환을 시켜도 잠금 파일로 차례를 기다려 한글 COM 이 부딪히지 않습니다.

  • 사용자 한글은 끄지 않습니다: 작업이 끝나면 이 도구가 COM 으로 띄운 한글 프로세스(창 핸들로 찾은 것, 모르면 명령줄에 -Embedding 이 있는 것)만 정리합니다. 작업 중에 사용자가 연 한글은 그대로 둡니다.

  • HWPX_NEW_WORK 로 작업 폴더를 임시 폴더 밖에 두면 승인 창이 다시 뜹니다. 이때 도구는 [접근 허용]을 UI Automation 으로만 눌러 보는데, 한글 승인 창은 활성 상태가 아니면 이를 무시하므로 닫히지 않을 수 있습니다(50초 뒤 알리고 이 도구의 한글만 정리, 근사 PDF 로 대체).

  • 원인과 상태는 hwpx-new doctor 가, 실제로 한 번 변환해 보는 점검은 hwpx-new doctor --hancom 이 알려 줍니다(승인 창을 자동으로 처리했는지까지 출력).

  • 승인 창을 아예 없애려면(선택, 보안 설정 변경): 한글 개발자 자료(자동화 SDK)의 FilePathCheckerModule DLL 을 구해 hwpx-new hancom-module register --dll 경로 로 등록합니다 (현재 사용자 레지스트리만, hancom-module remove 로 해제, hancom-module status 로 확인). 이 도구는 DLL 을 내려받거나 만들지 않고, 사용자가 직접 실행할 때만 동작합니다.

명령어 모음

명령

설명

hwpx-new doctor

환경 점검(파이썬 패키지·한글·PDF 엔진·숨은 데스크톱 화면 분리)

hwpx-new setup [--skill] [--dry-run]

설치된 AI 프로그램에 MCP(+스킬) 자동 연결(설정 파일은 백업 후 수정)

hwpx-new analyze 서식.hwpx

서식 종류 목록 + 블록 목록 + 뼈대 Markdown

hwpx-new skeleton 서식.hwpx -o 뼈대.md

뼈대 Markdown 만 저장

hwpx-new selfcheck 서식.hwpx [-v]

서식을 다시 조립해 원본과 모양 비교(서식 재현도 %)

hwpx-new build 서식.hwpx content.md -o 결과폴더

HWPX + PDF + 미리보기 PNG (자동 점검·보정 포함)

hwpx-new compose 명세.json -o 결과.hwpx --check

정돈 조판 명세: 계획서·안내문을 Ⅰ→■→❍→- 체계로(파이썬 없이 JSON 만)

hwpx-new gongmun 명세.json -o 결과.hwpx --check

공문: 기관 공문 서식 + 내용 JSON → 기안문·겉공문(번호 체계·표·QR·붙임/끝·수신자·결재란)

hwpx-new patch 원본.hwpx ops.json -o 결과.hwpx

손본 파일 고치기: 사용자가 한글에서 맞춘 자간·빈 줄은 그대로 두고 글로 찾은 곳만 바꾸기

hwpx-new replace 원본.hwpx -o 결과.hwpx --pair "옛=>새"

행사명·날짜 등 글자만 바꾸기(나머지는 바이트 그대로)

hwpx-new diff A.hwpx B.hwpx

두 파일의 글 차이 + 한글에서 저장한 파일인지

hwpx-new report init 폴더 / report 원고 [-o 결과]

장편 보고서: 예시 만들기 / 원고 → HWPX + PDF(차례 쪽수·표 쪽 넘김 자동 맞춤, 점검 포함)

hwpx-new report check 원고 [--pdf 결과.pdf]

보고서 점검: 인용↔참고문헌·요일·참조·토큰·큰 말·'유의'·쪽수

hwpx-new report guide / report prompt "요청" --data 자료.csv

원고 문법 / 채팅형 AI 에 붙여 넣을 프롬프트

hwpx-new stats paired 자료.csv --pre 사전 --post 사후

통계: paired·welch·alpha·kappa·corr·desc·freq, --where 열=값 → 원고 토큰

hwpx-new chart 명세.json -o 도표.png

보고서와 같은 디자인의 도표 PNG(12종)

hwpx-new qa 결과.hwpx [--strict]

조판 점검: 글자색·단계 정렬·내어쓰기·글꼴·겹침·쪽 끝 소제목·빈 쪽·공문 결재란 + 문제 위치 표시 그림(HWPX 를 주면 PDF 로 바꿔서, 파이썬만으로)

hwpx-new photos 사진폴더

사진 목록 + 번호 붙은 한눈에 보기 이미지

hwpx-new shrink 문서.hwpx -o 작은문서.hwpx [--dpi 200]

문서 속 그림을 보이는 크기에 맞게 줄여 파일 용량 줄이기(글·서식 그대로)

hwpx-new read 문서.hwpx

HWPX 본문을 Markdown 으로 읽기

hwpx-new preview 결과.pdf --page 2

PDF 한 쪽을 PNG 로

hwpx-new convert 옛서식.hwp

.hwp → .hwpx (Windows + 한글)

hwpx-new prompt 서식.hwpx "요청"

채팅 AI 용 완성 프롬프트

hwpx-new instructions / format

AI 작업 지침 / 내용 작성 문법 출력

hwpx-new hancom-module status/register/remove

(선택) 한글 공식 보안 모듈 등록으로 승인 창 없애기

hwpx-new mcp-config

MCP 설정 문구 출력

내용 작성 문법 (핵심)

:::cover                         ← 표지 글 칸(칸 수·순서 유지)
2026 ○○ 연수 운영 계획
○○교육지원청 ○○과
:::

## Ⅰ. 소제목
- 글머리 문단 **굵은 낱말**
  - 하위 단계
- {B2} 다른 모양의 글머리(서식 종류 표시)

:::box 강조 박스 제목
박스 안 줄
:::

| 항목 | 내용 |
|---|---|
| 연수명 | 2026 ○○ 연수 |
@like 34 | 색·크기가 섞인 문단의 모양을 빌려 글만 바꿈
@clone 12                        ← 사진·도면·서명란 블록 그대로 복제
<!-- pagebreak -->

빈 줄·간격·번호 모양·표 테두리·글자 색은 서식에서 배워서 자동 적용되므로 적지 않습니다. 전체 문법: hwpx_new/FORMAT.md (hwpx-new format).

어떻게 서식을 알아내나요

HWPX 는 ZIP 안의 XML 입니다. hwpx_new 는 문서의 각 블록에 역할(표지·소제목·글머리·번호·본문·표·박스·사진)을 붙이고, 글자·문단·테두리의 실제 값(크기·색·굵기·정렬·들여쓰기·줄간격·테두리·칸 색)이 같은 블록끼리 서식 종류로 묶습니다. 새 글을 쓸 때는 본문에서 가장 흔한 견본(표지 제외)을 복제하고, 글머리 단계·번호 종류·소제목 종류·표 모양은 글 내용(기호·열 수)에 맞춰 고르며, 블록 사이 간격은 서식이 앞 역할 → 뒤 역할 사이에 둔 빈 줄을 그대로 따릅니다. 표는 열 수가 같으면 같은 자리의 칸(글자·정렬·테두리·칸 색)을 그대로 가져옵니다. 자세한 내용은 docs/how-it-works.md.

자주 묻는 질문

PDF 가 한글에서 연 것과 조금 달라요. 한글이 없는 환경에서는 내장 렌더러가 만든 근사 PDF 입니다. 한글이 설치된 Windows 에서는 한글 자신이 PDF 로 저장합니다.

설치가 안 돼요. python -m pip install https://github.com/ZZombie04/hwpx_new/archive/refs/heads/main.zip 를 실행해 보세요(git 불필요). 오류 메시지를 AI 에게 보여 주면 됩니다. hwpx-new 명령을 찾을 수 없다면 python -m hwpx_new doctor 로 쓰세요.

AI 프로그램에 도구가 안 나타나요. hwpx-new setup 후 AI 프로그램을 완전히 종료했다가 다시 실행해야 합니다. 그래도 안 되면 hwpx-new mcp-config 의 설정을 직접 붙여 넣으세요.

.hwp 파일은요? 옛 형식이라 직접 읽지 않습니다. hwpx-new convert 또는 한글에서 다른 이름으로 저장 → HWPX.

표에 열이 너무 많으면? 7열 이상이면 경고합니다. 열을 줄이거나 표를 나눠 쓰세요.

통계를 몰라도 결과보고서를 쓸 수 있나요? 자료 파일(CSV·엑셀)의 열 이름만 알면 됩니다. @stats paired 자료.csv --pre 사전 --post 사후 --prefix ref 한 줄이면 본문에서 {{ref.t}}·{{ref.p}}·{{ref.d}} 로 씁니다. p 는 APA 식(< .001), 반올림은 사사오입입니다.

AI 가 참고문헌을 지어내면요? report check 가 본문 인용과 참고문헌을 대조하고, 지침은 확인한 문헌만 쓰게 합니다. 그래도 최종 확인은 사람이 하세요(DOI·학술지 누리집).

한계

  • 서식의 첫 번째 구역(섹션)만 사용합니다(여러 구역 문서는 clone 의 section 으로 다른 구역 블록을 복제).

  • 각주·수식은 복제하지 않습니다(표지 띠 같은 표 장식과 사진·도면 문단은 @clone 으로 그대로 유지).

  • 한글 자동 변환은 Windows + 한글 + 켜진 화면이 필요합니다(없으면 근사 PDF).

개발 / 테스트

pip install -e .
python -m pytest tests            # 분석 → 조립 → PDF → 점검, 보고서(통계·도표·빌드), MCP 프로토콜, 엔진 단위 테스트(58개)
python tools/make_corpus.py       # (개발용) 내 PC 의 실제 서식으로 재현도 점검용 목록 만들기
python tools/batch_roundtrip.py --md

hwpx_new/data/AGENTS.md 가 AI 지침의 단일 원본이며 python tools/sync_docs.py 가 AGENTS.md·CLAUDE.md·GEMINI.md·Copilot·Cursor·스킬 파일을 만듭니다.


Available Tools

10 tools
hwpx_analyzeB

HWPX 서식을 분석해 문서 구조(표지·소제목·표·박스·글머리·서식 종류)와, 그 서식을 그대로 다시 만드는 뼈대 Markdown 을 돌려준다.

NameRequiredDescriptionDefault
template_pathYes서식 HWPX 파일 경로

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are supplied, so the description carries the full burden. It usefully discloses the output shape (structure list + reusable skeleton Markdown), which is more than a bare 'analyze' would give, but it never states that the operation is read-only / non-mutating and mentions no auth, size, or failure behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler, and the enumerated outputs are packed efficiently. The parenthetical list is dense but every item earns its place by telling the agent what comes back.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter, no-output-schema, read-only analysis tool, the description covers the essential return content (structure and skeleton Markdown), which compensates for the absent output schema. Missing only the safety/read-only assurance and sibling disambiguation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With one parameter at 100% schema description coverage, the schema already documents template_path fully, and the description adds no format, extension, or path-resolution detail beyond it. This matches the baseline for schema-driven params.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb (분석) and resource (HWPX 서식), and enumerates what it extracts (표지·소제목·표·박스·글머리·서식 종류) plus the skeleton Markdown it emits. However, it does not differentiate itself from near-neighbors like hwpx_read or hwpx_preview, so an agent must still infer which one to pick.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisite (e.g. must the file be a .hwpx template rather than converted .hwp), and no mention of the sibling tools that overlap with this one. The agent gets a purpose but no routing signal.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

hwpx_buildB

서식 + 내용으로 HWPX 와 PDF 를 만든다(조판 자동 점검·보정, 서식 재현 점검 포함). content 는 Markdown(확장)/JSON 문자열 또는 그 파일 경로.

NameRequiredDescriptionDefault
nameNo파일 이름(생략하면 제목)
engineNohancom|libreoffice|html (생략 시 자동)
contentYesMarkdown(확장) 또는 JSON 문자열, 혹은 그 내용이 담긴 파일 경로
output_dirYes결과를 저장할 폴더
template_pathYes서식 HWPX 파일 경로

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden, and it does disclose meaningful behavior: automatic layout inspection/correction and template-reproduction checking, plus dual HWPX/PDF output. However it omits failure behavior, overwrite semantics, permission requirements, and what the tool returns, which matters for an unannotated build tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences, front-loaded with the purpose and output formats before the parenthetical detail and the content-format note. Every clause earns its place with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 5-parameter, 3-required build tool with no annotations and no output schema, the description covers the core purpose and the auto-check behavior but leaves gaps: it never says what is returned (e.g., output file paths) nor how the required template_path/content/output_dir interact or fail.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all five parameters. The description restates the content parameter's accepted forms (Markdown/JSON string or file path) but adds no meaning beyond the schema, making the baseline 3 appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb (만든다/makes) and its resources (HWPX and PDF) plus the inputs it composes them from (template + content), so an agent can distinguish it from read/convert/analyze siblings. It stops short of explicitly naming which sibling to use instead, so it is clear but not fully differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use or when-not-to-use guidance and no mention of alternatives such as hwpx_convert_hwp or hwpx_preview. The generation purpose is implied, but nothing tells the agent under what conditions this tool should be preferred over its siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

hwpx_convert_hwpA

옛 .hwp 파일을 .hwpx 로 변환한다(Windows + 한글 필요). 결과 경로를 돌려준다.

NameRequiredDescriptionDefault
hwp_pathYes.hwp 파일 경로

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full disclosure burden. It does add real value by stating the Windows + Hangul dependency and that it returns the result path, but it omits what happens on failure, whether an existing target is overwritten, and whether conversion is lossy or reversible.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short clauses, front-loaded with the core action and followed immediately by the environment constraint and return value. Every sentence earns its place with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter tool with no output schema, the description covers the essential items: what it does, the environment prerequisite, and that it returns the result path. Only failure/mutation behavior is left unspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only one parameter, and the schema already documents it at 100% coverage ('.hwp 파일 경로'). The description adds no syntax, format, or path-resolution guidance beyond the schema, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('변환한다') and resource pair (옛 .hwp → .hwpx), which is precise and unambiguous. No sibling tool performs conversion, so explicit differentiation isn't needed, but the description also doesn't situate itself against the rest of the hwpx_* family.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The parenthetical '(Windows + 한글 필요)' gives an environment prerequisite, which is useful context for deciding whether the tool can run at all. However, there is no explicit when-to-use guidance, no mention of when-not to use it, and no pointer to alternatives such as hwpx_build or hwpx_read for other workflows.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

hwpx_doctorB

PDF 변환 엔진(한글/LibreOffice/내장)과 한글 자동화 상태를 점검한다.

NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It implies a read-only probe but never states whether it mutates anything, whether it can be slow or trigger engine installs, or what a successful versus failed diagnosis looks like.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence identifying the inspected components with zero filler. Nothing is repeated from the name or removable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter diagnostic with no output schema, the description should at minimum say what the check reports (pass/fail per engine, install hints, remediation). It names the inspected targets but not the deliverable, leaving a meaningful gap for an agent deciding whether to call it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, which is the baseline-4 case; there are no parameter semantics to compensate for. The empty schema is consistent with a simple environment probe.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (점검한다 / inspects) and a concrete resource (PDF conversion engines — Hangul/LibreOffice/built-in — plus Hangul automation status). An agent can tell it is a diagnostic tool rather than a conversion or build tool, though it does not explicitly name or contrast with any sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to run this check versus simply attempting a conversion, and no mention of prerequisites or expected failure conditions. The diagnostic intent is implied by '점검' but the agent gets no when/when-not signal relative to siblings like hwpx_convert_hwp or hwpx_build.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

hwpx_format_guideC

내용 작성 문법(Markdown 확장 / JSON 블록)을 돌려준다.

NameRequiredDescriptionDefault

No parameters

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries full burden. It implies a read-only reference lookup but never states that it performs no mutation, requires no inputs, or returns static documentation content. The only behavioral hint is '돌려준다' (returns), which is minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single efficient sentence that front-loads what is returned. Appropriately sized for a zero-parameter reference tool, though it could be slightly more explicit about the tool's role.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

A zero-param, no-output-schema reference tool is simple, but in a 10-tool family the description doesn't clarify its role relative to hwpx_start_here or when an agent should reach for it. Adequate but leaves a real gap around usage context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Zero parameters, so baseline is 4. There is nothing to document and the description correctly implies no input is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific return ('내용 작성 문법' - content authoring syntax, Markdown extension / JSON block). However, it's a guide/returns-syntax tool whose purpose is largely tautological in a tool list ('format guide returns format syntax'). Doesn't clearly distinguish from sibling hwpx_start_here, which likely also covers authoring guidance.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this vs alternatives. With siblings like hwpx_start_here, hwpx_build, and hwpx_convert_hwp, an agent needs to know this is a reference/lookup tool, not an action tool, and when to invoke it. None of that is stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

hwpx_photosB

사진 폴더(또는 사진 파일)를 살펴본다: 촬영 시각 순 목록과 번호가 붙은 한눈에 보기 이미지 경로를 돌려준다.

NameRequiredDescriptionDefault
folderYes사진 폴더 또는 파일 경로

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the full behavioral burden. It hints that numbered overview images are produced but never says whether files are written to disk, where, or whether the operation is read-only or has side effects – a meaningful gap for a tool that appears to generate image artifacts.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with the resource first and the return shape second; nothing is wasted. Slightly dense with a colon clause, but appropriately sized for the tool's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description must carry the return contract, and it does so only in outline (time-sorted list plus numbered image paths). Combined with the missing side-effect disclosure, it is minimally complete for a 1-parameter tool but not fully reassuring.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for the single 'folder' parameter ('사진 폴더 또는 파일 경로'), so the schema already does the documentation. The description confirms the folder-or-file duality but adds no format or path-convention detail beyond that.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (살펴본다), resource (사진 폴더 또는 파일), and even the shape of the result (촬영 시각 순 목록, 번호가 붙은 한눈에 보기 이미지 경로). This is enough for an agent to distinguish it from generic read tools. It does not, however, explicitly contrast itself with the closely related hwpx_photo_sheet sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied – an agent can infer 'call this when you want an overview of photos in a folder,' but no when/when-not conditions or alternatives (e.g., hwpx_photo_sheet, hwpx_preview) are named. Adequate but leaves routing to the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

hwpx_photo_sheetB

hwpx_photos 가 만든 '번호 붙은 사진 한눈에 보기' 이미지를 돌려준다(사진 내용을 파악할 때 사용).

NameRequiredDescriptionDefault
folderYes사진 폴더 경로

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the dependency that the image is produced by hwpx_photos, but says nothing about the return format (path, URL, inline image), what happens if hwpx_photos has not been run, or whether the operation is a pure read.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, front-loaded with the return value and followed by a usage cue in parentheses; nothing is padded. Slightly terse rather than wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description should characterize the returned artifact; it does say it returns an image, but omits return format and failure behavior for a tool whose sole purpose is producing a derived asset.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is a single parameter with 100% schema description coverage, so the schema already documents the folder path. The description adds no meaning beyond that, which is the expected baseline when the schema does the work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (returns) and resource (the numbered photo-overview image produced by hwpx_photos), so an agent can distinguish it from the sibling hwpx_photos that generates the underlying data. It does not explicitly contrast with hwpx_preview or hwpx_read, but the resource is specific enough.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The parenthetical "사진 내용을 파악할 때 사용" gives an implied when-to-use (inspecting photo contents), and the reference to hwpx_photos implies a prerequisite ordering. However, it names no alternatives and no explicit when-not condition, leaving the agent to infer the choice against hwpx_photos/hwpx_preview.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

hwpx_previewA

PDF 의 한 쪽을 이미지로 돌려준다(결과를 눈으로 확인할 때 사용).

NameRequiredDescriptionDefault
dpiNo해상도(기본 80)
pageNo쪽 번호(1부터)
pdf_pathYesPDF 파일 경로

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden; it does convey that the output is an image rather than text, which is the key behavioral fact. It omits the return encoding/format, whether multiple pages are returned, size limits, and any note that the operation is a harmless read.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with the primary action first and the usage hint second; nothing is wasted and there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool returns an image and has no output schema and no annotations, so the description should ideally state the return shape (e.g. image content/encoding) and confirm read-only behavior. It covers the essence but leaves those gaps for an agent that must handle the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so dpi, page, and pdf_path are already documented in the schema. The description adds no parameter-level detail (e.g. default page, dpi effect) beyond that baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a concrete verb and output ('PDF 한 쪽을 이미지로 돌려준다') and adds the intent (visual verification), so the agent knows exactly what comes back. However, the tool name is hwpx_preview while the description talks only about PDF pages, and no sibling (e.g. hwpx_photos, hwpx_photo_sheet) is named to disambiguate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The parenthetical '결과를 눈으로 확인할 때 사용' gives a usage context, which is more than nothing. But it offers no when-not guidance and never distinguishes this from the image-producing siblings hwpx_photos or hwpx_photo_sheet.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

hwpx_readB

HWPX 문서의 본문을 Markdown 으로 읽는다(참고 자료·기존 문서 확인용).

NameRequiredDescriptionDefault
pathYesHWPX 파일 경로

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It discloses the output format (Markdown) and scope (body text), but says nothing about read-only safety, required permissions, handling of missing files, or what portion of the document is included.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One compact sentence that front-loads the core action and appends the usage context. No filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter read tool with no output schema, the description covers the essential operation and return format. It could say more about Markdown fidelity or document scope, but nothing critical for invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the single required path parameter is already documented as 'HWPX 파일 경로'. The description adds no syntax, format, or constraint details beyond the schema, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: reads the body of an HWPX document, and names the output format (Markdown). That is clear enough to distinguish it from build/convert/preview siblings, but it never explicitly contrasts itself with hwpx_analyze or hwpx_preview.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The parenthetical '(참고 자료·기존 문서 확인용)' implies a use case—checking reference or existing documents—so usage is hinted at. There is no explicit when-to-use versus alternatives or when-not-to-use guidance, leaving the agent to infer routing among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

hwpx_start_hereA

가장 먼저 호출. 이 도구 모음의 사용 순서와 규칙을 알려 준다.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses what the call yields (the usage order and rules of the toolset), which is exactly the behavioral information an orientation tool needs to convey. With zero parameters there is no mutation or auth risk to disclose, so the remaining gap is minor.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with zero filler, and the directive (call first) is front-loaded ahead of the explanation of what it returns. Every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless, annotation-free orientation tool with no output schema, the description supplies what an agent needs: it is the first call and it returns ordering rules. It could be slightly richer by hinting at the sequence of the sibling tools, but nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes no parameters, so there is nothing for the description to clarify beyond the schema; baseline 4 applies. The description correctly avoids inventing arguments that the empty schema does not support.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific function: this is the entry-point tool that returns the toolset's usage order and rules. It is distinguishable from siblings like hwpx_format_guide because it frames itself as the mandatory first call rather than a topic-specific guide. It stops short of naming any sibling explicitly, so it lacks the sharper differentiation a 5 would need.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"가장 먼저 호출" (call this first) is an explicit when-to-use directive that an agent can act on without inference. It does not, however, say when NOT to call it or how it relates to the other nine tools beyond ordering.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 10 tool updatesv2.0.0
    • First observedhwpx_analyze
    • First observedhwpx_build
    • First observedhwpx_convert_hwp
    • First observedhwpx_doctor
    • First observedhwpx_format_guide
    • First observedhwpx_photo_sheet
    • First observedhwpx_photos
    • First observedhwpx_preview
    • First observedhwpx_read
    • First observedhwpx_start_here

TDQS

A3.6/5.0

Scored across 10 tools

Disambiguation4/5

Each tool has a distinct action: onboarding, diagnostics, format guide, analyze, read, convert, build, photos, photo sheet, and preview. The only minor overlap is hwpx_analyze vs hwpx_read, but descriptions distinguish format extraction from body reading.

Naming Consistency5/5

All tools use the hwpx_ prefix and lower snake_case, making the set highly predictable. Minor singular/plural variation between hwpx_photos and hwpx_photo_sheet does not break the convention.

Tool Count5/5

10 tools is well-scoped for an HWPX document generation workflow, with each tool covering a clear stage. There is no obvious bloat or missing core step.

Completeness4/5

The set covers onboarding, environment checks, format syntax, HWPX analysis/reading, old HWP conversion, building, photo handling, and preview. Direct editing/updating of an existing HWPX is not exposed, but the generation-focused surface is largely complete.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables secure local proofreading of Korean official documents (.hwpx/.hwp) using 3-layer AI correction for spelling, grammar, and official document style. Provides 50 administrative document templates for generating standardized official correspondence without cloud dependencies or API keys.
    24
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    Enables filling uploaded document templates (DOCX/HWP/HWPX/PDF) with chatbot-generated content while preserving original formatting, tables, and images, and saving as files.
    4
    1
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to control Hancom's HWP/HWPX documents (Korean word processor) via COM interface on Windows, supporting creation, editing, formatting, and export.
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI assistants to generate DOCX and PDF documents from DocMake templates through natural language, including template listing, field inspection, document rendering, DOCX import, and usage tracking.
    6
    22 npm
    MIT