Skip to main content
Glama

WritersLogic business agents

redact-text

Selective PII redaction with a self-check — Redacts detected personal data at the level you choose and rescans the output with the same rules. This self-check does not prove that all personal data is gone. Pick a level: 1 government identifiers (SSN, ITIN, EIN, UK NINO, Canadian SIN, driver's license, passport), 2 adds dates of birth, 3 adds street addresses and phone numbers, 4 adds person names and email addresses. Then switch single cate

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "text": "<text>"
    },
    "name": "redact-text"
  }
}

Input Schema

NameRequiredDescriptionDefault
keepNoStrings that must never be redacted, such as your own email address or company name. Case-insensitive, whole match.
textYesThe document text to redact (plain text, Markdown, CSV, JSON or HTML source).
levelNoCumulative preset, default 1. 1: government identifiers (SSN, ITIN, EIN, UK NINO, Canadian SIN, driver's license, passport); 2: level 1 plus dates of birth; 3: level 2 plus street addresses and phone numbers; 4: level 3 plus person names and email addresses.
styleNolabel (default): [REDACTED:SSN]. generic: [REDACTED]. numbered: [PERSON_1], same value same number. last4: [REDACTED:SSN:*6789] for numeric identifiers; this discloses the last four characters.
termsNoWords or phrases to redact wherever they appear (business names, project names, people you already know). Case-insensitive.
excludeNoCategories to remove from the level preset.
includeNoCategories to add to the level preset.
useModelNoAdd a language-model pass for names, organizations and addresses (when those categories are on). Sends the text, up to 60000 characters, to the configured model provider. Default false.
categoriesNoExact set of categories to redact; replaces the level preset when given.
minDigitRunNoAlso redact every run of at least this many digits (spaces, dots and hyphens between digits count as part of the run). This is the number of digits, not the numeric value.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It does valuable work by disclosing the rescan self-check and explicitly bounding the guarantee ('does not prove that all personal data is gone'), which is exactly the kind of caveat an agent needs. However, it omits the model-provider side effect and data-exposure implication of useModel, says nothing about cost/latency of the rescan pass, and the mid-sentence truncation removes the part about combining or overriding category sets.

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

Conciseness2/5

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

The opening purpose sentence is well front-loaded, but the description ends mid-word ('Then switch single cate'), which is a hard structural defect that leaves a dangling promise. It also spends most of its length duplicating the level-tier text that the schema already contains, rather than spending those words on the precedence rules an agent actually needs.

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?

This is a 10-parameter mutation-adjacent tool with no annotations and no output schema, so the description should carry more weight. It covers the level preset and the self-check caveat well but is cut off exactly where the include/exclude/categories interaction — the part that is genuinely ambiguous — would have been explained, leaving an agent to infer precedence from the schema alone.

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 every parameter including the level tiers, style formats, keep/terms, and useModel data-sending caveat is already documented in the schema. The description restates the level definitions almost verbatim and adds no syntax, ordering, or precedence detail beyond them. Baseline 3 is correct here.

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 first clause gives a precise verb+resource ('Selective PII redaction') and adds a distinctive behavioral trait ('with a self-check ... rescans the output with the same rules'). An agent knows exactly what the tool does. No sibling differentiation is offered, but the listed siblings (text-fit, offsets, calldata-decode) are unrelated, so there is nothing meaningful to distinguish against.

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?

It gives concrete in-tool selection guidance — 'Pick a level' with a full enumeration of what each of the four levels covers — and begins to describe mutating a preset ('Then switch single cate...'). It never states when to use this tool versus another approach, nor any exclusion, and the truncation cuts off the one sentence that would explain the include/exclude workflow.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources