Skip to main content
Glama
javded-itres

MCP Collabora Holix

by javded-itres

office_format_tool

Formats existing text in DOCX, XLSX, PPTX, ODT, ODS, or ODP files by applying font, size, color, fill, bold, italic, underline, or paragraph styles, then reloads the file in the editor.

Instructions

Format existing text and reload the file in the editor.

Works for docx, xlsx, pptx, odt, ods, and odp. path is workspace-relative. text is the exact phrase. font is a family such as Calibri. size is points, such as 14. color and fill are RRGGBB. style is a named paragraph style such as Heading 1, and is available for docx and odt. Omit a property to leave it unchanged. Bold, italic, color, font, and size apply to each match. fill shades a paragraph only when that paragraph's whole text is the phrase. Do not unzip the file or rewrite its XML.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
boldNo
fillNo
fontNo
pathYes
sizeNo
textYes
colorNo
styleNo
italicNo
underlineNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the burden well: it discloses format support, workspace-relative path semantics, that omitting a property preserves the existing value, that bold/italic/color/font/size apply to every match, that fill only applies when the paragraph's whole text is the phrase, and warns against unzipping or rewriting XML. This is rich behavioral context beyond what structured fields provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action and reload behavior, then parameter semantics, then edge cases (fill scope, no XML rewriting). Sentences are dense and mostly earn their place, though the parameter enumeration is lengthy for a single-paragraph description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an output schema exists, return values need no explanation, and the description covers format support, all non-obvious parameter semantics, unset-property behavior, and match-scoping. An agent has everything needed to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% across 10 parameters, so the description must compensate and it does: path and text semantics, font as a family (Calibri), size in points (14), color/fill as RRGGBB, style as a named paragraph style limited to docx/odt, and the 'omit to leave unchanged' rule. Each formatting toggle's match scope is also explained.

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?

States a specific verb and resource: format existing text and reload the file in the editor. It names the exact supported formats and the mechanism (formatting on text matches), which distinguishes it from sibling tools like office_replace_tool or office_read_tool without opening their schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied well through the description of supported formats and behaviors, but there is no explicit statement of when to use this instead of office_replace_tool or another sibling, nor any exclusions. The agent can infer intent from the formatting-specific vocabulary but is not routed.

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