Xonta Docs RU
Server Details
Russian business docs for AI agents: INN/bank checks, amount in words, name declension, workdays
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- mrsergeiluzhnov/xonta-docs
- GitHub Stars
- 0
TDQS
Scored across 4 tools
Each of the four tools targets a completely different task: numeric amount-to-words with VAT, name/title declension, requisites checksum validation, and business-day calculations. There is no functional overlap, so an agent can select unambiguously.
All names use clean snake_case, which keeps the set predictable, but the conventions mix verb-led (decline_name, validate_requisites) and noun-led (amount_in_words, working_days) patterns. Readable and consistent in style, with only minor structural deviation.
Four tools is a well-scoped set for a focused Russian document-helper server, and each tool carries a distinct, non-redundant responsibility with multiple modes. Nothing feels padded or missing at the count level.
For a document-assist domain the surface covers the common pain points (amounts, declension, requisites, deadlines) and each tool exposes multiple modes. Some adjacent helpers (e.g. date-in-words, currency conversion) are absent, but the core workflows have no dead ends.
Available Tools
4 toolsamount_in_wordsСумма прописью (с НДС)ARead-onlyIdempotentInspect
Сумма прописью для счетов, актов и договоров: «Одна тысяча двести тридцать четыре рубля 56 копеек». Считает НДС (в том числе или сверху) и выдаёт готовую строку «…, в том числе НДС (22%) 222 руб. 63 коп.». Рубли, доллары, евро, юани. Russian 'amount in words' for invoices with VAT line.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Сумма: 1234.56 или «1 234,56» | |
| kopecks | No | Копейки цифрами (по умолчанию) или словами | |
| currency | No | Валюта, по умолчанию RUB | |
| vat_rate | No | Ставка НДС в процентах (22, 20, 10, 7, 5, 0) или «без НДС». Не указывать — НДС не считается | |
| vat_included | No | true (по умолчанию) — НДС уже в сумме; false — начислить сверху |
TDQS
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.
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.
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.
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.
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.
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Склонение ФИО и должности по падежамARead-onlyIdempotentInspect
Склоняет ФИО и должность по падежам для договоров, доверенностей и приказов: «в лице генерального директора Иванова Ивана Петровича», «выдана Кузнецовой Анне Сергеевне». Сам определяет пол по отчеству или имени, возвращает полную форму и инициалы. case=all — все шесть падежей сразу. Declines Russian full names and job titles by grammatical case.
| Name | Required | Description | Default |
|---|---|---|---|
| case | No | Падеж: genitive (родительный, по умолчанию), dative, accusative, instrumental, prepositional, nominative, по-русски, или all | |
| order | No | Порядок слов в full_name: last_first (по умолчанию) или first_last | |
| gender | No | Пол, если его нельзя определить по отчеству | |
| position | No | Должность, например «генеральный директор» или «главный бухгалтер» | |
| full_name | No | ФИО целиком, по умолчанию в порядке «Фамилия Имя Отчество» | |
| last_name | No | Фамилия (вместо full_name) | |
| first_name | No | Имя | |
| middle_name | No | Отчество |
TDQS
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.
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.
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.
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.
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.
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Проверка реквизитов (ИНН, КПП, ОГРН, БИК, счёт, СНИЛС)ARead-onlyIdempotentInspect
Проверяет российские реквизиты по контрольным суммам: ИНН (10/12 цифр), КПП, ОГРН/ОГРНИП, БИК, расчётный и корреспондентский счёт (ключевание по БИК), СНИЛС. Находит опечатки до выставления счёта или платежа и указывает, если реквизиты похожи на реквизиты разных лиц. Validates Russian company/bank identifiers (INN, KPP, OGRN, BIC, bank account, SNILS) by checksums. Offline, instant.
| Name | Required | Description | Default |
|---|---|---|---|
| bik | No | БИК банка, 9 цифр. Нужен для проверки счетов | |
| inn | No | ИНН, 10 или 12 цифр | |
| kpp | No | КПП, 9 символов | |
| ogrn | No | ОГРН (13 цифр) или ОГРНИП (15 цифр) | |
| snils | No | СНИЛС, 11 цифр (можно с дефисами и пробелом) | |
| account | No | Расчётный счёт, 20 цифр | |
| corr_account | No | Корреспондентский счёт банка, 20 цифр |
TDQS
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.
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.
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.
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.
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.
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Рабочие дни по производственному календарю РФARead-onlyIdempotentInspect
Производственный календарь России с праздниками и переносами. Три режима: (1) date + add_working_days — какая дата будет через N рабочих дней («оплата в течение 5 рабочих дней»); (2) date + end_date — сколько рабочих дней и часов между датами; (3) только date — рабочий ли это день, праздник, сокращённый день и ближайший рабочий день. Russian business-day calendar with official holidays and transfers.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Дата ГГГГ-ММ-ДД или ДД.ММ.ГГГГ. По умолчанию сегодня (Москва) | |
| end_date | No | Конец периода для подсчёта рабочих дней (включительно) | |
| add_working_days | No | Сколько рабочих дней прибавить (можно отрицательное) |
TDQS
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.
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.
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.
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.
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.
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.
4 tool updates
- First observed
amount_in_words - First observed
decline_name - First observed
validate_requisites - First observed
working_days
Related MCP Connectors
Russian company lookup (EGRUL/INN), Cyrillic search, RU page to Markdown. Pay per call in USDC.
RU INN/OGRN, banks, geo, WHOIS. Agent self-registers via register_agent. 20 free/day.
Web search, page reading and structured extraction for AI agents, with strong RU coverage
Search and analytics for Russian public procurement (44-FZ/223-FZ): tenders, contracts, market data
Related MCP Servers
- AlicenseAqualityBmaintenanceRussian business paperwork as PDF: invoices with a bank payment QR code (GOST R 56042), acts of completed work, payment QR codes and amounts in words. Requisites are checksum-validated; fully local, no API key.24MIT
- AlicenseAqualityBmaintenanceEnables AI assistants to validate Russian business requisites (INN, OGRN, bank accounts) via checksums, extract them from text, and retrieve counterparty details by INN using DaData.5MIT
- AlicenseAqualityAmaintenanceRussian business data with no API key: company check by INN/OGRN in FNS EGRUL/EGRIP, Bank of Russia exchange rates and key rate, late-payment interest, production calendar with business-day math, and bank details by BIK.610MIT
- AlicenseAqualityBmaintenanceLook up Russian companies by INN (tax ID) from Claude Desktop, Cursor or any MCP client: full company card, multi-year financials from official tax filings, bankruptcy and state-inspection history, trademarks and sanctions lists. Works without an API key — the anonymous free tier is enabled by default.5MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.