Skip to main content
Glama

xonta-docs

Server Details

Tools for AI agents preparing Russian business documents: validates INN, KPP, OGRN, BIC and bank accounts by checksum, writes amounts in Russian words with VAT, declines Russian names and job titles by case, and counts working days by the official Russian calendar. Free, no API key.

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.2/5.0

Scored across 4 tools

Disambiguation5/5

Each tool targets a distinct, non-overlapping task: money-to-words conversion, Russian name/job-title declension, requisites checksum validation, and business-day calendar math. There is no plausible scenario where an agent would confuse one with another, as descriptions are precise and domains are separate.

Naming Consistency4/5

Three tools follow a clean verb_noun snake_case pattern (amount_in_words, decline_name, validate_requisites), which is consistent and readable. The fourth, working_days, is a noun-only name that breaks the verb-first convention slightly, but the style (snake_case, English) remains uniform.

Tool Count4/5

Four tools is a compact, well-scoped set where each tool clearly earns its place for a Russian document-helpers domain. It sits at the lower end of the ideal range, with room for a couple more helpers, but nothing feels redundant or bloated.

Completeness4/5

The surface covers the core paperwork needs well: sum-in-words with VAT, name declension, requisites validation, and working-day calculations. Minor gaps exist (e.g. number/pluralization helpers, date-in-words formatting, or currency conversion), but agents can work around these for typical invoice/contract workflows.

Available Tools

4 tools
amount_in_wordsСумма прописью (с НДС)A
Read-onlyIdempotent
Inspect

Сумма прописью для счетов, актов и договоров: «Одна тысяча двести тридцать четыре рубля 56 копеек». Считает НДС (в том числе или сверху) и выдаёт готовую строку «…, в том числе НДС (22%) 222 руб. 63 коп.». Рубли, доллары, евро, юани. Russian 'amount in words' for invoices with VAT line.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesСумма: 1234.56 или «1 234,56»
kopecksNoКопейки цифрами (по умолчанию) или словами
currencyNoВалюта, по умолчанию RUB
vat_rateNoСтавка НДС в процентах (22, 20, 10, 7, 5, 0) или «без НДС». Не указывать — НДС не считается
vat_includedNotrue (по умолчанию) — НДС уже в сумме; false — начислить сверху

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/closed-world, so the safety profile is covered. The description adds real behavioral context beyond that: VAT can be either included in or added on top of the amount, and currency coverage is limited to RUB/USD/EUR/CNY. It does not mention limits or edge cases (e.g. negative or zero amounts), so not a 5.

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 concrete output example, then the VAT behavior, then currencies — a sensible order with no filler. The final English sentence duplicates the opening Russian one, which is mild redundancy rather than waste.

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?

There is no output schema, yet the description supplies two literal example strings including the generated VAT clause, so the agent knows exactly what comes back. For a 5-parameter, single-purpose formatting tool this is sufficient to call it correctly.

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, and the description genuinely adds meaning: it explains vat_included as 'в том числе или сверху' and pairs the VAT-rate concept with a produced output line. That clarifies the interplay between vat_rate and vat_included better than the schema alone, though it still does not document the kopecks enum values.

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?

Names a specific transformation (amount → words) plus the concrete artifact it produces for invoices/acts/contracts, with a worked example. Nothing in the sibling set (decline_name, validate_requisites, working_days) overlaps, so an agent can route correctly without ambiguity.

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?

States the context of use explicitly ('для счетов, актов и договоров') and notes the VAT-line scenario, which is clear guidance on when this tool applies. It stops short of naming when NOT to use it or pointing to an alternative, since none of the siblings compete here.

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

decline_nameСклонение ФИО и должности по падежамA
Read-onlyIdempotent
Inspect

Склоняет ФИО и должность по падежам для договоров, доверенностей и приказов: «в лице генерального директора Иванова Ивана Петровича», «выдана Кузнецовой Анне Сергеевне». Сам определяет пол по отчеству или имени, возвращает полную форму и инициалы. case=all — все шесть падежей сразу. Declines Russian full names and job titles by grammatical case.

ParametersJSON Schema
NameRequiredDescriptionDefault
caseNoПадеж: genitive (родительный, по умолчанию), dative, accusative, instrumental, prepositional, nominative, по-русски, или all
orderNoПорядок слов в full_name: last_first (по умолчанию) или first_last
genderNoПол, если его нельзя определить по отчеству
positionNoДолжность, например «генеральный директор» или «главный бухгалтер»
full_nameNoФИО целиком, по умолчанию в порядке «Фамилия Имя Отчество»
last_nameNoФамилия (вместо full_name)
first_nameNoИмя
middle_nameNoОтчество

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and closed-world, so safety is covered. The description adds genuinely non-structured behavior: it auto-detects gender from patronymic or first name, and it returns the full declined form plus initials — useful output-shape context absent from the schema.

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 core action, then examples, then behavioral notes, with an English gloss at the end. The inline examples are informative rather than padding; the only mild redundancy is repeating the action in English after the Russian.

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?

With 8 optional parameters and no output schema, the description compensates by describing what comes back (full form and initials) and how gender and case=all behave. Remaining gap is the relationship between full_name and the split last/first/middle_name parameters, which only the schema covers.

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 100%, so baseline is 3. The description goes beyond it by mapping the 'all' value of case (all six cases at once) and by explaining the gender-inference fallback, which clarifies why the gender parameter exists only as a backup.

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: declines Russian full names and job titles by grammatical case. The concrete examples («в лице генерального директора Иванова Ивана Петровича») make the output shape unmistakable and clearly distinguish it from siblings like amount_in_words or validate_requisites.

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?

Names the document contexts where it applies (contracts, powers of attorney, orders) and explains the case=all shortcut for retrieving all six cases at once. It does not explicitly state when to avoid it or name an alternative, but the domain of use is clear from the examples.

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

validate_requisitesПроверка реквизитов (ИНН, КПП, ОГРН, БИК, счёт, СНИЛС)A
Read-onlyIdempotent
Inspect

Проверяет российские реквизиты по контрольным суммам: ИНН (10/12 цифр), КПП, ОГРН/ОГРНИП, БИК, расчётный и корреспондентский счёт (ключевание по БИК), СНИЛС. Находит опечатки до выставления счёта или платежа и указывает, если реквизиты похожи на реквизиты разных лиц. Validates Russian company/bank identifiers (INN, KPP, OGRN, BIC, bank account, SNILS) by checksums. Offline, instant.

ParametersJSON Schema
NameRequiredDescriptionDefault
bikNoБИК банка, 9 цифр. Нужен для проверки счетов
innNoИНН, 10 или 12 цифр
kppNoКПП, 9 символов
ogrnNoОГРН (13 цифр) или ОГРНИП (15 цифр)
snilsNoСНИЛС, 11 цифр (можно с дефисами и пробелом)
accountNoРасчётный счёт, 20 цифр
corr_accountNoКорреспондентский счёт банка, 20 цифр

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already establish readOnly/idempotent/closed-world, so the safety profile is covered. The description adds genuine behavior not in the annotations: the validation is offline and instant, and it flags when the supplied identifiers look like they belong to different persons/entities. It stops short of describing partial-input behavior or the exact response shape.

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 core action and the identifier list, then the payoff (catching typos) and the key property (offline, instant). It is slightly redundant because the same content is given twice in Russian and English, but each version is tight and waste-free.

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 7-parameter, all-optional, no-output-schema tool, the description covers purpose, the identifier set, and even one aspect of the result (mismatched-persons warning). The remaining gap is that it never clarifies that zero required parameters means partial sets are acceptable and what is reported per field.

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 coverage is 100% and each parameter already carries its own Russian description with digit counts, so the description's digit hints largely duplicate the schema. No additional semantics (e.g. which combinations are meaningful, or behavior when only some fields are supplied) are added beyond what the schema states.

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 (проверяет/validates) and an explicit, enumerated resource set (ИНН, КПП, ОГРН/ОГРНИП, БИК, расчётный/корреспондентский счёт, СНИЛС), including the checksum method. Nothing among the siblings (amount_in_words, decline_name, working_days) overlaps, so the agent can select this unambiguously.

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?

Gives a clear use context — catching typos before issuing an invoice or payment ("до выставления счёта или платежа") — which tells the agent when to reach for it. It does not name any alternative tool or state exclusions, but no sibling competes for this job.

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

working_daysРабочие дни по производственному календарю РФA
Read-onlyIdempotent
Inspect

Производственный календарь России с праздниками и переносами. Три режима: (1) date + add_working_days — какая дата будет через N рабочих дней («оплата в течение 5 рабочих дней»); (2) date + end_date — сколько рабочих дней и часов между датами; (3) только date — рабочий ли это день, праздник, сокращённый день и ближайший рабочий день. Russian business-day calendar with official holidays and transfers.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateNoДата ГГГГ-ММ-ДД или ДД.ММ.ГГГГ. По умолчанию сегодня (Москва)
end_dateNoКонец периода для подсчёта рабочих дней (включительно)
add_working_daysNoСколько рабочих дней прибавить (можно отрицательное)

TDQS

A4.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered. The description adds that the data is the official RF calendar with holidays and transfers, but omits coverage years/freshness and any note on whether the calendar is bundled or remote, so beyond the mode mechanics it contributes modestly.

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-loads the resource statement, then a cleanly numbered three-mode list; every clause carries information an agent needs. The only mild redundancy is the bilingual English restatement at the end, which duplicates the opening rather than adding content.

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?

With no output schema, the description does describe what each mode returns (a resulting date, a count of days and hours, a day classification plus next working day). It stops short of stating the response shape or the calendar's year coverage, which an agent might need for edge dates outside the supported range.

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 the baseline is 3, but the description goes further by defining the meaning of parameter combinations rather than individual fields — which pair triggers addition, counting, or classification. It does not restate format details already in the schema, which is appropriate.

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?

Names the specific resource (Russian production calendar with official holidays and transfers) and enumerates exactly what the tool computes in each of its three modes. Sibling tools (amount_in_words, decline_name, validate_requisites) are in unrelated domains, so no disambiguation is needed and none is attempted.

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?

Explicitly maps each parameter combination to a distinct use case: date + add_working_days for deadline arithmetic, date + end_date for day/hour counting, and date alone for weekday/holiday classification. It even frames a real scenario ("оплата в течение 5 рабочих дней"), leaving no inference about when to pick a mode.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • First observedamount_in_words
    • First observeddecline_name
    • First observedvalidate_requisites
    • First observedworking_days

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    24 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources