Tools available to the AI Assistant and MCP Server
Note: This feature might not be available on all editions of HelpNDoc. Check HelpNDoc's feature comparison page to learn more.
HelpNDoc's AI assistant and MCP Server can use a set of project-aware tools to read and update your documentation structure: topics, keywords, library items, project metadata, and more. These tools let the assistant inspect your HelpNDoc project (topics, keywords, associations, etc.) and modify it (create topics/keywords, associate them, etc.) instead of working blindly.
Warning: The AI assistant and MCP Server can perform powerful actions that modify your HelpNDoc project, including creating, updating, or removing structures such as topics, keywords, and associations. These operations can be destructive, may not be undoable, and the assistant can occasionally hallucinate or make incorrect assumptions. Before using the AI assistant for any task that alters your project, always create a backup to prevent accidental data loss or unwanted changes.
|
Tool name |
What it does |
Typical use |
Example prompt |
|
keyword_create |
Creates a keyword with a required caption, an optional parent keyword ID, and optional initial topic associations. A stale parent falls back to project-root level, and invalid or failed optional associations are skipped. The keyword remains available and structured warnings describe every fallback. |
Extend the keyword index safely through either the AI Assistant or MCP server. |
Create keyword Installation under Setup and associate it with the main setup topics. |
|
keyword_delete |
Deletes a keyword and its descendants by stable ID. The project root keyword is protected. |
Remove an obsolete keyword branch explicitly. |
Delete the keyword tree rooted at legacy_product. |
|
keyword_get_info |
Returns a keyword ID, caption, parent keyword ID, and all associated topic IDs. |
Inspect one keyword and understand where it is used. |
Show keyword shortcuts and its associated topics. |
|
keyword_get_list |
Returns every non-root keyword with its ID, caption, and parent keyword ID. |
Understand the complete keyword hierarchy. |
List all keywords and identify possible duplicates. |
|
keyword_manage_properties |
With action get, returns the keyword and its associations. With action set, renames it while preserving its stable ID, hierarchy, and associations. Empty captions are rejected. |
Inspect or rename a keyword without rebuilding its relationships. |
Rename keyword Setup to Installation. |
|
keyword_move |
Moves a keyword tree using semantic sibling or child placement. Keywords remain sorted by caption within their parent. |
Reorganize the keyword hierarchy using simple sibling or child placement. |
Move keyword Advanced under keyword Configuration. |
|
library_item_create |
Creates user library folders, variables, pictures, documents, movies, dynamic content, raw code, snippets, barcodes, counters, and equations. Pictures and movies support internal, external_file, or url; documents, dynamic content, raw code, snippets, and barcodes support internal or external_file. Internal binary or rendered items accept either file_path or a structured content object containing encoding: "base64", raw base64 data, and optional mime_type; decoded inline content is limited to 8 MiB. Internal dynamic content uses dynamic_content; internal raw code uses a raw_code object with optional html, markdown, and text representations; internal snippets accept Markdown through content_as_markdown and may embed existing pictures with  or other embeddable library items with <hnd-library-item id="LIBRARY_ITEM_ID" />. Counters require caption_format and empty_caption_format, corresponding to instances with and without captions; counters do not have a file source in the HelpNDoc data model. Equations are internal and require editable equation source plus rendered binary content. Extensions are normalized or inferred. Movies optionally accept width and height. External paths and raw content are never returned. Invalid optional parents fall back to library root with a structured warning. System variables and image maps are not creatable. |
Add reusable project assets using their native HelpNDoc storage semantics. |
Create a figure counter, an external SVG barcode, and an internal equation with its editable source and rendered SVG. |
|
library_item_delete |
Requests deletion of a library item and its descendants by stable ID. HelpNDoc enforces its library-item restrictions, including protected records, and reports whether deletion succeeded. |
Remove obsolete user-managed assets without risking protected application variables. |
Delete the obsolete library folder Legacy artwork and its contents. |
|
library_item_get_info |
Returns safe structural and kind-specific information for one stable library-item ID. Variables, dynamic content, counter formats, internal snippet Markdown with stable native picture and other embeddable library-item references, and editable equation source use readable application representations. Internal rendered or binary content is represented by a checksum rather than base64 bytes. External file references are reported without exposing their filesystem paths. |
Inspect one reusable asset before using or modifying it. |
Show detailed information for library item product_name, including its kind-specific value. |
|
library_item_get_list |
Returns safe summaries for every user-visible library item, excluding the internal project-root record. Each summary includes stable ID, caption, semantic kind, parent ID, and source/extension information where applicable. The project library-root ID is returned separately so callers can understand parent relationships. |
Understand the complete library structure and obtain IDs for detailed inspection. |
List all library items, grouped by kind and parent folder. |
|
library_item_manage_content |
Gets or replaces kind-specific stored content and source information. It manages user-variable values; internal dynamic content, native structured raw code, snippet Markdown with stable native picture and other embeddable library-item references, and editable equation source; internal binary/rendered bytes supplied by a local file or a structured base64 object; supported external-file references; and picture/movie URLs. Binary bytes are returned only when include_binary_content is explicitly true and the content is within the 8 MiB inline limit. External filesystem paths are never returned. Folder, system-variable, image-map, and counter content is intentionally outside this tool. |
Read or update reusable asset data without mixing large or structured payloads into lightweight property changes. |
Replace an internal snippet from Markdown, or retrieve an internal picture as base64. |
|
library_item_manage_properties |
Gets safe library-item properties or sets lightweight common and kind-specific properties: non-empty caption, file extension, movie width and height, and counter formats with and without captions. Content and source changes are handled by library_item_manage_content. |
Rename and configure reusable assets while retaining their stored data and source. |
Rename a movie and set its display size to 854 by 480. |
|
library_item_move |
Moves a library-item tree relative to an existing stable item ID using semantic sibling or child placement. HelpNDoc selects a valid containing folder and controls ordering within it. Missing source or reference IDs and unsupported placements are rejected before mutation. |
Reorganize reusable assets without recreating them. |
Move the diagrams folder below the shared media folder. |
|
project_manage |
With action get, returns safe metadata for the open project: project ID, title, saved state, author, summary, copyright, comment, version, language, charset, default topic ID, and topic count. With action set, validates and updates any supplied subset of title, author, summary, copyright, comment, version, Windows locale name, supported charset, and existing default-topic ID; empty strings clear optional text properties or the default topic, while null values leave properties unchanged. Project ID, saved state, and topic count are read-only, and local filesystem paths are never exposed. |
Inspect or maintain project metadata through either the AI Assistant or MCP server without disclosing the project file location. |
Set the project author and version, make topic getting_started the default, then return the updated project information. |
|
status_manage |
Lists, gets, creates, updates, deletes, or reorders project statuses. Colors use HTML #RRGGBB; move positions are first, last, before, or after. |
Maintain the project's review or publication workflow. |
List all statuses, then delete the obsolete status Draft 1. |
|
tag_manage |
Lists, gets, creates, or deletes tags. Lists can be scoped to all, custom, or system; system tags cannot be deleted. |
Inspect or maintain the project tag catalog. |
List custom tags, then create customer_portal. |
|
topic_create |
Creates a topic in the currently open project with a required caption, an optional parent topic ID, and optional Markdown content that may embed existing picture and other embeddable library items with stable references. A stale or unusable parent falls back to the end of the project instead of discarding the topic; the successful result includes the requested and effective parent IDs plus a structured warning. If optional Markdown conversion fails, the topic is retained and the result warns that its body was not applied. Returns the topic ID, HelpNDoc URL, caption, help ID/context, kind, order, visibility, and effective parent topic ID. |
Add a fully populated root or child topic through either the AI Assistant or MCP server. |
Create a child topic called Troubleshooting under installation with a Markdown checklist. |
|
topic_delete |
Deletes a topic and all descendants by stable ID. The project root topic is protected. |
Explicitly remove an obsolete table-of-contents branch. |
Delete the topic tree rooted at legacy_setup. |
|
topic_get_info |
Returns topic metadata by stable ID: HelpNDoc URL, caption, description, help ID/context, kind, order, visibility, and parent ID. URL-topic links are returned; local file-link targets are represented only by has_file_link. Topic bodies are handled by topic_manage_content. |
Inspect a specific topic without loading its potentially large body. |
Show metadata for topic getting_started. |
|
topic_get_list |
Returns lightweight metadata for all non-root project topics by default. Set selected_only to true to return the same metadata only for topics currently selected in the HelpNDoc table of contents. Results include topic ID/URL, caption, help ID/context, kind, order, visibility, and parent topic ID. |
Inspect the complete topic structure or obtain rich information about the current multi-selection through one tool. |
List the currently selected topics and include their captions and parent topic IDs. |
|
topic_keyword_manage |
Lists keywords for a topic, lists topics for a keyword, checks or updates one association, or removes all associations for a topic or keyword. Topic and keyword IDs are validated, and list actions return useful objects rather than IDs alone. |
Inspect and maintain keyword indexing through one symmetric relationship tool. |
List keywords for topic user_interface, then associate it with keyword shortcuts. |
|
topic_manage_content |
With action get, returns the topic body as sidecar-free Markdown for the AI Assistant and MCP server: native pictures are preserved as , other embeddable library items as <hnd-library-item id="LIBRARY_ITEM_ID" />, and standalone images as inline base64 data URIs. With action set, fully replaces the body after Markdown conversion succeeds and accepts all of these forms. Missing IDs, picture syntax targeting a non-picture, folders, and unsupported kinds are rejected without replacing the existing body. An empty string clears the body. Link and empty topic kinds are reported as non-editable. |
Read or replace body content through a focused tool that can gain refined editing actions later. |
Replace the body of installation with the supplied Markdown guide. |
|
topic_manage_properties |
With action get, returns caption, icon, visibility, description, help identifiers, status, aliases, page-break-before, and stored/effective header and footer settings. With action set, validates and updates any supplied subset, including renaming through caption, assigning status_id, and changing nested header/footer values. |
Maintain editable presentation and system properties without mixing in topic-body operations. |
Rename topic printing_guide, assign a review status, and hide its footer. |
|
topic_move |
Moves a topic and its descendants relative to a reference topic. Placement uses semantic values: last_sibling, first_sibling, last_child, first_child, or before. Returns the resulting parent and order. Invalid source or reference IDs return an error without modifying the topic tree. |
Reorganize the table of contents using clear placement choices. |
Move topic faq before topic release_notes. |
|
topic_tag_manage |
Lists, checks, creates, or removes topic-tag associations, including bulk dissociation for one topic or tag. List results include useful topic or tag objects rather than IDs alone. |
Classify topics with tags or clean up relationships in batches. |
List tags for topic deployment, then associate it with tag pdf. |
|
ui_manage_current |
With action get, returns the current topic, keyword, and library item together as lightweight ID/caption objects (plus the current HelpNDoc topic URL). Selection actions accept a topic ID, keyword ID, library item ID, topic help ID, help-context number, or HelpNDoc topic URL. set_topic_and_show_checkpoint also navigates the topic editor to a named checkpoint. |
Read or change HelpNDoc UI focus without multiplying getter and navigation tools. Call topic_get_info when full details for the returned current topic ID are needed. |
Get all current UI entities, then select the topic whose help ID is installation. |
You can mix these actions in higher-level requests. For example: "Review the current topic, suggest missing keywords, create them if needed, and associate the topic with them." The AI assistant will then orchestrate the appropriate tools behind the scenes.