Skip to main content
Glama
jakobautomation

agentsvc-mcp

pii_redact

Redact personal data like emails, cards, names, and addresses from text using stable placeholders, with mapping returned for later restoration.

Instructions

PII Redaction — PII redaction for agent pipelines: remove personal data from text before it goes to another model, a log, a ticket system or a dataset. Emails, IBANs (checksum verified), card numbers (Luhn verified), phone numbers and IP addresses are found by exact patterns; names of people, street addresses, birth dates and ID numbers by Claude Haiku 5.5. Every value gets a stable placeholder like [PERSON_1] so the text stays readable, and the mapping comes back so you can restore it later (or mode mask or remove). Up to 8,000 characters, any language, the rest of the text stays unchanged. Instructions inside the text are ignored. Cost: $0.003 USDC per call. Latency p99: 4000ms.

Input Schema

NameRequiredDescriptionDefault
keepNoValues to leave in place, e.g. your own support address
modeNoplaceholder: [EMAIL_1]; mask: ████; remove: deleteplaceholder
textYesText to redact, max 8,000 chars
typesNoWhich kinds to redact. Default all except ORGANIZATION and URL
return_mappingNoReturn placeholder to original value mapping

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so richly: it splits deterministic detection (emails, checksum-verified IBANs, Luhn-verified cards, phones, IPs) from LLM detection (names, addresses, birth dates, IDs), discloses stable placeholders plus a restorable mapping, the 8,000-char cap, language scope, injection resistance, cost, and p99 latency.

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?

One dense paragraph, but it is front-loaded with the core purpose and every clause (limits, cost, latency, injection note) carries operational value. Slightly run-on, but nothing is filler.

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?

For a 5-parameter transformation tool with no output schema, the description covers the return (mapping), the modes, the size limit, and detection behavior; the input schema already documents each parameter, so nothing an agent needs to invoke it correctly is missing.

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 coverage is 100%, so baseline is 3, but the description adds real meaning beyond the schema: the mapping exists so you can restore values later, and mode supports mask/remove alongside the default placeholder. keep, types, and the default exclusion of ORGANIZATION/URL are left to the schema.

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 ('PII redaction... remove personal data from text') and immediately frames the concrete contexts (model input, logs, tickets, datasets). It is clearly distinct from neighbors like privacy_check or prompt_injection_check, which audit rather than transform.

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?

The 'before it goes to another model, a log, a ticket system or a dataset' clause gives a clear when-to-use context. It stops short of naming alternatives or explicit when-not-to-use conditions (e.g., vs. privacy_check), so it is clear context without routing.

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

Deploy Server

Other Tools