HNPX SDK
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PUBMED_EMAIL | Yes | Your email address (required by NCBI) | |
| PUBMED_API_KEY | No | Optional API key for higher rate limits |
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| create_documentB | Create a new empty HNPX document Args: file_path (str): Path where the new HNPX document will be created |
| get_root_idB | Get ID of the book node (document root) Args: file_path (str): Path to the HNPX document Returns: str: ID of the book node |
| get_nodeA | Retrieve XML representation of a specific node (without descendants) Args: file_path (str): Path to the HNPX document node_id (str): ID of the node to retrieve Returns: str: XML representation of the node with its attributes and summary child only |
| get_subtreeA | Retrieve XML representation of node including all descendants, optionally pruned Args: file_path (str): Path to the HNPX document node_id (str): ID of the node to retrieve pruning_level (str): Depth level - one of: "book", "chapter", "sequence", "beat", "full" Returns: str: XML representation of the node and its descendants, pruned to specified depth |
| get_childrenA | Retrieve immediate child nodes of a specified parent Args: file_path (str): Path to the HNPX document node_id (str): ID of the parent node Returns: str: Concatenated XML representation of all direct child nodes |
| get_emptyA | Find next container node without children within a specific node's subtree (BFS order) Args: file_path (str): Path to the HNPX document node_id (str): ID of the node to search within Returns: str: XML representation of the next empty container node or a message if none found |
| get_pathA | Return hierarchical path from document root to specified node Args: file_path (str): Path to the HNPX document node_id (str): ID of the target node Returns: str: Concatenated XML representation of all nodes in the path from root to target |
| create_chapterB | Create a new chapter element Args: file_path (str): Path to the HNPX document parent_id (str): ID of the parent book element title (str): Chapter title summary (str): Chapter summary text pov (Optional[str]): Point-of-view character identifier |
| create_sequenceB | Create a new sequence element Args: file_path (str): Path to the HNPX document parent_id (str): ID of the parent chapter element location (str): Location description summary (str): Sequence summary text time (Optional[str]): Time indicator (e.g., "night", "next day", "flashback") pov (Optional[str]): Point-of-view character identifier |
| create_beatC | Create a new beat element Args: file_path (str): Path to the HNPX document parent_id (str): ID of the parent sequence element summary (str): Beat summary text |
| create_paragraphB | Create a new paragraph element Args: file_path (str): Path to the HNPX document parent_id (str): ID of the parent beat element text (str): Paragraph text content mode (str): Narrative mode - one of: "narration" (default), "dialogue", "internal" char (Optional[str]): Character identifier (required when mode="dialogue") |
| edit_summaryC | Edit summary text of a node Args: file_path (str): Path to the HNPX document node_id (str): ID of the node containing the summary new_summary (str): New summary text content |
| edit_paragraph_textC | Edit paragraph text content Args: file_path (str): Path to the HNPX document node_id (str): ID of the paragraph node to modify new_text (str): New paragraph text content |
| edit_node_attributesC | Modify attributes of an existing node Args: file_path (str): Path to the HNPX document node_id (str): ID of the node to modify attributes (dict): Dictionary of attribute names and values to update |
| move_nodesC | Move multiple nodes between parents Args: file_path (str): Path to the HNPX document node_ids (list): List of node IDs to move new_parent_id (str): ID of the new parent node |
| reorder_childrenC | Reorganize the order of child elements Args: file_path (str): Path to the HNPX document parent_id (str): ID of the parent node child_ids (list): List of child IDs in the desired order |
| remove_nodesA | Permanently remove multiple nodes and all their descendants Args: file_path (str): Path to the HNPX document node_ids (list): List of node IDs to remove |
| remove_node_childrenC | Remove all children of a node Args: file_path (str): Path to the HNPX document node_id (str): ID of the parent node |
| render_nodeB | Render text representation of the node (only descendent paragraphs) Args: file_path (str): Path to the HNPX document node_id (str): ID of the node to render show_ids (bool): Whether to show paragraph IDs in square brackets show_markers (bool): Whether to mark chapter/sequence beginnings Returns: str: Formatted text representation the node |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mozhaa/hnpx-sdk'
If you have feedback or need assistance with the MCP directory API, please join our Discord server