hwpx-mcp-server
npm
v0.5.5
Published by flamingo8006 — no publish provenance, so origin is unverified, but the source is public: the repository link below is self-declared yet readable, so you can inspect the code before adopting it.
MCP Server for HWPX (Korean Hangul) document editing - 135 tools (form-fill / style-palette / free-form modes + get_user_paths for Claude Desktop sandbox compatibility) for AI-powered document automation
The grade answers one question — how safe is this server for you to adopt — so it is computed in two auditable stages. Nothing below is an opinion or an LLM's guess; every line is a real term the deterministic engine applied, and the same input always yields the same number.
1. Threat score — 100 − 0 = 100. What the published surface and source actually contain:
The deterministic scan raised no scored threat in the surface it inspected — the threat score stayed at 100. Capability observations and advisory notes are recorded but never lower it.
2. Client adoption risk — 100 − 7 = 93. Three small, subtract-only factors that reflect your risk in adopting it — a clean scan proves less on a powerful, unverified or barely-inspectable package, so the grade says so plainly:
| Points | Adoption-risk factor |
|---|---|
| −6 | capability blast radius (high) — client exposure if the model is manipulated |
| −1 | publisher verification (public source) — no provenance, but the source is public and inspectable |
Capability observations and info notes are shown under Findings but never scored.
Open any row's finding below for the file, line and evidence behind a deduction.
Tool "insert_equation" appears to run shell commands or evaluate code (parameter "script"). Arbitrary execution driven by model input is one of the most dangerous MCP capabilities; combined with any untrusted input it becomes RCE.
Fix: Sandbox execution, allowlist commands/arguments, and never pass model output to a shell unescaped.
Location: tool insert_equation
Untrusted-input tools ([get_page_settings]) co-exist with external-action tools ([export_to_text, export_to_html, insert_equation]). A prompt injection could cause unwanted external actions, though no direct sensitive-data leak path was found.
Evidence: untrusted [get_page_settings] → sinks [export_to_text, export_to_html, insert_equation]
Fix: Require confirmation for state-changing/egress actions triggered after processing untrusted content.
Location: flow get_page_settings → export_to_text
Tool "insert_equation" takes a command-shaped parameter "script" with no enum/pattern constraint. Free-form, model- or attacker-controlled arguments reaching a shell is the command-injection precondition.
Fix: Constrain the parameter (enum/pattern), or build the command from a fixed template with escaped args.
Location: tool insert_equation · inputSchema.properties.script
Tool "insert_equation" can mutate/egress but declares no destructiveHint. Clients that don't default to spec-safe behavior may not prompt before running it.
Fix: Declare accurate annotations, and gate destructive tools on user confirmation regardless.
Location: tool insert_equation
Each tool and what it can reach — statically extracted from the published source.
export_to_htmlnetwork egressexport_to_textnetwork egressget_page_settingsingests untrusted inputinsert_equationruns code / shellanalyze_xmlno sensitive capabilityappend_text_to_paragraphno sensitive capabilityapply_styleno sensitive capabilitybatch_fill_tableno sensitive capabilitybatch_replaceno sensitive capabilitybuild_documentno sensitive capabilitybuild_position_indexno sensitive capabilitychunk_documentno sensitive capabilityclose_documentno sensitive capabilitycopy_paragraphno sensitive capabilitycopy_tableno sensitive capabilitycreate_documentno sensitive capabilitydelete_imageno sensitive capabilitydelete_memono sensitive capabilitydelete_paragraphno sensitive capabilitydelete_sectionno sensitive capabilitydelete_tableno sensitive capabilitydelete_table_columnno sensitive capabilitydelete_table_rowno sensitive capabilityextract_tocno sensitive capabilityfill_by_pathno sensitive capabilityfind_cell_by_labelno sensitive capabilityfind_empty_tablesno sensitive capabilityfind_insert_position_after_headerno sensitive capabilityfind_insert_position_after_tableno sensitive capabilityfind_paragraph_by_textno sensitive capabilityfind_table_by_headerno sensitive capabilityformat_textno sensitive capabilityget_bookmarksno sensitive capabilityget_bullet_defsno sensitive capabilityget_cell_contextno sensitive capabilityget_char_shapesno sensitive capabilityget_chunk_at_offsetno sensitive capabilityget_chunk_contextno sensitive capabilityget_column_defno sensitive capabilityget_document_metadatano sensitive capabilityget_document_outlineno sensitive capabilityget_document_structureno sensitive capabilityget_document_textno sensitive capabilityget_element_index_for_tableno sensitive capabilityget_endnotesno sensitive capabilityget_equationsno sensitive capabilityget_footerno sensitive capabilityget_footnotesno sensitive capabilityget_hanging_indentno sensitive capabilityget_headerno sensitive capabilityget_hyperlinksno sensitive capabilityget_imagesno sensitive capabilityget_insert_contextno sensitive capabilityget_memosno sensitive capabilityget_numbering_defsno sensitive capabilityget_para_shapesno sensitive capabilityget_paragraphno sensitive capabilityget_paragraph_styleno sensitive capabilityget_paragraphsno sensitive capabilityget_position_indexno sensitive capabilityget_raw_section_xmlno sensitive capabilityget_section_xmlno sensitive capabilityget_sectionsno sensitive capabilityget_stylesno sensitive capabilityget_tableno sensitive capabilityget_table_as_csvno sensitive capabilityget_table_cellno sensitive capabilityget_table_cell_hanging_indentno sensitive capabilityget_table_mapno sensitive capabilityget_tablesno sensitive capabilityget_tables_by_sectionno sensitive capabilityget_tables_summaryno sensitive capabilityget_text_styleno sensitive capabilityget_tool_guideno sensitive capabilityget_user_pathsno sensitive capabilityget_word_countno sensitive capabilityinsert_bookmarkno sensitive capabilityinsert_ellipseno sensitive capabilityinsert_endnoteno sensitive capabilityinsert_footnoteno sensitive capabilityinsert_hyperlinkno sensitive capabilityinsert_imageno sensitive capabilityinsert_image_in_cellno sensitive capabilityinsert_lineno sensitive capabilityinsert_memono sensitive capabilityinsert_nested_tableno sensitive capabilityinsert_page_breakno sensitive capabilityinsert_paragraphno sensitive capabilityinsert_rectno sensitive capabilityinsert_sectionno sensitive capabilityinsert_tableno sensitive capabilityinsert_table_columnno sensitive capabilityinsert_table_rowno sensitive capabilityinvalidate_reading_cacheno sensitive capabilitylist_open_documentsno sensitive capabilitylist_template_profilesno sensitive capabilitymerge_cellsno sensitive capabilitymove_paragraphno sensitive capabilitymove_tableno sensitive capabilityopen_documentno sensitive capabilityredono sensitive capabilityremove_hanging_indentno sensitive capabilityremove_table_cell_hanging_indentno sensitive capabilityrender_mermaidno sensitive capabilityrender_mermaid_in_cellno sensitive capabilityrepair_xmlno sensitive capabilityreplace_textno sensitive capabilityreplace_text_in_cellno sensitive capabilitysave_documentno sensitive capabilitysearch_chunksno sensitive capabilitysearch_position_indexno sensitive capabilitysearch_textno sensitive capabilityset_auto_hanging_indentno sensitive capabilityset_cell_background_colorno sensitive capabilityset_cell_propertiesno sensitive capabilityset_column_defno sensitive capabilityset_column_widthsno sensitive capabilityset_document_metadatano sensitive capabilityset_footerno sensitive capabilityset_hanging_indentno sensitive capabilityset_headerno sensitive capabilityset_numberingno sensitive capabilityset_page_settingsno sensitive capabilityset_paragraph_styleno sensitive capabilityset_raw_section_xmlno sensitive capabilityset_section_xmlno sensitive capabilityset_table_cell_auto_hanging_indentno sensitive capabilityset_table_cell_hanging_indentno sensitive capabilityset_text_styleno sensitive capabilitysplit_cellno sensitive capabilityundono sensitive capabilityupdate_image_sizeno sensitive capabilityupdate_paragraph_textno sensitive capabilityupdate_paragraph_text_preserve_stylesno sensitive capabilityupdate_table_cellno sensitive capabilityCross-tool combinations that form a data-exfiltration primitive (untrusted input → sensitive source → external sink).
Scan history per published version. The engine is deterministic — the same version always yields the same score, so a changed score means the package itself changed.
| Version | Score | Findings | Engine | Scanned |
|---|---|---|---|---|
v0.5.5 latest |
A 93/100 | 4 | 1.13.0 | 2026-09-09 |
Show this server's live Trust Score in your README, docs or website. The badge is served straight from the registry and updates automatically after every rescan — no API key needed. It links back to this page, so anyone who sees the grade can also read the findings behind it instead of taking a number on faith.
The score above is reproducible: the same package version always yields the same result. Run it locally or over the free API — no account, no LLM, fully deterministic.
npx mcptrustchecker scan hwpx-mcp-server --online
Independent packages implementing the same tool, scanned with the same engine. Compare all 2 side by side →
Hotel booking MCP server — 300K+ properties, real confirmation numbers, loyalty programs. Builders monetize every booking via Stripe Connect. The first MCP server that completes real hotel reservations inside AI conversations.
Manage AdGuard Home through AI assistants
Read-only Azure DevOps for MCP clients using only your existing browser session — no PAT, no Azure CLI. Browse work items, pull requests, comments, attachments and Artifacts feeds across every project, repo and feed you can access.
MCP server for Adobe Experience Manager Assets integration development
Servidor MCP para el tiempo oficial de España (API pública OpenData de AEMET). Predicción, observación y avisos como herramientas MCP tipadas.
A standalone MCP stdio bridge for Affinity by Canva's local MCP SSE server.