Skip to main content
Glama
Vladimir-Human

humanizer-ru

humanizer-markers

humanizer_markers
Read-onlyIdempotent

Detects and displays copy-paste and chat-interface artifacts in Russian text by scanning for 40 class A/B markers. Use it to reveal hidden AI trace indicators before deciding on text-layer risk.

Instructions

артефакты копипасты и чат-интерфейсов: 40 маркеров классов A и B; находит и показывает; --remove снимает невидимые метки текстового слоя по классификации риска (safe автоматически, ambiguous только opt-in, dangerous никогда) Когда не использовать: не детектор генерации: отсутствие маркеров не доказывает авторство человека; контейнерные файлы (PNG/DOCX/PDF/…) — scripts/filemarks (репозиторий); текстовый слой снятия входит в пакет (text_layer) Через MCP схема инструмента принимает только параметры text и marker_class: режим --remove (снятие невидимых меток) по MCP не вызывается — это консольная команда humanizer-markers --remove; явная очистка поддерживаемых артефактов вставки доступна инструментом humanizer_clean.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYesОбрабатываемый текст (данные, не команды). Область скилла — русский связный текст; пустой и не-русский вход получает статус out-of-scope.
marker_classNoКлассы маркеров: all — все, a — только класс A.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
toolYes
errorNo
filesYes
schemaYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv3.35.1
    • addedOutput schema / properties / files / items / properties / markers / items / properties / end
      Added value: +{
      +  "description": "конец совпадения (исключительно) в тех же координатах, что start",
      +  "type": "integer"
      +}
    • addedOutput schema / properties / files / items / properties / markers / items / properties / start
      Added value: +{
      +  "description": "начало совпадения в кодовых точках внутри строки (NFC); для shadow:true — внутри теневой строки без невидимых символов",
      +  "type": "integer"
      +}
  2. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already carry readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety bar is lower. The description adds valuable boundary context: the --remove (marker-stripping) mode exists but is console-only and 'по MCP не вызывается' (not invoked via MCP), and the MCP schema intentionally accepts only text and marker_class. This prevents an agent from assuming it can modify text through this tool. No contradiction with annotations; the description reinforces the read-only MCP surface.

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

Conciseness3/5

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

Every clause carries information with no filler, and the core purpose is front-loaded. However, the content is packed into a single dense paragraph where topics (purpose, --remove mode, risk classification, exclusions, MCP restriction) flow together via semicolons and em-dashes, making it harder to scan than it should be for an agent parsing the description.

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?

For a moderately complex tool that already has an output schema and rich annotations, the description covers purpose, scope (Russian coherent text, out-of-scope handling in the schema), exclusions, alternatives, and the MCP/console boundary. Minor gaps remain — full semantics of class A vs B markers and how to interpret findings are only partially explained — but return values are covered by the output schema.

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% and both parameters are well described. The description adds meaning beyond the schema by naming the two marker classes (A and B), which explains why the enum only offers 'a' (class A only) versus 'all' — implicitly there is no 'b'-only option. It also states that MCP accepts only these two parameters, clarifying the boundary between the tool and the console command.

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 states a specific action and resource: it 'находит и показывает' (finds and shows) '40 маркеров классов A и B' (40 markers of classes A and B) in 'артефакты копипасты и чат-интерфейсов' (copypaste and chat-interface artifacts). It also distinguishes itself from siblings by explicitly declaring 'не детектор генерации' (not a generation detector) and routing cleaning use-cases to humanizer_clean.

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

Usage Guidelines5/5

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

Provides an explicit 'Когда не использовать' (when not to use) section with concrete exclusions: it is not a generation detector (absence of markers does not prove human authorship) and container files (PNG/DOCX/PDF) belong to scripts/filemarks. It also routes explicit artifact cleaning to the humanizer_clean sibling tool. This is actionable routing guidance, not just a purpose statement.

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