Skip to main content
Glama

set_cell_style

Apply formatting to a range of cells in an Excel .xlsx file. Set bold, italic, font size, colors, alignment, borders, and number formats.

Instructions

Apply formatting to a range of cells.

Args: path: Path to the .xlsx file, or the name of a preloaded file. Omit if only one file is configured. sheet: Sheet name. cell_range: A1-style range, e.g. "A1:D1". style: Keys among: bold, italic, font_size, font_color (hex RGB, e.g. "FF0000"), bg_color (hex RGB), horizontal, vertical (alignment), border ("thin", "medium", "thick", ...), number_format (e.g. "#,##0.00").

Input Schema

NameRequiredDescriptionDefault
pathNo
sheetYes
styleYes
backupNo
cell_rangeYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.3.0
    • addedInput schema / properties / backup
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "boolean"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Backup"
      +}
  2. First observedv0.1.0

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It never states that this mutates the file, whether existing formatting on the range is overwritten or merged, or what the 'backup' parameter actually does — a parameter that exists in the schema but is entirely absent from the description. For an unannotated mutation tool this is a meaningful gap.

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 one-line purpose, then a tight Args block with no filler. The style-key enumeration is dense but every line is useful. Slightly list-heavy rather than prose, but appropriately sized for a 5-parameter tool.

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

Completeness3/5

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

An output schema exists, so return values need not be explained, and the style-key documentation fills the biggest schema gap. However, for an unannotated mutation tool the description should at least mention mutability/reversibility and document the undocumented 'backup' parameter; those omissions keep it at a minimum-viable level.

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

Parameters4/5

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

Schema description coverage is 0% and the style object is only typed as a free-form object, so the description does the real work: it enumerates all valid style keys (bold, italic, font_size, font_color, bg_color, horizontal, vertical, border, number_format) and even gives hex format examples. It adds substantial meaning beyond the schema. It loses a point for omitting the 'backup' parameter entirely.

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

Purpose4/5

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

The description opens with a specific verb+resource: 'Apply formatting to a range of cells.' This clearly distinguishes it from value-writing siblings like write_cells or clear_range. It stops short of naming any sibling explicitly, so it does not reach the top score.

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

Usage Guidelines2/5

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

There is no when-to-use or when-not-to-use guidance, no note about style vs. value siblings, and no prerequisite information. The Args block documents parameters but never says when this tool is the right choice.

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