MCP server for Tochka Bank API — balance, payments, invoices, UPD, acquiring, subscriptions, consents
Project description
mcp-server-tochka-bank
MCP-сервер, CLI-утилита и библиотека Pydantic-моделей для API банка Точка.
- MCP-сервер — интеграция с Claude Code, Claude Desktop и другими MCP-клиентами
- CLI-утилита — работа с API из терминала, скрипты и автоматизация
- Pydantic-модели — типизированные модели API для использования в своих Python-программах
Все данные остаются на вашем компьютере — токен никуда не передаётся.
Оглавление
Возможности
Банковские операции
| Инструмент | CLI | Описание |
|---|---|---|
tochka_balance |
balance |
Баланс счёта |
tochka_payment |
— | Создать исходящий платёж (я плачу кому-то), получить ссылку на подпись |
tochka_invoice |
— | Выставить счёт покупателю (мне платят) |
tochka_download_invoice |
— | Скачать PDF счёта |
tochka_upd |
— | Создать УПД (универсальный передаточный документ), получить ссылку на подпись |
tochka_search |
search |
Поиск операций по ИНН или названию контрагента (возвращает полные реквизиты: БИК, счёт, корр.счёт) |
tochka_incoming |
incoming |
Входящие поступления за месяц, сгруппированные по ИНН отправителя (для налоговых отчётов АУСН) |
Счета и документы (дополнительно)
| Инструмент | CLI | Описание |
|---|---|---|
tochka_account_detail |
account-detail |
Детали банковского счёта |
tochka_all_balances |
all-balances |
Балансы всех счетов |
tochka_statements_list |
statements-list |
Список последних выписок |
tochka_card_transactions |
card-transactions |
Авторизованные карточные транзакции |
tochka_customers |
customers |
Список клиентов (организаций) |
tochka_customer |
customer |
Детали клиента |
tochka_delete_invoice |
delete-invoice |
Удалить счёт |
tochka_send_invoice_email |
send-invoice-email |
Отправить счёт на email |
tochka_delete_closing_document |
delete-closing-document |
Удалить закрывающий документ |
tochka_send_closing_document_email |
send-closing-document-email |
Отправить закрывающий документ на email |
tochka_download_closing_document |
download-closing-document |
Скачать PDF закрывающего документа |
tochka_payments_for_sign |
payments-for-sign |
Список платежей на подпись |
Эквайринг (платёжные ссылки)
| Инструмент | CLI | Описание |
|---|---|---|
tochka_acquiring_payments |
acquiring-payments |
Список операций эквайринга |
tochka_acquiring_payment_create |
acquiring-payment-create |
Создать платёжную ссылку |
tochka_acquiring_payment |
acquiring-payment |
Детали операции эквайринга |
tochka_acquiring_payment_capture |
acquiring-payment-capture |
Списать средства (двухстадийный платёж) |
tochka_acquiring_payment_refund |
acquiring-payment-refund |
Возврат платежа |
tochka_acquiring_payment_with_receipt |
acquiring-payment-with-receipt |
Создать платёж с фискальным чеком |
tochka_acquiring_registry |
acquiring-registry |
Реестр платежей эквайринга |
tochka_acquiring_retailers |
acquiring-retailers |
Список торговых точек |
Подписки (рекуррентные платежи)
| Инструмент | CLI | Описание |
|---|---|---|
tochka_subscription_create |
subscription-create |
Создать подписку |
tochka_subscriptions |
subscriptions |
Список подписок |
tochka_subscription_charge |
subscription-charge |
Списание по подписке |
tochka_subscription_status |
subscription-status |
Статус подписки |
tochka_subscription_status_set |
subscription-status-set |
Установить статус подписки |
tochka_subscription_with_receipt |
subscription-with-receipt |
Создать подписку с фискальным чеком |
Разрешения API (Consents)
| Инструмент | CLI | Описание |
|---|---|---|
tochka_consents |
consents |
Список разрешений |
tochka_consent_create |
consent-create |
Создать разрешение |
tochka_consent |
consent |
Детали разрешения |
tochka_consent_children |
consent-children |
Дочерние разрешения |
Отслеживание оплаты счетов
| Инструмент | CLI | Описание |
|---|---|---|
tochka_track_invoice |
— | Добавить счёт в отслеживание оплаты |
tochka_untrack_invoice |
— | Убрать счёт из отслеживания |
tochka_pending_invoices |
pending-invoices |
Список счетов, ожидающих оплаты |
tochka_check_invoices |
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 покажет неоплаченные и запустит периодическую проверку.
Локальный справочник товаров
| Инструмент | CLI | Описание |
|---|---|---|
goods_list |
goods list |
Список всех товаров |
goods_add |
goods add |
Добавить товар (название, единица измерения, цена) |
goods_remove |
goods remove |
Удалить товар по названию |
Товары хранятся локально в ~/.config/mcp-server-tochka-bank/goods.json.
MCP-сервер
Установка
Шаг 1. Получить JWT-токен в банке Точка
- Войдите в интернет-банк Точка
- Перейдите в Настройки → Интеграции и API
- Нажмите «Создать токен» (JWT)
- Выберите разрешения:
ReadAccountsBasic,ReadAccountsDetail— информация о счетахReadBalances— балансReadStatements— выпискиReadCustomerData— данные клиентовCreatePaymentForSign,ReadPaymentData— платежиManageInvoiceData— счета и закрывающие документыReadAcquiringData,MakeAcquiringOperation— эквайринг и подписки
- Скопируйте сгенерированный токен
Шаг 2. Подключить MCP-сервер
Подключение к Claude Code
Способ 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": "ваш_токен"
}
}
}
}
Подключение через --mcp-config
Подключает сервер только на время одной сессии Claude, не сохраняя в настройки. Токен хранится в отдельном .env.mcp файле, а не в конфиге Claude.
Из JSON-строки:
claude --mcp-config '{"tochka-bank":{"command":"bash","args":["-c","source ~/.env.mcp && exec uvx mcp-server-tochka-bank"]}}'
Из файла:
claude --mcp-config ~/mcp-servers.json
Пример ~/mcp-servers.json:
{
"tochka-bank": {
"command": "bash",
"args": ["-c", "source ~/.env.mcp && exec uvx mcp-server-tochka-bank"]
}
}
Пример ~/.env.mcp:
TOCHKA_TOKEN=ваш_токен
Шаг 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)
pip install mcp-server-tochka-bank
Переменная окружения TOCHKA_TOKEN должна быть установлена:
export TOCHKA_TOKEN=ваш_токен
Или через файл:
mcp-server-tochka-bank --env /path/to/.env balance
Формат файла — KEY=VALUE, по одной переменной на строку, #-комментарии.
Использование (CLI)
Без аргументов запускается MCP-сервер, с командой — CLI. Все команды выводят JSON.
# Версия
mcp-server-tochka-bank --version
# Справка
mcp-server-tochka-bank --help
mcp-server-tochka-bank <command> --help
Примеры команд
# Баланс
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
Pydantic-модели
Пакет содержит типизированные Pydantic-модели всех объектов API. Модели можно использовать в своих Python-программах для валидации данных и автодополнения в IDE.
Установка (библиотеки)
pip install mcp-server-tochka-bank
Использование в своих программах
from mcp_server_tochka_bank.models import Balance, Account, Transaction
# Валидация данных из API
data = {"type": "ClosingAvailable", "accountId": "40702810100000000001/044525000"}
balance = Balance.model_validate(data)
print(balance.type) # type-safe доступ к полям
# Создание объекта
account = Account(accountId="40702810100000000001/044525000", customerCode="100000001")
print(account.model_dump_json())
Все модели используют extra="allow" для forward compatibility — неизвестные поля API не вызывают ошибок.
Полный список моделей: models.py
Переменные окружения
| Переменная | Обязательная | По умолчанию | Описание |
|---|---|---|---|
TOCHKA_TOKEN |
да | — | JWT-токен API банка Точка |
TOCHKA_TIMEOUT |
нет | 30 |
Таймаут HTTP-запросов к API (секунды) |
TOCHKA_FILE_TIMEOUT |
нет | 60 |
Таймаут скачивания файлов (секунды) |
Разработка
pip install -e ".[test]"
ruff check src/ tests/
pytest tests/ -v
Лицензия
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_server_tochka_bank-0.6.2.tar.gz.
File metadata
- Download URL: mcp_server_tochka_bank-0.6.2.tar.gz
- Upload date:
- Size: 43.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68589bf92124af9870d506faf597fd9eab15eae6906d25ebe75884bf4e2f3588
|
|
| MD5 |
0cbad9846caebcceb916cc36f258b251
|
|
| BLAKE2b-256 |
e85eca89c522884d99d324a775bfa39df2db59542c56e9a8dc74053bdd9cdb0a
|
File details
Details for the file mcp_server_tochka_bank-0.6.2-py3-none-any.whl.
File metadata
- Download URL: mcp_server_tochka_bank-0.6.2-py3-none-any.whl
- Upload date:
- Size: 29.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d20013a3a9621c51893daf4b373ef725ad00e619302e36e1609857e0b62f12b1
|
|
| MD5 |
9d2954a431bf8c850f9ade96f0fa8d7a
|
|
| BLAKE2b-256 |
2bd1b157de77b5693023993be68445e96344135e1c4273806a0ce0c13cc10137
|