Skip to main content
Glama

Apply safe fixes

fix_text
Read-onlyIdempotent

Apply safe fixes to text by converting em dashes to commas and deleting reflexive hedges and hollow intensifiers. Returns fixed text, edits, and remaining violations.

Instructions

Apply the safe fixes to a text: em dashes become commas, and reflexive hedges and hollow intensifiers are deleted. Returns the fixed text, the list of edits, and the violations left for the writer.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYesThe text to check. Markdown is understood: code blocks, inline code, URLs, and front matter are skipped.
rulesNoRun exactly these rule IDs, such as ['CES-P-001', 'CES-C-008']. Includes optional rules when named.
ignoreNoRule IDs to skip for this call. Use it for a justified exception, such as a factual contrast under CES-C-008.
includeOptionalNoAlso run the optional rules (stylistic triples, resume cliches). Default false.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYes
appliedYes
remainingYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=false and idempotentHint=true, so the safety profile is covered. The description adds genuine context beyond that: it specifies which edits are applied, that some violations are deliberately left unfixed, and what the response contains (fixed text, edits, remaining violations).

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?

Two sentences, front-loaded with the action and its concrete effects, then the return contract. No filler and no repetition of the title.

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?

An output schema exists, so the description need not detail return values, yet it helpfully summarizes them. What is missing is routing guidance against the sibling tools (when to fix vs. merely check), the only real gap for a four-parameter tool.

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 description coverage is 100%, so the schema already documents text, rules, ignore and includeOptional with examples and defaults. The description adds nothing parameter-specific, so the baseline 3 applies.

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 names a specific verb and resource ("Apply the safe fixes to a text") and enumerates exactly which transformations occur (em dashes to commas; reflexive hedges and hollow intensifiers deleted). This makes it clearly distinguishable from the sibling check_text, which by contrast only reports rather than applies.

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 by the verb and by the closing clause about violations "left for the writer", which scopes the tool to non-destructive, safe fixes only. However, it never explicitly says when to prefer this over check_text or measure_text, nor when to reach for includeOptional instead.

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