Skip to main content
Glama
dontsovcmc

io.github.dontsovcmc/tochka-bank

by dontsovcmc

mcp-server-tochka-bank

MCP-сервер для работы с API банка Точка через Claude Code, Claude Desktop и другие MCP-совместимые клиенты.

Все данные остаются на вашем компьютере — токен никуда не передаётся.

Возможности

Банковские операции

Инструмент

Описание

tochka_balance

Баланс счёта

tochka_payment

Создать исходящий платёж (я плачу кому-то), получить ссылку на подпись

tochka_invoice

Выставить счёт покупателю (мне платят)

tochka_download_invoice

Скачать PDF счёта

tochka_upd

Создать УПД (универсальный передаточный документ), получить ссылку на подпись

tochka_search

Поиск операций по ИНН или названию контрагента (возвращает полные реквизиты: БИК, счёт, корр.счёт)

tochka_incoming

Входящие поступления за месяц, сгруппированные по ИНН отправителя (для налоговых отчётов АУСН)

Счета и документы (дополнительно)

Инструмент

Описание

tochka_account_detail

Детали банковского счёта

tochka_all_balances

Балансы всех счетов

tochka_statements_list

Список последних выписок

tochka_card_transactions

Авторизованные карточные транзакции

tochka_customers

Список клиентов (организаций)

tochka_customer

Детали клиента

tochka_delete_invoice

Удалить счёт

tochka_send_invoice_email

Отправить счёт на email

tochka_delete_closing_document

Удалить закрывающий документ

tochka_send_closing_document_email

Отправить закрывающий документ на email

tochka_download_closing_document

Скачать PDF закрывающего документа

tochka_payments_for_sign

Список платежей на подпись

Эквайринг (платёжные ссылки)

Инструмент

Описание

tochka_acquiring_payments

Список операций эквайринга

tochka_acquiring_payment_create

Создать платёжную ссылку

tochka_acquiring_payment

Детали операции эквайринга

tochka_acquiring_payment_capture

Списать средства (двухстадийный платёж)

tochka_acquiring_payment_refund

Возврат платежа

tochka_acquiring_payment_with_receipt

Создать платёж с фискальным чеком

tochka_acquiring_registry

Реестр платежей эквайринга

tochka_acquiring_retailers

Список торговых точек

П��дписки (рекуррентные платежи)

Инструмент

Описание

tochka_subscription_create

Создать подписку

tochka_subscriptions

Список подписок

tochka_subscription_charge

Списание по подписке

tochka_subscription_status

Статус подписки

tochka_subscription_status_set

Установить статус подписки

tochka_subscription_with_receipt

Создать подписку с фискальным чеком

Разрешения API (Consents)

Инструмент

Описание

tochka_consents

Список разрешений

tochka_consent_create

Создать разрешение

tochka_consent

Детали разрешения

tochka_consent_children

Дочерние разрешения

Отслеживание оплаты счетов

Инструмент

Описание

tochka_track_invoice

Добавить счёт в отслеживание оплаты

tochka_untrack_invoice

Убрать счёт из отслеживания

tochka_pending_invoices

Список счетов, ожидающих оплаты

tochka_check_invoices

Проверить все ожидающие счета, оплаченные удаляются автоматически

Данные хранятся в ~/.config/mcp-server-tochka-bank/pending_invoices.json.

Два способа отслеживания в зависимости от того, как был создан счёт:

Счёт создан через MCP-сервер (tochka_invoice) — данные сохраняются автоматически. Проверка оплаты через payment-status API Точки. Признак оплаты: статус счёта в API Точки изменился на "оплачен".

Счёт создан вручную (в интернет-банке) — нужно указать ИНН плательщика и сумму при добавлении в трекер (tochka_track_invoice). Проверка оплаты через банковскую выписку. Признаки оплаты (все условия одновременно):

  • Входящий платёж (Credit)

  • ИНН плательщика совпадает с buyer_inn

  • Дата платежа >= дата создания записи в трекере

  • Разница суммы платежа и суммы счёта не более 1 рубля

После выставления счёта через MCP он автоматически попадает в отслеживание. При старте сессии Claude покажет неоплаченные и запустит периодическую проверку.

Локальный справочник товаров

Инструмент

Описание

goods_list

Список всех товаров

goods_add

Добавить товар (название, единица измерения, цена)

goods_remove

Удалить товар по названию

Товары хранятся локально в ~/.config/mcp-server-tochka-bank/goods.json.

Related MCP server: plaid-mcp

Настройка

Шаг 1. Получить JWT-токен в банке Точка

  1. Войдите в интернет-банк Точка

  2. Перейдите в НастройкиИнтеграции и API

  3. Нажмите «Создать токен» (JWT)

  4. Выберите разрешения:

    • ReadAccountsBasic, ReadAccountsDetail — информация о счетах

    • ReadBalances — баланс

    • ReadStatements — выписки

    • ReadCustomerData — данные клиентов

    • CreatePaymentForSign, ReadPaymentData — платежи

    • ManageInvoiceData — счета и закрывающие документы

    • ReadAcquiringData, MakeAcquiringOperation — эквайринг и подписки

  5. Скопируйте сгенерированный токен

Шаг 2. Подключить MCP-сервер

Claude Code (CLI в терминале)

Способ 1: через uvx (не требует установки пакета)

Требуется uv — если не установлен:

curl -LsSf https://astral.sh/uv/install.sh | sh
claude mcp add tochka-bank \
  -e TOCHKA_TOKEN=ваш_токен \
  -- uvx mcp-server-tochka-bank

Способ 2: через pip

pip install mcp-server-tochka-bank

claude mcp add tochka-bank \
  -e TOCHKA_TOKEN=ваш_токен \
  -- python -m mcp_server_tochka_bank

Для удаления:

claude mcp remove tochka-bank

Claude Desktop (десктопное приложение)

Добавьте в конфигурационный файл:

Клиент

ОС

Путь к файлу

Claude Code

все

~/.claude/settings.json (секция mcpServers)

Claude Desktop

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Claude Desktop

Windows

%APPDATA%\Claude\claude_desktop_config.json

Claude Desktop

Linux

~/.config/Claude/claude_desktop_config.json

Через uvx:

{
  "mcpServers": {
    "tochka-bank": {
      "command": "uvx",
      "args": ["mcp-server-tochka-bank"],
      "env": {
        "TOCHKA_TOKEN": "ваш_токен"
      }
    }
  }
}

Через pip (после pip install mcp-server-tochka-bank):

{
  "mcpServers": {
    "tochka-bank": {
      "command": "python",
      "args": ["-m", "mcp_server_tochka_bank"],
      "env": {
        "TOCHKA_TOKEN": "ваш_токен"
      }
    }
  }
}

Для удаления — удалите блок "tochka-bank" из файла.

Токен хранится только на вашем компьютере и передаётся серверу через переменную окружения.

Шаг 3. Проверить

Попросите Claude: «покажи баланс в банке Точка» — он вызовет tochka_balance.

Примеры (MCP)

  • «покажи баланс» → tochka_balance

  • «выстави счёт ООО Рога и Копыта на 15 000 ₽» → tochka_invoice

  • «создай УПД к этому счёту» → tochka_upd

  • «оплати Попову 5000» → tochka_search (найти реквизиты) → tochka_payment (создать платёж) → ссылка на подпись

  • «оплати по реквизитам ...» → tochka_payment

  • «найди все операции с ИНН 7700000000» → tochka_search

  • «добавь товар: Виджет, шт., 500.00» → goods_add

  • «отслеживай оплату счёта №140» → tochka_track_invoice

  • «какие счета не оплачены?» → tochka_pending_invoices

  • «проверь оплату» → tochka_check_invoices

CLI-режим

Пакет можно использовать как CLI-инструмент в терминале. Без аргументов запускается MCP-сервер, с командой — CLI.

Требования

Переменная окружения TOCHKA_TOKEN должна быть установлена:

export TOCHKA_TOKEN=ваш_токен

Команды

# Баланс
mcp-server-tochka-bank balance
mcp-server-tochka-bank all-balances
mcp-server-tochka-bank account-detail --account-id 40702810100000000001/044525000

# Поиск операций по ИНН или названию
mcp-server-tochka-bank search 7700000000
mcp-server-tochka-bank search робокасса --days 60

# Входящие поступления за месяц (для налоговых отчётов)
mcp-server-tochka-bank incoming --month 3 --year 2026
mcp-server-tochka-bank incoming --month 3 --year 2026 --inn 3532015985

# Выписки и транзакции
mcp-server-tochka-bank statements-list --limit 10
mcp-server-tochka-bank card-transactions

# Клиенты
mcp-server-tochka-bank customers
mcp-server-tochka-bank customer 100000001

# Счета и документы
mcp-server-tochka-bank delete-invoice <document_id>
mcp-server-tochka-bank send-invoice-email <document_id> buyer@example.com
mcp-server-tochka-bank download-closing-document <document_id> /tmp/upd.pdf
mcp-server-tochka-bank payments-for-sign

# Эквайринг
mcp-server-tochka-bank acquiring-payments --page 1
mcp-server-tochka-bank acquiring-payment <operation_id>
mcp-server-tochka-bank acquiring-retailers

# Подписки
mcp-server-tochka-bank subscriptions
mcp-server-tochka-bank subscription-status <operation_id>

# Разрешения
mcp-server-tochka-bank consents
mcp-server-tochka-bank consent <consent_id>

# Справочник товаров
mcp-server-tochka-bank goods list
mcp-server-tochka-bank goods add --name "Виджет" --unit "шт." --price "500.00"
mcp-server-tochka-bank goods remove --name "Виджет"

# Отслеживание оплаты
mcp-server-tochka-bank pending-invoices
mcp-server-tochka-bank check-invoices --days 30

Все команды выводят результат в JSON.

Лицензия

MIT

Available Tools

44 tools
goods_addA

Add a new good to local catalog.

Args: name: Product name (e.g. "Wi-Fi модем Ватериус") unit: Unit of measurement (шт., компл., усл.ед., etc.) price: Price per unit as string (e.g. "5290.00")

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
unitYes
priceYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are present, so the description must cover behavior. It describes adding a good but does not disclose side effects (e.g., duplicate handling, permissions, limits, whether the operation is reversible). This is a significant gap for a mutation tool.

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

Conciseness5/5

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

The description is concise, with a clear docstring structure and a bullet-style Args section. Every sentence is necessary and no redundant information is present.

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?

Given the low complexity (3 simple parameters, no enums) and the presence of an output schema (though not shown), the description adequately explains the tool's purpose and parameters. It does not describe return values, but output schema likely covers that.

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 0%, so the description must explain all parameters. It provides context for each: name (example), unit (example list), price (type hint 'as string', example). This adds significant meaning beyond the schema's types and titles.

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 clearly states the action ('Add a new good') and the resource ('to local catalog'). It uses a specific verb and resource, and naturally distinguishes from siblings like goods_list and goods_remove which handle listing and removal.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, nor any conditions or exclusions. It only describes what it does, leaving the agent to infer usage context from the action alone.

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

goods_listA
Read-only

List all goods from local catalog. Use goods_add/goods_remove to manage.

Returns JSON array of goods with name, unit, and price.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.9/5.0
Behavior5/5

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

Discloses read-only nature (consistent with readOnlyHint) and specifies return format as JSON array with fields name, unit, price, adding value beyond annotations.

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

Conciseness5/5

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

Two concise sentences with essential information front-loaded: purpose first, then return details and alternatives.

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?

Complete for a simple listing tool with no parameters; output schema exists, so return values are covered; no gaps.

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?

No parameters, so baseline is 4 per rubric; description adds no further parameter info, but none is needed.

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?

Clearly states it lists all goods from local catalog, distinguishing itself from sibling tools goods_add and goods_remove which are for management.

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 mentions alternatives goods_add/goods_remove for managing, providing clear guidance on when to use this tool.

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

goods_removeA
Destructive

Remove a good from local catalog by exact name.

Args: name: Exact product name to remove

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already indicate destructive=true; description adds that it operates on 'local catalog', providing context beyond annotations. No contradiction.

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

Conciseness5/5

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

Extremely concise: two sentences, front-loaded with the key action and resource, no wasted words.

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 simple one-parameter tool with output schema, the description covers purpose and parameter adequately. Could mention error handling for missing goods, but not necessary.

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 0%, but description adds meaning: 'Exact product name to remove' clarifies the exactness requirement, which is crucial for correct invocation.

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 clearly states the action 'Remove' and the resource 'good from local catalog', distinguishing it from siblings like goods_list and goods_add.

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?

The description mentions 'by exact name' which implies usage condition, but no explicit guidance on when to use or alternatives. However, for a simple delete tool, this is minimally adequate.

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

tochka_account_detailA
Read-only

Get detailed account information.

Args: account_id: Account ID (e.g. "40702810100000000001/044525000"). Uses first account if empty.

ParametersJSON Schema
NameRequiredDescriptionDefault
account_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description adds some value by specifying the default behavior (uses first account if account_id empty). However, no other behavioral traits are disclosed beyond that, such as concurrency, rate limits, or side effects. The description does not contradict annotations.

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

Conciseness5/5

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

The description is extremely concise—two sentences with no wasted words. The purpose is front-loaded in the first sentence. Every sentence adds value without redundancy.

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?

Given the existence of an output schema, the description does not need to explain return values. It adequately covers the only parameter and the tool's basic purpose. However, it could mention that this is for a specific bank account system or note any prerequisites (e.g., authentication), but overall it is sufficiently complete for a simple read tool with good annotations.

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?

With 0% schema description coverage, the description compensates well by explaining the 'account_id' parameter with an example format and noting the default empty-string behavior. This adds significant meaning beyond the schema, though it could have provided more detail about allowed formats or constraints.

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 description clearly states the tool gets 'detailed account information', which is a specific resource. It uses a specific verb 'Get' and resource 'detailed account information', but does not explicitly differentiate from sibling tools like 'tochka_balance' or 'tochka_all_balances', which limits clarity slightly.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description does not mention circumstances under which this tool is preferable, nor does it list when not to use it. The only usage hint is about using the first account if account_id is empty, but this is more behavioral than comparative.

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

tochka_acquiring_paymentB
Read-only

Get acquiring payment operation details.

Args: operation_id: Payment operation ID

ParametersJSON Schema
NameRequiredDescriptionDefault
operation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds no further behavioral details (e.g., what details are returned, constraints). It is adequate but does not enhance transparency beyond annotations.

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?

The description is very concise with two sentences. The first clearly states purpose; the second lists a parameter but is not structured. It is efficient but could be formatted better for readability.

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 simple read tool with one parameter and an output schema, the description provides the essential purpose. It could mention prerequisites or response expectations but is mostly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must compensate. It only restates the parameter name and adds minimal clarification ('Payment operation ID'), without format or origin details. This is insufficient for full understanding.

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 clearly states the tool retrieves acquiring payment operation details, with a specific verb ('Get') and resource. It effectively distinguishes from sibling tools like 'tochka_acquiring_payments' (list) and 'tochka_acquiring_payment_create' (create).

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as 'tochka_acquiring_payments' or other payment-related tools. The description lacks context for selection.

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

tochka_acquiring_payment_captureB

Capture funds for two-stage acquiring payment.

Args: operation_id: Payment operation ID

ParametersJSON Schema
NameRequiredDescriptionDefault
operation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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

The description only says 'Capture funds', which implies mutation, but does not disclose side effects, idempotency, rate limits, or auth requirements. The annotation 'openWorldHint: true' hints at unknown behavior, but the description adds no additional behavioral context beyond the annotation.

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?

The description is extremely concise, consisting of a single sentence and an argument list with no wasted words. However, for a financial capture tool, it may be too terse, missing critical usage context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given it has an output schema, the description need not explain return values, but it lacks context about the two-stage flow, prerequisites, and typical usage. This is insufficient for an agent to correctly invoke the tool without additional domain knowledge.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description attempts to define 'operation_id: Payment operation ID', but this adds minimal value over the schema's title 'Operation Id'. It does not specify format, source, or constraints, leaving the agent without adequate guidance.

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 clearly states 'Capture funds for two-stage acquiring payment', using the specific verb 'capture' and resource 'funds', which distinguishes it from sibling tools like 'tochka_acquiring_payment_create' (create) and 'tochka_acquiring_payment_refund' (refund).

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?

The description implies usage in a two-stage process (capturing after authorization) but does not explicitly state when to use this tool vs. alternatives like 'tochka_acquiring_payment_create' or the prerequisites for the operation_id. The agent is left to infer the context.

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

tochka_acquiring_payment_createA

Create acquiring payment operation (payment link).

For payment with fiscal receipt, use tochka_acquiring_payment_with_receipt.

Args: customer_code: Customer code (9 chars, e.g. "100000001") amount: Payment amount (> 0) purpose: Payment purpose (1-140 chars) payment_mode: Allowed payment methods, e.g. ["sbp", "card"] redirect_url: Success redirect URL (optional) fail_redirect_url: Failure redirect URL (optional) save_card: Save card for future payments (optional) consumer_id: Consumer identifier (optional) merchant_id: Merchant identifier, 15 chars (optional) pre_authorization: Two-stage payment mode (optional) ttl: Link lifetime in minutes, 1-44640, default 10080 (optional) payment_link_id: Custom payment link ID, 1-45 chars (optional)

ParametersJSON Schema
NameRequiredDescriptionDefault
ttlNo
amountYes
purposeYes
save_cardNo
consumer_idNo
merchant_idNo
payment_modeYes
redirect_urlNo
customer_codeYes
payment_link_idNo
fail_redirect_urlNo
pre_authorizationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior2/5

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

Annotations only include openWorldHint, no destructiveHint. Description does not disclose mutation side effects, error behaviors, or prerequisites beyond parameters.

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?

Purpose stated concisely; parameter list is structured but somewhat verbose. Could be slightly tighter.

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?

Covers all parameters and alternative tool. Missing info on error handling, return value (though output schema exists), and idempotency. Reasonably complete for a complex tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so description fully explains each parameter with constraints (e.g., length, format, allowed values) adding significant value over 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?

Clear verb+resource: 'Create acquiring payment operation (payment link).' Explicitly distinguishes from sibling tool for payments with receipt.

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 states alternative tool for fiscal receipts: 'For payment with fiscal receipt, use tochka_acquiring_payment_with_receipt.'

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

tochka_acquiring_payment_refundA
Destructive

Refund an acquiring payment (only for APPROVED status).

Args: operation_id: Payment operation ID amount: Refund amount (must not exceed payment amount)

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYes
operation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

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

The destructiveHint annotation already marks this as state-modifying. The description adds valuable behavioral context: precondition (only APPROVED status) and a constraint (amount must not exceed payment amount). No contradictions with annotations.

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

Conciseness5/5

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

The description is extremely concise: two sentences with no extraneous words. The purpose is front-loaded, followed by parameter details, making it easy to parse.

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?

Given the tool's simplicity (two parameters, output schema exists), the description covers all necessary aspects: purpose, precondition, and parameter constraints. No gaps remain for an agent to invoke 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?

With 0% schema description coverage, the description fully compensates by defining both parameters: operation_id as the payment operation ID and amount as the refund amount with a constraint. This adds meaning beyond the bare schema titles.

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 clearly states the tool's function: refund an acquiring payment. It also specifies the status condition ('only for APPROVED status'), which distinguishes it from related tools like create or capture. The verb 'refund' and resource 'acquiring payment' are specific.

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 description implicitly provides usage context by requiring APPROVED status, but does not explicitly state when not to use this tool or mention alternatives. It is clear but lacks exclusions or comparative guidance.

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

tochka_acquiring_paymentsA
Read-only

Get list of acquiring payment operations.

Args: page: Page number (default 1) per_page: Results per page (default 1000) from_date: Start date filter YYYY-MM-DD (optional) to_date: End date filter YYYY-MM-DD (optional) status: Filter by status: CREATED, APPROVED, ON-REFUND, REFUNDED, EXPIRED (optional)

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo
statusNo
to_dateNo
per_pageNo
from_dateNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

Annotations already provide readOnlyHint=true, indicating a safe read operation. The description adds pagination and filtering details, which are useful but do not contradict annotations. No additional behavioral traits are disclosed beyond what the annotations imply.

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?

The description is concise and uses a clear 'Args:' format. It is front-loaded with the purpose and efficiently lists parameters. Minor improvement could be more natural language, but it is well-structured and not verbose.

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?

Given the complexity of 5 optional parameters and the presence of an output schema (so return values are not needed), the description covers all parameter meanings, defaults, formats, and allowed values. It is fully adequate for agent use.

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 0%, but the description provides detailed explanations for all parameters, including default values, date format (YYYY-MM-DD), and allowed status values. This compensates well for the lack of schema descriptions.

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 clearly states 'Get list of acquiring payment operations,' which is a specific verb and resource. It distinguishes from siblings like 'tochka_acquiring_payment' (single payment) and 'tochka_acquiring_payment_create' (create operation).

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?

The description lists parameters but does not explicitly guide on when to use this tool versus alternatives, nor does it mention when not to use it. However, the context of retrieving a list is clear.

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

tochka_acquiring_payment_with_receiptA

Create acquiring payment operation with fiscal receipt.

For payment without receipt, use tochka_acquiring_payment_create.

Args: customer_code: Customer code (9 chars, e.g. "100000001") amount: Payment amount (> 0) purpose: Payment purpose (1-140 chars) payment_mode: Allowed payment methods, e.g. ["sbp", "card"] client_email: Receipt recipient email items_json: JSON array of receipt items [{name, amount, quantity, vatType?, paymentMethod?, paymentObject?}] redirect_url: Success redirect URL (optional) fail_redirect_url: Failure redirect URL (optional) save_card: Save card for future payments (optional) consumer_id: Consumer identifier (optional) merchant_id: Merchant identifier, 15 chars (optional) pre_authorization: Two-stage payment mode (optional) ttl: Link lifetime in minutes, 1-44640, default 10080 (optional) payment_link_id: Custom payment link ID, 1-45 chars (optional) client_name: Receipt recipient name (optional) client_phone: Receipt recipient phone (optional) tax_system_code: Tax system: osn, usn_income, usn_income_outcome, esn, patent (optional)

ParametersJSON Schema
NameRequiredDescriptionDefault
ttlNo
amountYes
purposeYes
save_cardNo
items_jsonYes
client_nameNo
consumer_idNo
merchant_idNo
client_emailYes
client_phoneNo
payment_modeYes
redirect_urlNo
customer_codeYes
payment_link_idNo
tax_system_codeNo
fail_redirect_urlNo
pre_authorizationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

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

Annotations only have openWorldHint. Description adds parameter constraints (e.g., ttl range, customer_code format) but does not disclose behavioral traits like idempotency, error handling, or authentication requirements beyond the implied creation action.

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?

Structured with purpose, sibling reference, and an 'Args' section listing parameters. Concise given the number of parameters, though could optionally be more tabular.

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?

Covers all parameters and sibling distinction. Lacks description of output/return value and prerequisites (e.g., merchant existence), but overall adequate for a complex tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description fully compensates with detailed explanations for all 17 parameters, including formats, examples, and defaults.

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 clearly states 'Create acquiring payment operation with fiscal receipt' and explicitly distinguishes from the sibling 'tochka_acquiring_payment_create' for payments without receipt.

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?

Provides explicit alternative: 'For payment without receipt, use tochka_acquiring_payment_create.' Though other related tools exist, this single contrast is clear.

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

tochka_acquiring_registryA
Read-only

Get acquiring payment registry for a specific date.

Use tochka_acquiring_retailers to get valid merchant_id values.

Args: merchant_id: Merchant identifier registry_date: Registry date YYYY-MM-DD

ParametersJSON Schema
NameRequiredDescriptionDefault
merchant_idYes
registry_dateYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint=true (safe read) and openWorldHint=true (results may vary). The description adds the context that the registry is for a specific date, which is beyond what annotations provide. No contradictions. Even though it does not detail pagination or response structure, the presence of an output schema compensates for return value documentation.

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

Conciseness5/5

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

The description is three sentences long, front-loaded with the tool's purpose, and includes only essential information. Every sentence adds value: purpose, prerequisite, and parameter descriptions. No fluff or redundancy.

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?

Given the context signals (2 required parameters, output schema exists, sibling tools cover related functionality), the description is sufficiently complete. It explains the core operation and a critical dependency. The output schema likely documents the return structure, so no further elaboration is needed.

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?

The input schema has 0% description coverage, so the description carries the burden. It adds brief semantics for both parameters: 'merchant_id: Merchant identifier' and 'registry_date: Registry date YYYY-MM-DD'. The date format hint is valuable, but the descriptions are minimal and could elaborate on acceptable formats or constraints.

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 clearly states 'Get acquiring payment registry for a specific date' – a specific verb ('Get') and resource ('acquiring payment registry'). It distinguishes from sibling tools like 'tochka_acquiring_retailers' (retrieves merchant IDs) and 'tochka_acquiring_payments' (likely payments), making its unique purpose evident.

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 description explicitly directs the agent to use 'tochka_acquiring_retailers' to obtain valid merchant_id values, providing a clear prerequisite. It also specifies the date format (YYYY-MM-DD) in the Args section. However, it does not compare with other acquiring tools or describe scenarios where this tool should be avoided.

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

tochka_acquiring_retailersA
Read-only

Get list of acquiring retailers (merchant points).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, covering the safety profile. The description adds the clarification 'merchant points' but no additional behavioral traits beyond what annotations provide.

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

Conciseness5/5

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

Single sentence, 7 words, front-loaded with key information. Every word earns its place. No redundancy.

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?

Given zero parameters and an output schema (present but not shown), the description is complete. The tool's purpose is fully and simply communicated.

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?

No parameters exist; baseline score of 4 applies. Description does not need to add parameter info. The context of retrieving a list is clear from the description.

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?

Clear verb 'Get' and resource 'list of acquiring retailers (merchant points)'. Unambiguous and distinct from sibling tools that deal with payments, invoices, goods, etc.

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?

No explicit guidance on when to use this tool versus alternatives. However, as a simple list with no parameters, usage is intuitive. Lacks any exclusionary conditions or comparisons with siblings.

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

tochka_all_balancesA
Read-only

Get balances for all accounts at once.

For a single account's balance, use tochka_balance.

Returns JSON array of balances across all accessible accounts.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, indicating safe read operation with no side effects. The description adds that it returns a JSON array of balances, but does not disclose additional behavioral traits beyond what annotations provide. It does not contradict annotations.

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

Conciseness5/5

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

The description is three sentences long, with no wasted words. It front-loads the core purpose, then gives usage guidance, then specifies the return format.

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?

Given zero parameters, annotations that cover safety, and an output schema that likely documents the return structure, the description provides sufficient context: what the tool does, when to use the alternative, and the nature of the response (JSON array of balances).

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?

There are zero parameters (schema coverage 100%), so baseline is 4. The description does not need to add parameter information, and it does not miss any opportunity to clarify usage.

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 clearly states 'Get balances for all accounts at once' with a specific verb (Get) and resource (balances for all accounts). It also explicitly distinguishes from the sibling tool tochka_balance, which is for a single account.

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?

The description explicitly says 'For a single account's balance, use tochka_balance', providing a clear alternative and guidance on when to use this tool versus its sibling.

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

tochka_balanceA
Read-only

Get bank account balance from Tochka Bank.

For all accounts at once, use tochka_all_balances.

Returns JSON with accountId, customerCode, currency, and balances (OpeningAvailable, ClosingAvailable, Expected).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

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

Annotations declare readOnlyHint=true, matching the read operation. Description discloses return structure with field names, adding value beyond annotations. No contradictions.

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

Conciseness5/5

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

Two sentences and a bullet list – every word earns its place. Front-loaded with purpose, no fluff.

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?

Simple tool with no parameters and annotations. Description covers purpose, alternative usage, and return structure adequately.

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?

No parameters; schema coverage 100%. Description explains return fields, adding value. Baseline for 0 params is 4.

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?

Description states 'Get bank account balance from Tochka Bank' – specific verb and resource. Also distinguishes from sibling 'tochka_all_balances', which gets all accounts.

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?

Explicitly suggests using 'tochka_all_balances' for all accounts, providing clear when-to-use guidance. No exclusion or prerequisite info, but adequate given simplicity.

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

tochka_card_transactionsA
Read-only

Get authorized card transactions for account.

Args: account_id: Account ID. Uses first account if empty.

ParametersJSON Schema
NameRequiredDescriptionDefault
account_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds the account default behavior but does not disclose pagination, limits, or error handling.

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?

The description is brief and front-loaded with the action, but the 'Args:' section is somewhat redundant given the schema. No wasted words.

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?

Given an output schema exists and the tool is simple (1 optional param), the description sufficiently covers usage without needing to detail return values.

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?

With 0% schema description coverage, the description explains the single parameter's purpose and default, which is adequate but lacks format or constraints beyond 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?

The description clearly states the verb 'Get' and the resource 'authorized card transactions for account', which distinguishes it from siblings like 'tochka_acquiring_payments' or 'tochka_statements_list'.

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?

The description provides a default behavior hint ('Uses first account if empty') but gives no guidance on when to use this tool versus alternatives among the many siblings.

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

tochka_check_invoicesA

Check all pending invoices for payment. Automatically removes paid ones from tracking.

Two strategies:

  • With document_id: uses Tochka payment-status API (fast, exact)

  • Without document_id: searches bank statement by buyer INN + amount (fallback)

Fallback match criteria (all must be true):

  • Incoming (Credit) transaction

  • Debtor INN matches buyer_inn

  • Transaction date >= invoice created_at

  • abs(transaction amount - invoice amount) <= 1 ruble

Args: days: Statement depth in days for fallback (default 30)

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior4/5

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

Description discloses that the tool 'automatically removes paid ones from tracking,' which is a behavioral trait beyond the 'openWorldHint' annotation. It also explains fallback matching criteria in detail, adding useful context.

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?

Description is well-structured with bullet points and front-loaded main purpose. Slightly verbose but efficient, no wasted sentences.

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?

Given the tool's complexity (two strategies, auto-removal, fallback criteria) and the existence of an output schema for return values, the description is complete and covers all essential behavioral aspects.

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?

Only one parameter 'days' with default 30. The input schema has no description, but the description explains it as 'Statement depth in days for fallback (default 30),' which adds necessary meaning.

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?

Description clearly states the tool checks pending invoices for payment and automatically removes paid ones. It distinguishes between two strategies (with/without document_id), which differentiates it from sibling tools like 'tochka_pending_invoices' or 'tochka_track_invoice'.

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?

Provides explicit guidance on when to use each strategy (with/without document_id) and fallback criteria. However, it does not explicitly state when not to use this tool versus alternatives, but the context is clear enough.

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

tochka_consentsA
Read-only

Get list of all API consents (permissions).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true. Description adds no further behavioral context beyond a basic listing. No contradiction, but minimal added value.

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

Conciseness5/5

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

Single sentence, no wasted words, front-loaded with purpose. Highly concise.

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 parameters and an output schema present, the description is adequate. It could mention that the tool returns a list, but the output schema covers return structure.

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?

No parameters exist and schema description coverage is 100%. Description adds no parameter info, but none is needed. Baseline score is 4 due to zero parameters.

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?

Description clearly states verb 'Get list of' and resource 'API consents (permissions)'. Distinguishes from sibling tools like 'tochka_consent' (singular) and 'tochka_consent_create'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives such as 'tochka_consent' for a single consent or 'tochka_consent_create' for creating one. Unclear context for selection.

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

tochka_customerA
Read-only

Get detailed customer information.

Use tochka_customers to list all available customer codes.

Args: customer_code: Customer identifier (e.g. "100000001")

ParametersJSON Schema
NameRequiredDescriptionDefault
customer_codeYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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, so description adds minimal extra behavioral context. No contradiction, but no additional details about behavior beyond what annotations imply.

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

Conciseness5/5

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

Extremely concise: two sentences plus argument line. Front-loaded with purpose, no redundant information.

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 simple single-customer lookup tool with one required parameter and an output schema, the description is complete: it states the purpose, directs to sibling for listing, and documents the parameter.

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 has 0% description coverage for properties, but the description compensates by documenting the parameter with name 'customer_code', type, and an example value, adding meaning beyond the schema title.

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 clearly states the verb 'get' and resource 'detailed customer information', and distinguishes from sibling 'tochka_customers' by directing the user to use that for listing codes.

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?

Explicitly mentions alternative tool 'tochka_customers' for listing codes, providing clear usage context. Does not explicitly state when not to use, but the purpose is clear.

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

tochka_customersA
Read-only

Get list of all accessible customers (organizations).

For details on a specific customer, use tochka_customer.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already provide readOnlyHint and openWorldHint, so description adds minimal behavioral info. It does mention 'accessible' which implies permission context.

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

Conciseness5/5

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

Two sentences, no wasted words, front-loaded with purpose.

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?

Output schema exists, so return values are covered. Description explains the tool's purpose and relationship to sibling. Complete for a list-only tool.

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?

No parameters, baseline 4. Description does not need to add parameter info.

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?

Description clearly states it gets a list of accessible customers (organizations) and distinguishes from sibling tool 'tochka_customer' which provides details on a specific customer.

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 says when to use this tool (get list) and when to use alternative ('tochka_customer' for details).

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

tochka_delete_closing_documentA
Destructive

Delete a closing document (UPD/Act) by document ID.

Args: document_id: Closing document UUID from tochka_upd result

ParametersJSON Schema
NameRequiredDescriptionDefault
document_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

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

The description mentions the source of the document_id (from tochka_upd result), adding context beyond the destructiveHint annotation. However, it does not disclose permanence, side effects, or error handling. With annotations already indicating destructiveness, this is adequate but not enriched.

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?

The description is concise, with one sentence for the action and an argument list. It front-loads the action clearly. The argument format (Args:) is non-standard but still efficient. Minimal waste, though could be slightly more structured.

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?

For a deletion tool with an output schema (not shown), the description covers the input sufficiently but omits return value or error handling (e.g., what happens if document_id is invalid). The provenance hint partially compensates for lack of broader context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage, so the description fully compensates by explaining the document_id parameter as a 'Closing document UUID from tochka_upd result'. This tells the agent both the type (UUID) and the source, which is highly valuable for correct invocation.

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 clearly states the tool deletes a closing document (UPD/Act) by document ID, specifying the verb 'delete' and the resource 'closing document'. It distinguishes from sibling delete tools like tochka_delete_invoice by explicitly naming the document type.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives (e.g., when to delete an invoice vs. a closing document). No mention of prerequisites or conditions under which deletion is appropriate.

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

tochka_delete_invoiceA
Destructive

Delete an invoice by document ID.

Args: document_id: Invoice UUID from tochka_invoice result

ParametersJSON Schema
NameRequiredDescriptionDefault
document_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

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

The annotations include 'destructiveHint: true', which already signals destruction. The description's 'Delete' adds no further behavioral details such as irreversibility, authorization needs, or side effects. With annotations present, the description does not enhance transparency beyond the verb.

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

Conciseness5/5

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

The description is concise with only two sentences, front-loading the purpose and parameter hint. No extraneous words; every sentence adds value.

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 simple delete tool with one parameter, the description covers purpose and parameter origin. Annotations cover destructiveness, and an output schema exists (though not shown). No critical gaps; a user might want a note on what happens after deletion (e.g., whether it's soft or hard), but the annotations mitigate this.

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?

The description explains that 'document_id' is an 'Invoice UUID from tochka_invoice result', which adds meaningful context beyond the schema's simple type string. This helps the agent understand the source and format of the required parameter.

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 clearly states 'Delete an invoice by document ID' which specifies the verb (delete) and resource (invoice) with a specific identifier. It distinguishes from sibling tools like 'tochka_delete_closing_document' by targeting invoices.

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

Usage Guidelines2/5

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

No guidance is provided on when to delete an invoice versus alternatives like 'tochka_untrack_invoice' or 'tochka_send_invoice_email'. The description lacks context for selecting this tool over others.

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

tochka_download_closing_documentA

Download closing document PDF to local file.

Args: document_id: Closing document UUID from tochka_upd result output_path: Absolute path to save PDF (e.g. /tmp/upd_42.pdf)

ParametersJSON Schema
NameRequiredDescriptionDefault
document_idYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

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

The description is straightforward for a download function but does not disclose any additional behavioral traits such as file overwrite behavior or required permissions. Annotations only contain openWorldHint, which is not contradicted.

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

Conciseness5/5

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

The description is extremely concise with no wasted words. The one-line summary is front-loaded, followed by clear parameter descriptions.

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 simple file download tool with an output schema, the description is sufficiently complete. It could mention potential errors or return values, but the output schema likely covers that.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, so the description adds essential meaning: document_id is the UUID from 'tochka_upd result' and output_path is an absolute path with an example. This fully compensates for the schema's lack of detail.

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 clearly states 'Download closing document PDF to local file' with a specific verb and resource. It distinguishes from sibling tools like delete and send email.

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?

The description implies usage by specifying document_id from 'tochka_upd result', indicating a prerequisite. However, it does not explicitly state when to use this tool versus alternatives like deleting or emailing the document.

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

tochka_download_invoiceA

Download invoice PDF to local file.

Args: document_id: Invoice UUID from tochka_invoice result output_path: Absolute path to save PDF (e.g. /tmp/invoice_42.pdf)

ParametersJSON Schema
NameRequiredDescriptionDefault
document_idYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

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

The description indicates a read operation (download) with no destructive side effects, which is consistent with the openWorldHint annotation. However, it does not disclose potential limitations like file size, rewrite behavior, or network dependencies, leaving some behavioral gaps.

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

Conciseness5/5

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

Two sentences plus parameter lines cover everything needed. No wasted words, front-loaded with the primary action, and well-structured for quick comprehension.

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?

Given the simplicity of the tool (2 parameters, no nested objects), the description covers purpose, parameter semantics, and expected output. With an output schema available, returning to the agent is already structured, so no additional explanation is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With schema description coverage at 0%, the description provides crucial meaning: document_id is an invoice UUID from a specific source and output_path is an absolute file path. This fully compensates for the lack of schema descriptions.

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 clearly states the tool downloads an invoice PDF to a local file. It distinguishes from siblings like 'tochka_delete_invoice' and 'tochka_send_invoice_email' by focusing on the download action.

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?

The description implies usage when you need a local PDF copy of an invoice and have a document_id from tochka_invoice. However, it does not explicitly state when to use this tool over alternatives, nor does it provide exclusions or when-not-to-use scenarios.

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

tochka_incomingA
Read-only

Get incoming (Credit) bank transactions for a month, grouped by debtor INN.

Useful for tax reports (AUSN vzaimozachet) — shows how much was received from each counterparty in a given month.

Args: month: Month number (1-12) year: Year (e.g. 2026) inn: Optional debtor INN filter (e.g. "6316049606") description: Optional substring filter for payment description (case-insensitive, e.g. "РОБОКАССА")

ParametersJSON Schema
NameRequiredDescriptionDefault
innNo
yearYes
monthYes
descriptionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the description does not need to restate that. The description adds grouping behavior and credit nature, but no additional behavioral traits beyond what annotations imply. It is consistent with annotations.

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?

The description is concise: two sentences plus a bullet-like list of args. No wasted words. It could be slightly more structured (e.g., adding a return note), but it's efficient for the information needed.

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?

Given the tool has an output schema, the description doesn't need to detail return values. It adequately covers the input parameters, grouping behavior, and use case. It is complete for the intended purpose, though it could mention the grouping more prominently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must fully explain parameters. It does so clearly: month (1-12), year (e.g., 2026), inn (optional filter with example), description (optional substring filter case-insensitive). The examples and type info add significant value beyond the schema's basic type/default.

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 clearly states the tool retrieves incoming (Credit) bank transactions grouped by debtor INN for a given month, with a specific use case for tax reports. This distinguishes it from sibling tools like 'tochka_card_transactions', 'tochka_statements_list', etc.

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 description provides a clear use case ('useful for tax reports') and indicates the tool filters by month/year and optionally by INN/description. However, it does not explicitly mention when not to use it or compare to alternatives, though the context is adequate.

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

tochka_invoiceB

Issue an invoice to a buyer (they pay me). Returns documentId.

Args: buyer_name: Buyer company name buyer_inn: Buyer INN buyer_type: "company" or "ip" number: Invoice number positions: JSON array of positions, each with positionName, unitCode, ndsKind, price, quantity, totalAmount buyer_kpp: Buyer KPP (optional) buyer_address: Buyer legal address (optional) total: Total amount (calculated from positions if empty) nds_total: Total VAT amount (optional) based_on: Basis document (optional) comment: Comment (optional) pay_until_date: Payment deadline YYYY-MM-DD (optional)

ParametersJSON Schema
NameRequiredDescriptionDefault
totalNo
numberYes
commentNo
based_onNo
buyer_innYes
buyer_kppNo
nds_totalNo
positionsYes
buyer_nameYes
buyer_typeYes
buyer_addressNo
pay_until_dateNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

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

The description lacks disclosure of behavioral traits. Annotation 'openWorldHint': true suggests non-standard behavior, but no details are given about side effects, authorization requirements, rate limits, or idempotency. The tool issues an invoice (a write operation), but nothing addresses these aspects.

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?

The description is structured with an Args list, which is clear, but it is somewhat lengthy (16 lines for parameters). Some information (e.g., 'optional' labels) is redundant with the schema's 'required' list. The first sentence is concise and front-loaded, but the parameter documentation could be more terse.

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?

Given the tool's complexity (12 parameters, 5 required), the description covers the input sufficiently but omits details on return value (beyond 'Returns documentId'), error behavior, and validation rules. With an output schema existing, it is not required to explain return values, but the description does not leverage it. It is adequate but not fully comprehensive.

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?

Despite 0% schema description coverage, the description adds significant meaning: it explains each parameter's role (e.g., 'Buyer company name', 'Total amount (calculated from positions if empty)', 'JSON array of positions...'). It also notes that 'total' can be auto-calculated. However, 'positions' is described as a JSON array but schema types it as string, causing potential confusion. Overall, it compensates well for the lack of schema descriptions.

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 clearly states 'Issue an invoice to a buyer (they pay me). Returns documentId.' This provides a specific verb ('Issue') and resource ('invoice to a buyer'), and the parenthetical clarifies directionality. It distinguishes from sibling tools like 'tochka_pending_invoices' (list) and 'tochka_delete_invoice' (delete).

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool vs alternatives. The description does not mention any prerequisites, exclusions, or comparison to related tools such as 'tochka_send_invoice_email' or 'tochka_download_invoice'. The agent must infer usage from context.

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

tochka_paymentA

Create outgoing payment order (I pay someone). Returns signing URL.

The payment must be signed in Tochka internet bank to be processed.

Args: counterparty_name: Recipient company name counterparty_inn: Recipient INN (10-12 digits) counterparty_bic: Recipient bank BIC (9 digits) counterparty_account: Recipient account number (20 digits) counterparty_corr_account: Recipient bank correspondent account (20 digits) amount: Payment amount in rubles purpose: Payment purpose (max 210 chars) counterparty_kpp: Recipient KPP (optional, 9 digits)

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYes
purposeYes
counterparty_bicYes
counterparty_innYes
counterparty_kppNo
counterparty_nameYes
counterparty_accountYes
counterparty_corr_accountYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

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

Annotations only include openWorldHint: true, indicating possible side effects. The description adds that the operation creates a payment and returns a signing URL, which clarifies the two-step nature. No contradictions.

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

Conciseness5/5

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

The description is concise and well-structured: a one-line purpose, a behavioral note, and a parameter list with constraints. Every sentence adds value with no redundancy.

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?

Although the output schema exists and is not described, the description covers the purpose, signing requirement, and all parameter constraints. It lacks error handling or prerequisite info, but is sufficient for a competent agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description compensates fully by listing all parameters with clear constraints (e.g., '10-12 digits' for INN, '9 digits' for BIC), adding significant meaning beyond the schema titles.

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 clearly states 'Create outgoing payment order (I pay someone). Returns signing URL.' This uses a specific verb-resource pair and distinguishes the tool from siblings like tochka_acquiring_payment_create, which handles incoming payments.

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 description mentions that 'The payment must be signed in Tochka internet bank to be processed,' providing a key usage guidance. However, it does not explicitly contrast with sibling tools or state when not to use it.

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

tochka_payments_for_signA
Read-only

Get list of payment orders created for signing.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

The description is consistent with the readOnlyHint annotation, indicating a safe read operation. It adds no additional behavioral details beyond the annotations, which already cover the key traits.

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

Conciseness5/5

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

The description is a single concise sentence that is front-loaded and contains no unnecessary words.

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 simple list tool with an output schema, the description provides adequate context. However, it could be more complete by explaining the concept of 'for signing' relative to other payment operations.

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?

There are no parameters, so the description does not need to add parameter meaning. schema_description_coverage is 100%, meeting the baseline for zero-parameter tools.

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 description clearly states the verb 'Get list' and resource 'payment orders created for signing', distinguishing it from sibling tools like 'tochka_payment' which deals with individual payments. However, it does not explicitly differentiate from similar list tools.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. Given the large number of sibling tools, usage context would help an AI agent decide appropriately.

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

tochka_pending_invoicesA
Read-only

List all invoices being tracked for payment.

Use tochka_check_invoices to verify payment status.

Returns JSON array of pending invoices with number, buyer_inn, buyer_name, amount, description, created_at.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the agent knows it's safe. The description adds behavioral context by specifying the return format (JSON array with fields: number, buyer_inn, buyer_name, amount, description, created_at), which goes beyond annotations.

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

Conciseness5/5

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

The description is concise with four short sentences. It front-loads the main purpose, adds a usage tip, and describes output. Every sentence adds value; no wasted words.

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?

Despite no parameters, the description is complete. An output schema exists, and the description lists the returned fields. The tool's behavior is fully conveyed for a simple list operation.

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?

No parameters exist, so schema coverage is 100% by default. The description adds no parameter details, but with zero parameters, the baseline is 4. It does not need to compensate for missing schema info.

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 clearly states the tool lists invoices being tracked for payment. The verb 'list' and resource 'invoices being tracked for payment' are specific. It distinguishes from sibling 'tochka_check_invoices' which verifies payment status.

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 description explicitly recommends using 'tochka_check_invoices' for verifying payment status, providing guidance on when to use alternative tools. No exclusions are mentioned but the context is clear.

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

tochka_send_closing_document_emailB

Send closing document to specified email address.

Args: document_id: Closing document UUID from tochka_upd result email: Recipient email address

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYes
document_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

Annotations only include openWorldHint, signaling unknown side effects. The description does not elaborate on behavioral traits such as whether sending consumes the document, requires authentication, or has rate limits. It adds minimal context beyond the argument source.

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?

The description is very concise: one sentence plus two bullet-like argument explanations. It is front-loaded with the purpose. No wasted words, but could be more structured (e.g., separate sections for usage).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the openWorldHint and the existence of an output schema, the description could be more complete. It does not explain the output, potential side effects, or prerequisites (e.g., must have a valid document). The agent may need to infer behavior from the tool name and siblings.

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?

With schema description coverage at 0%, the description adds meaning: 'Closing document UUID from tochka_upd result' and 'Recipient email address'. This provides sourcing context but lacks validation rules or examples. Baseline is adequate but not rich.

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 clearly states 'Send closing document to specified email address', which is a specific verb (send) and resource (closing document). This distinguishes it from sibling tools like tochka_send_invoice_email (for invoices) and tochka_download_closing_document (download vs send).

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. The description hints that document_id comes from tochka_upd result, but does not explain when to prefer this over sending an invoice email or other actions. No exclusions or context provided.

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

tochka_send_invoice_emailB

Send invoice to specified email address.

Args: document_id: Invoice UUID from tochka_invoice result email: Recipient email address

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYes
document_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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

The description implies a side effect (sending an email) but does not disclose idempotency, state changes, or authentication requirements. Annotations only provide openWorldHint, which adds no behavioral context.

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

Conciseness5/5

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

The description is concise, front-loaded with the purpose, and structured with clear parameter documentation. No unnecessary words.

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?

Adequate for a simple tool, but lacks information on response handling, error cases, or success confirmation. With an output schema existing, more context on behavior would be beneficial.

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?

Both parameters are explained with meaningful descriptions beyond the schema: document_id is 'Invoice UUID from tochka_invoice result' and email is 'Recipient email address'. This compensates for the 0% schema coverage.

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 description clearly states the primary action 'Send invoice to specified email address'. This is specific to invoices, distinguishing it from sibling tools like tohka_send_closing_document_email.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. No prerequisites or context provided, such as the need for an existing invoice or user permissions.

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

tochka_statements_listB
Read-only

Get list of recent statements.

Args: limit: Maximum number of statements (default 5)

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already indicate readOnlyHint and openWorldHint. The description adds no additional behavior (e.g., pagination, ordering, recency definition). Minimal value beyond annotations.

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

Conciseness5/5

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

Extremely concise: two lines with purpose immediately stated. No unnecessary words.

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?

Adequate for a simple list with one parameter and an output schema, but lacks explanation of what 'statements' are, date range, or sorting. Could be more helpful.

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?

Description adds 'Maximum' to clarify limit meaning, and mentions default value. With 0% schema description coverage, this partially compensates, but is brief.

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?

Clearly states 'Get list of recent statements', identifying the action and resource. However, does not specify what kind of statements, but distinguishes from siblings since no other 'statement' tool exists.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives (e.g., invoices, transactions). No context on prerequisites or filtering options.

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

tochka_subscription_chargeB

Charge a subscription (recurring payment debit).

Args: operation_id: Subscription operation ID amount: Charge amount

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYes
operation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

The description mentions 'recurring payment debit' but does not disclose side effects, required permissions, or consequences. With 'openWorldHint' annotation, the tool may have unstated behaviors, but the description adds no clarification. The minimal text fails to inform the agent of what happens beyond the obvious.

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?

The description is concise (two lines of purpose and a short argument list). It is front-loaded with the main action. However, it could be slightly more structured (e.g., using bulleted lists for clarity). Still, it achieves conciseness without being terse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a financial operation and the presence of an output schema (not shown), the description lacks details about return values, error cases, or side effects. The 'openWorldHint' annotation further suggests missing context, but the description does not fill the gaps. This is incomplete for safe agent usage.

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?

The input schema has 0% description coverage, so the description's 'Subscription operation ID' and 'Charge amount' provide basic semantics beyond the schema titles. However, the descriptions are minimal and do not specify formats, constraints, or how the amount is applied (e.g., currency, precision). This is barely adequate.

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 explicitly states 'Charge a subscription (recurring payment debit).' The verb 'charge' and the resource 'subscription' are clear, and it distinguishes from sibling tools like 'tochka_subscription_create' or 'tochka_subscription_status' which have different actions. The purpose is unambiguous.

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

Usage Guidelines2/5

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

The description only says 'Charge a subscription' with no guidance on when to use this tool versus siblings like 'tochka_subscription_with_receipt' or other subscription tools. No context about prerequisites or cases where it should not be used is provided.

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

tochka_subscription_createA

Create recurring payment subscription.

For subscription with fiscal receipt, use tochka_subscription_with_receipt.

Args: customer_code: Customer code (9 chars, e.g. "100000001") amount: Subscription amount (> 0) purpose: Subscription purpose (1-140 chars) redirect_url: Success redirect URL (optional) fail_redirect_url: Failure redirect URL (optional) save_card: Save card for future payments (optional) consumer_id: Consumer identifier (optional) merchant_id: Merchant identifier (optional) recurring: Enable recurring charges (optional) payment_link_id: Custom payment link ID, 1-45 chars (optional)

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYes
purposeYes
recurringNo
save_cardNo
consumer_idNo
merchant_idNo
redirect_urlNo
customer_codeYes
payment_link_idNo
fail_redirect_urlNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior2/5

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

Beyond the `openWorldHint` annotation, the description only states it creates a recurring subscription. No mention of side effects, authentication needs, rate limits, or what happens on success/failure. An incomplete behavioral picture for a write operation.

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

Conciseness5/5

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

Extremely concise: a one-sentence purpose, sibling link, then a clean bullet list of parameters. No wasted words, logically structured.

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?

The description covers the tool's purpose and all parameters. With an output schema (not shown) available, lack of return value explanation is acceptable. However, a brief example or note on success behavior would enhance completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description fully compensates by providing clear explanations and constraints for all 10 parameters (e.g., '9 chars', '> 0', '1-140 chars', optionality). Every parameter is addressed.

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?

Clear verb+resource: 'Create recurring payment subscription.' Distinguishes from sibling `tochka_subscription_with_receipt` by mentioning the fiscal receipt alternative.

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?

Explicitly says when to use sibling tool (`tochka_subscription_with_receipt`). Provides parameter constraints (e.g., '9 chars', '> 0', '1-140 chars') but lacks broader usage context like prerequisites or conditions.

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

tochka_subscriptionsA
Read-only

Get list of payment subscriptions.

Args: page: Page number (default 1) per_page: Results per page (default 1000)

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo
per_pageNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the description adds no additional behavioral context. It correctly describes a read operation, but doesn't disclose anything beyond what annotations provide.

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

Conciseness5/5

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

The description is extremely concise: one line for purpose and a brief parameter list. No unnecessary words. Front-loaded with the main action.

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?

Given the tool's simplicity (two optional params, output schema present), the description is adequate. It covers pagination context. Missing details about sorting or return format, but output schema likely fills gaps.

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?

Input schema has 0% description coverage, but the tool description's Args block adds clear explanations for page and per_page (e.g., 'Page number', 'Results per page'). This adds value beyond the schema's bare defaults.

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 'Get list of payment subscriptions' clearly states the verb (Get list) and resource (payment subscriptions). It distinguishes from sibling tools like create, charge, status, etc.

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?

No explicit when-to-use or alternatives are provided. While the tool name and description indicate it lists subscriptions, it does not differentiate from other list tools like tochka_acquiring_payments or tochka_pending_invoices.

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

tochka_subscription_statusA
Read-only

Get subscription status.

Args: operation_id: Subscription operation ID

ParametersJSON Schema
NameRequiredDescriptionDefault
operation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

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

Annotations provide readOnlyHint (true) and openWorldHint (true), which align with 'Get'. The description adds no behavioral details beyond what annotations imply, which is acceptable but minimal.

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

Conciseness5/5

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

Extremely concise and front-loaded. Two sentences with no unnecessary words. Every sentence serves a purpose.

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 simple tool with one required parameter and an output schema, the description is sufficient but could mention that it returns status information. However, the output schema likely covers that.

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 0%, but the description adds 'Subscription operation ID' to the parameter, providing meaning beyond the schema's 'Operation Id' title. This clarifies the parameter's purpose.

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 clearly states 'Get subscription status', which is a specific verb ('Get') and resource ('subscription status'). It distinguishes from sibling tools like 'tochka_subscriptions' (likely list) and 'tochka_subscription_status_set' (set status).

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives (e.g., 'tochka_subscriptions' for listing all subscriptions). No mention of prerequisites or exclusions.

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

tochka_subscription_status_setB

Set subscription status (cancel subscription).

Args: operation_id: Subscription operation ID status: New status (only "Cancelled" is allowed)

ParametersJSON Schema
NameRequiredDescriptionDefault
statusYes
operation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior3/5

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

The description indicates a mutation ('set status', 'cancel'), consistent with the annotation `openWorldHint: true`. However, it does not disclose side effects (e.g., whether cancellation triggers notifications, refunds, or is reversible), which would be valuable given the open world hint.

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?

The description is concise at two sentences, front-loading the purpose. It could be slightly more structured (e.g., using bullet points for arguments), but it efficiently conveys the key information without unnecessary words.

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?

Given the tool is part of a subscription management suite and has a sibling 'tochka_subscription_status' (likely for reading), the description covers the basic action and required parameters. However, it lacks prerequisites, return value details (output schema exists but not described), and behavioral context for a mutation with side effects.

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 0%, so the description bears full burden. It explains `operation_id` as 'Subscription operation ID' and notes `status` only allows 'Cancelled'. While helpful, it adds minimal meaning beyond the schema's `const` constraint. For a low-coverage scenario, this is adequate but not rich.

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 description clearly states the tool sets subscription status and explicitly notes it cancels the subscription. The verb 'Set' and resource 'subscription status' are clear, but it could more explicitly differentiate from sibling tools like 'tochka_subscription_status' (read-only) or 'tochka_subscription_charge'.

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?

The description implies usage for cancellation but does not provide explicit guidance on when to use this tool vs alternatives like 'tochka_subscription_create' or 'tochka_subscription_charge'. It assumes the agent knows the subscription lifecycle, leaving the condition (e.g., subscription must be active) unstated.

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

tochka_subscription_with_receiptA

Create subscription with fiscal receipt.

For subscription without receipt, use tochka_subscription_create.

Args: customer_code: Customer code (9 chars, e.g. "100000001") amount: Subscription amount (> 0) purpose: Subscription purpose (1-140 chars) client_email: Receipt recipient email items_json: JSON array of receipt items [{name, amount, quantity, vatType?, paymentMethod?, paymentObject?}] redirect_url: Success redirect URL (optional) fail_redirect_url: Failure redirect URL (optional) save_card: Save card for future payments (optional) consumer_id: Consumer identifier (optional) merchant_id: Merchant identifier (optional) recurring: Enable recurring charges (optional) payment_link_id: Custom payment link ID, 1-45 chars (optional) client_name: Receipt recipient name (optional) client_phone: Receipt recipient phone (optional) tax_system_code: Tax system: osn, usn_income, usn_income_outcome, esn, patent (optional)

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYes
purposeYes
recurringNo
save_cardNo
items_jsonYes
client_nameNo
consumer_idNo
merchant_idNo
client_emailYes
client_phoneNo
redirect_urlNo
customer_codeYes
payment_link_idNo
tax_system_codeNo
fail_redirect_urlNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior2/5

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

Annotations only include openWorldHint: true, meaning the tool may have dynamic behavior, but the description does not disclose any behavioral traits beyond basic operation. No mention of side effects, permissions, rate limits, or error states. The description offers minimal transparency beyond stating it creates a subscription.

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

Conciseness5/5

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

The description is concise and well-structured: an opening sentence stating name and distinction, then a bullet-style list of parameters with constraints. Every item provides necessary information without redundancy.

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?

Given the complexity (15 parameters, 5 required, no schema descriptions), the description covers parameters thoroughly. It mentions redirect_url and fail_redirect_url, hinting at success/failure behavior. It does not explain the output, but an output schema exists, so that's acceptable. Some further context about the overall flow (e.g., payment link generation) would enhance completeness, but it is largely adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% coverage, so the description carries the full burden of explaining parameters. It adds valuable constraints for each parameter, such as length limits for customer_code and purpose, positive amount, and optional fields with enums like tax_system_code. This greatly aids correct invocation.

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 clearly states the tool creates a subscription with a fiscal receipt, and explicitly distinguishes from the sibling tool 'tochka_subscription_create' for subscriptions without receipts. The verb 'create' and resource 'subscription with receipt' are specific.

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?

Explicitly tells when to use this tool (subscription with receipt) vs. alternative (tochka_subscription_create for without receipt). Does not provide broader usage context like prerequisites or when not to use, but the sibling reference is strong guidance.

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

tochka_track_invoiceA

Start tracking an invoice for payment. Persists across sessions.

Use tochka_pending_invoices to list tracked invoices, tochka_check_invoices to check payments.

Args: number: Invoice number (e.g. "140") buyer_inn: Buyer INN (who should pay) buyer_name: Buyer company name amount: Expected payment amount (e.g. "5290.00") description: Invoice description (e.g. "Счёт №140 от 2026-04-10") document_id: Tochka documentId UUID (optional, for invoices created via tochka_invoice)

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYes
numberYes
buyer_innYes
buyer_nameYes
descriptionYes
document_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior3/5

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

The description mentions persistence ('Persists across sessions') but does not disclose other behavioral traits like idempotency, error conditions, or side effects. With no annotations, more behavioral detail would improve transparency.

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

Conciseness5/5

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

The description is concise: a brief statement of purpose, a sentence on persistence, guidance on related tools, and clear parameter list. No unnecessary words.

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?

Given the tool's complexity (6 parameters, 5 required) and presence of an output schema, the description is fairly complete. It explains purpose, persistence, parameter meanings, and links to related tools. Minor gaps: no mention of prerequisites or return behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 0% schema description coverage, the description adds substantial meaning to each parameter with examples (e.g., 'number: Invoice number (e.g. "140")') and clear explanations (e.g., 'buyer_inn: Buyer INN (who should pay)').

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 clearly states the tool's purpose: 'Start tracking an invoice for payment.' It distinguishes itself from siblings like 'tochka_pending_invoices' (list tracked) and 'tochka_check_invoices' (check payments).

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 description provides guidance on when to use this tool vs. siblings: 'Use tochka_pending_invoices to list tracked invoices, tochka_check_invoices to check payments.' However, it does not cover all alternatives or when not to use this tool.

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

tochka_untrack_invoiceA
Destructive

Stop tracking an invoice by its number.

Args: number: Invoice number (from tochka_track_invoice or tochka_pending_invoices)

ParametersJSON Schema
NameRequiredDescriptionDefault
numberYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already include destructiveHint: true, indicating modification. Description adds no extra behavioral details (e.g., irreversibility, side effects). With annotation cover, this is adequate but not enhanced.

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

Conciseness5/5

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

Extremely concise, two sentences only. No filler, front-loaded with core purpose.

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?

Tool is simple with one parameter and output schema exists. Description covers essential usage but could mention reversibility or what happens to the invoice after untracking. Still, sufficient for a straightforward undo action.

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 has 0% coverage; description compensates by explaining that 'number' is the invoice number from specific sources, adding meaningful context beyond the schema's type definition.

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?

Clearly states 'Stop tracking an invoice by its number' – verb and resource are specific. Distinguishes from sibling tools like tochka_track_invoice and tochka_delete_invoice.

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?

Provides source for the invoice number (from tochka_track_invoice or tochka_pending_invoices), guiding the agent on where to obtain it. Does not explicitly exclude alternative scenarios, but the context is sufficient for a simple untrack operation.

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

tochka_updA

Create UPD (universal transfer document). Returns documentId and signURL.

function defaults to "schfdop" (invoice + primary document).

Args: buyer_name: Buyer company name buyer_inn: Buyer INN buyer_type: "company" or "ip" number: UPD number positions: JSON array of positions (same format as invoice) buyer_kpp: Buyer KPP (optional) buyer_address: Buyer legal address (optional) total: Total amount (calculated from positions if empty) nds_total: Total VAT amount (optional) based_on: Basis document (optional) parent_document_id: Parent invoice UUID (optional, links UPD to invoice) function: "schfdop" (invoice + primary) or "dop" (primary only)

ParametersJSON Schema
NameRequiredDescriptionDefault
totalNo
numberYes
based_onNo
functionNoschfdop
buyer_innYes
buyer_kppNo
nds_totalNo
positionsYes
buyer_nameYes
buyer_typeYes
buyer_addressNo
parent_document_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

Annotations only include openWorldHint: true. The description adds that the tool returns documentId and signURL and defaults to 'schfdop' function, but does not disclose side effects, permissions, or error behaviors. It does not contradict annotations.

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?

The description is structured with a clear purpose statement followed by an argument list. It is somewhat lengthy but efficient, front-loading the key purpose. Minor redundancy ('same format as invoice') could be trimmed but overall well-organized.

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?

Given 12 parameters, 5 required, and an output schema exists (so return values are covered), the description explains all parameters and the return value. It is complete for a UPD creation tool, though could elaborate on validation or constraints.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, meaning the description provides the sole parameter explanations. The description lists each parameter with a brief but meaningful explanation (e.g., 'buyer_type: company or ip' and 'function: schfdop (invoice+primary) or dop (primary only)'), adding critical value.

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 clearly states it creates UPD (universal transfer document) and returns documentId and signURL. It specifies the default function ('schfdop') and distinguishes this tool from other document-related siblings by focusing on UPD creation.

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?

The description explains the default and optional parameters but does not explicitly state when to use this tool vs alternatives. No when-not scenarios or prerequisites are mentioned, leaving the agent to infer usage context.

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. Dates show when Glama detected each change.

  1. 44 tool updatesv0.6.0
    • First observedgoods_add
    • First observedgoods_list
    • First observedgoods_remove
    • First observedtochka_account_detail
    • First observedtochka_acquiring_payment
    • First observedtochka_acquiring_payment_capture
    • First observedtochka_acquiring_payment_create
    • First observedtochka_acquiring_payment_refund
    • First observedtochka_acquiring_payment_with_receipt
    • First observedtochka_acquiring_payments
    • First observedtochka_acquiring_registry
    • First observedtochka_acquiring_retailers
    • First observedtochka_all_balances
    • First observedtochka_balance
    • First observedtochka_card_transactions
    • First observedtochka_check_invoices
    • First observedtochka_consent
    • First observedtochka_consent_children
    • First observedtochka_consent_create
    • First observedtochka_consents
    • First observedtochka_customer
    • First observedtochka_customers
    • First observedtochka_delete_closing_document
    • First observedtochka_delete_invoice
    • First observedtochka_download_closing_document
    • First observedtochka_download_invoice
    • First observedtochka_incoming
    • First observedtochka_invoice
    • First observedtochka_payment
    • First observedtochka_payments_for_sign
    • First observedtochka_pending_invoices
    • First observedtochka_search
    • First observedtochka_send_closing_document_email
    • First observedtochka_send_invoice_email
    • First observedtochka_statements_list
    • First observedtochka_subscription_charge
    • First observedtochka_subscription_create
    • First observedtochka_subscription_status
    • First observedtochka_subscription_status_set
    • First observedtochka_subscription_with_receipt
    • First observedtochka_subscriptions
    • First observedtochka_track_invoice
    • First observedtochka_untrack_invoice
    • First observedtochka_upd

TDQS

A3.6/5.0
Disambiguation5/5

Each tool has a clear, unique purpose. Even closely related tools like acquiring payment creation with and without receipt are distinct and well-described. No two tools perform the same function.

Naming Consistency4/5

Most tools follow a 'tochka_verb_noun' or 'tochka_noun_verb' pattern with consistent use of underscores. However, the three goods tools (goods_list, goods_add, goods_remove) deviate by lacking the 'tochka_' prefix, creating a minor inconsistency.

Tool Count2/5

With 44 tools, the count is high and exceeds the typical well-scoped range. While the tools cover a broad banking domain, the large number may overwhelm agents and suggests a need for consolidation or more selective exposure.

Completeness4/5

The tool set covers core banking operations comprehensively: invoices, payments, acquiring, subscriptions, account management, and more. Minor gaps exist, such as no update operation for invoices and no delete for consents, but these are not critical for basic workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    B
    quality
    D
    maintenance
    MCP server that bridges Claude to Monarch Money for personal-finance analysis and lightweight edits.
    18
    -
  • F
    license
    Not graded
    quality
    C
    maintenance
    Self-hosted MCP server enabling Claude to query bank accounts, balances, and transactions through Plaid with OAuth and TLS.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP server for T-Kassa (T-Bank/Tinkoff) payment API. Provides 16 tools for payments, refunds, recurring charges, customer management, saved cards, SBP, receipts, and T-Invest portfolio.
    60
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A self-hosted MCP server that lets Claude query your bank accounts, balances, and transactions through Plaid.
    1
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dontsovcmc/mcp-server-tochka-bank'

If you have feedback or need assistance with the MCP directory API, please join our Discord server