Skip to main content
Glama
korean-report-hwpx

korean-report-hwpx

by UpstageAI

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
KOREAN_GOV_DOCS_OUT_DIRNoLegacy name of the output directory variable; also recognized as an alternative to KOREAN_REPORT_HWPX_OUT_DIR.
KOREAN_REPORT_HWPX_OUT_DIRNoOutput directory for generated files. Defaults to ~/korean-report-hwpx/.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

사용자가 '보도자료', '보도참고자료', '설명자료', '해명자료', '보고서', '기안문', 'HWPX', '한글' 파일을 원할 때 쓴다. 파이썬 등으로 HWPX를 직접 만들지 말고 이 도구를 쓴다. 외부 API 없이 로컬에서 동작한다. 보도자료 순서: get_writing_guide(doc_type='press_release', ministry=기관) → draft_press_structure(사실 메모 → 구조 초안) → 문장 다듬기 → check_structure → build_document. 일반 순서: get_writing_guide로 작성 규칙과 구조 스키마 확인 → 원고를 구조 JSON으로 정리 → (선택) check_structure → build_document. 결과의 warnings가 있으면 구조를 고쳐 다시 build_document. 기관을 말하지 않으면 ministry를 비워 공통 서식(보고서)으로 만든다. 원고에 없는 사실·숫자·담당자는 지어내지 않는다. 보고서 분량을 말하면(예: 1쪽) check_structure·build_document에 target_pages로 넘겨 돌려받은 분량과 경고대로 고친다.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_writing_guideA

원고를 공문서 구조 JSON으로 바꿀 때 지켜야 할 작성 규칙과 스키마·예시. build_document 전에 먼저 확인한다. 보도자료를 쓸 때는 doc_type='press_release'와 ministry를 주면 작성 방법(리드·제목·인용·숫자·쉬운 말)과 사실 메모 양식, 기관별 가상 예시를 함께 준다. doc_type: 'report'(보고서) | 'press_release'(보도자료) | 'official'(기안문·시행문, 별지 제1호서식 — 결재란·문서번호·연락처 스키마와 예시 포함) | 'auto'(보고서·보도자료 둘 다 + 판단 기준). ministry: 기관 이름(선택). style: 'standard'(기본, 기존 동작) | 'simplified'(간소화 모드 — 항목 번호 자동 부여, 제목 상자 없음, 표 머리 음영 없음, 표 제목 자동 번호, 서술식 허용).

check_structureA

구조 JSON을 만들기 전에 점검만 한다(파일 생성 없음): 필수 필드, 알 수 없는 블록, text 속 기호, 계층 건너뜀, □ 두 문장 이상, 보고서 명사형 종결이 아닌 문장, 긴 제목 등. structure는 JSON 문자열로 줘도 된다. 보도자료를 ministry와 함께 점검하면 작성 점검(E1~E18: 리드·제목·인용·숫자·쉬운 말 등)을 추가로 수행한다. target_pages: 목표 본문 쪽수(예: 1). 주면 분량을 재서 넘침·덜 참·붙임 없음을 경고. report_kind: 'standard'(기본, 일반 보고서 서식) | 'internal'(내부 결재 보고서 — 제목 상자 라벨 없음, 쪽 번호, 작성일·부서 "'26. 10. 8.(목) / 과·팀명" 형식). 돌려주는 값: {ok, doc_type, warnings, 분량(report일 때)}. style: 'standard'(기본) | 'simplified'(간소화 모드 — 번호 수준 건너뜀, 표 제목 누락, 병합 사용, 5단계 초과 추가 점검).

draft_press_structureA

사실 메모를 보도자료 구조 JSON 초안으로 옮긴다. facts는 산문이 아니라 JSON 객체(또는 그 문자열)이며, 필드는 get_writing_guide(doc_type='press_release')의 press_writing.facts_template을 따른다 (headline, release, who, when, what 또는 lead, background, points, numbers, plan, quote, appendix, contact; 설명·해명자료는 kind, issue, position, grounds). 예: {"headline": "○○ 시행", "release": "2026. 11. 3.(화) 조간", "who": "○○부(장관 ○○○)", "when": "11월 3일(화)", "what": "○○를 시행한다", "points": ["..."], "contact": {"dept": "○○과", "people": [["담당자", "사무관", "김○○", "044-000-0000"]]}} 메모에 없는 문장·숫자·이름을 만들지 않는다. 붙이는 고정 말은 조사(은/는), “ ”라고, ”라며, “, 인용 동사, 표 머리 구분·수치·기준·비교, 주요 수치, 참고 N뿐이다.

list_ministriesA

지원 기관과 문서 종류별 지원 여부를 JSON 배열 하나(문자열)로 돌려준다: [{기관, 보고서, 보도자료, 기안문, 보도자료_본문방식}, ...]. 보고서: 기관 규칙(42곳) 또는 공통 규칙, 보도자료: 52개 기관, 기안문: rules_official/_공통.json. 보고서는 기관을 비우거나 '공통'으로 하면 기관 간 공통 서식으로 만든다. 기안문은 기관 지정 없이 공통 서식으로만 지원.

get_rulesA

기관·문서 종류별 서식 규칙값: 계층별 기호·기호 앞 공백·글꼴·크기·줄 간격, 계층 사이 빈 줄 크기, 보고서는 제목 상자·표 머리 규칙 포함. ministry를 비우면 보고서 공통 규칙. 기안문(doc_type='official')은 rules_official/_공통.json 값만 반환(기관 지정 없음).

build_documentA

보고서·보도자료(보도참고·설명·해명자료 포함)·기안문을 기관 서식 HWPX(한글 파일)로 만든다. 구조 JSON을 기관 서식 HWPX로 만든다(외부 전송 없음, 모두 로컬). 구조는 get_writing_guide 규칙대로 사용자 AI가 작성한다. structure는 JSON 문자열로 줘도 된다. doc_type='report': {title, date, dept, body, appendix} — ministry를 비우면 공통 서식(기관명 칸 비움). doc_type='press_release': {release, distribute, title, subtitles, body, appendix, contact} — ministry 필수. doc_type='official': {org, to, via, title, body, attachments, recipients, sender, approval, doc_no, contact} — 기안문·시행문(별지 제1호서식). body: [{type: l1l6|table|lines, text|rows|lines}] (문자열 목록 아님, 번호는 서버가 붙임), attachments: [str], approval: {drafter: {title, name, mark:'★'|'⊙'|''}, reviewers: [{title, name, opinion:bool}], approver: {title, name}, coordinators: [{title}]}, doc_no: {issue, issue_date, receive, receive_date}, contact: {zip, address, homepage, phone, fax, email, disclosure:'공개'|'부분공개'|'비공개'}. 예시는 get_writing_guide(doc_type='official').example_official. 입력은 정규화(text 앞 기호·대시·공백 제거)하고, 고칠 점을 warnings로 돌려준다 — 있으면 구조를 고쳐 다시 호출한다. ministry 인자로 check_structure에 기관을 넘겨 보도자료 작성 점검(E1E18)을 수행한다. out_path: 저장 경로(선택, 기본은 아웃폴더). 폴더면 그 안에 기본 파일 이름으로 저장, 확장자 없는 이름이면 .hwpx를 붙인다. logo_path: 기관 로고 그림(선택). slogan_path: 보도자료 슬로건 그림(선택). placeholder_contact: 보도자료 담당자가 없으면 '○○과 / 김○○ / 044-000-0000' 자리표시로 채움. polish: True면 맥 한컴오피스 한글로 실제 줄 배치를 받아 문단별 자간을 다듬음(맥+한글 필요, 수 분 소요). style: 'standard'(기본, 기존 동작) | 'simplified'(간소화 모드 — 항목 번호 자동 부여, 제목 상자 없음, 표 머리 음영 없음, 표 제목 자동 번호, 서술식 허용). export_markdown: True이면 같은 구조로 .md 파일을 HWPX 옆에 함께 저장(GFM 표, 병합 없이, 번호 위계는 #, ##, ###와 번호 텍스트). report_kind: 'standard'(기본, 기존 보고서 서식) | 'internal'(내부 결재 보고서 — 제목 상자 라벨 없음, 쪽 번호 "- n -", 작성일·부서 "'26. 10. 8.(목) / 과·팀명" 형식, 표 머리 음영 없음/회색, □ 글꼴 HY헤드라인M). target_pages: 목표 본문 쪽수(예: 1). 주면 분량을 재서 넘침·덜 참·붙임 없음을 경고. 돌려주는 값: {hwpx, doc_type, 문서종류, 기관, warnings, structure(정리된 구조), 분량(report일 때), md(export_markdown=True일 때)}. 같은 이름 .json에 구조도 저장.

build_from_structureC

build_document와 같다(별칭). structure는 JSON 문자열로 줘도 된다.

Prompts

Interactive templates invoked by user choice

NameDescription
writing_guide원고를 보고서·보도자료·기안문 구조로 정리할 때의 작성 규칙과 구조 예시.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.3/5.0

Scored across 7 tools

Disambiguation3/5

The core pipeline (get_writing_guide → draft_press_structure/check_structure → build_document) is clearly differentiated, but get_writing_guide, get_rules, and list_ministries all return per-ministry/per-doc-type configuration information and their boundaries (writing rules vs. formatting values vs. availability table) require reading careful descriptions. build_from_structure is explicitly documented as an alias of build_document, giving two names for identical behavior.

Naming Consistency4/5

All names follow a verb_object snake_case pattern (get_*, list_*, check_*, draft_*, build_*), which is predictable and readable. Minor deviation: build_document names an action+object while build_from_structure names an action+source, so the two siblings don't distinguish themselves through naming alone.

Tool Count4/5

Seven tools is well within a healthy scope for a document-generation server with a discover→validate→build workflow. The only bloat is build_from_structure, a pure duplicate of build_document that adds no capability.

Completeness4/5

The generation lifecycle is well covered: discover supported ministries, fetch formatting rules, fetch writing guidance, draft a press structure from facts, validate, build HWPX, and optionally export Markdown. Gaps are minor — there is no tool to read/parse an existing HWPX or to inspect/regenerate a previously built file, so agents cannot round-trip an existing document.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues