Skip to main content
Glama

Format a local XML file

abox_xml_format

Pretty-print or minify local UTF-8 XML files while preserving mixed content and xml:space, writing a verified new file. Rejects DTDs and external resources.

Instructions

Pretty-print or minify local UTF-8 XML using the existing website parser and printer. Preserves mixed content and xml:space behavior. Rejects DTDs and custom entities; no external resource resolution. Writes a new .xml file and verifies document structure and text. Formatting can change insignificant whitespace and quote spelling.

Input Schema

NameRequiredDescriptionDefault
indentNo2
minifyNo
input_pathYesAbsolute local filesystem path. URLs and network shares are refused.
output_pathYesAbsolute local filesystem path. URLs and network shares are refused.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.9.0

TDQS

A4.4/5.0
Behavior5/5

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

Beyond annotations, it discloses important behavior: mixed content and xml:space are preserved, DTDs/custom entities are rejected, external resolution is disabled, output is written and structurally/textually verified, and formatting may alter insignificant whitespace and quote spelling. These are material operational details for an agent writing a new XML file.

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?

The description is five sentences, front-loaded with the core action and followed by constraints and side effects. Every sentence adds useful information without repetition.

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 file-writing formatter with no output schema, the description covers the essential behavior, constraints, and output verification. It could be more complete about overwrite behavior and what verification result is returned, but the core operational details are present.

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 coverage is 50%. The description clarifies the minify behavior and local-path constraints, but it does not explain the indent parameter's '2', '4', and 'tab' options, leaving part of the parameter semantics to the schema enum.

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

Purpose5/5

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

The description states a specific verb and resource: pretty-print or minify local UTF-8 XML and write a new .xml file. It is easy to distinguish from siblings like abox_xml_json or abox_code_format because it is explicitly XML formatting, not conversion or general code formatting.

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?

It gives clear usage constraints: local UTF-8 XML only, DTDs and custom entities are rejected, and external resources are not resolved. It does not explicitly name alternative tools or say when to prefer abox_xml_json versus this formatter, so it falls short of full when/when-not/alternatives guidance.

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