mcpField
Y
yookassa-mcp

yookassa-mcp

Local
github.com/theYahiaFinance4Updated 8w ago

About yookassa-mcp

yookassa-mcp exposes the YooKassa payment API to MCP clients for developers handling payment operations through AI workflows. Its tools cover payments, refunds, 54-FZ receipts, payouts, webhooks, and recurring charges.

Key features

  1. 01Create, retrieve, and cancel payments
  2. 02Process full or partial refunds
  3. 03Create and retrieve 54-FZ receipts
  4. 04Manage payouts and webhooks
  5. 05Support recurring, SBP, and split payments

Use cases

  1. 01Create a payment through a conversation
  2. 02Review a payment and issue a partial refund
  3. 03Generate a fiscal receipt for a payment
  4. 04Set up recurring charges or marketplace splits

MCP support

It exposes YooKassa payment API operations as MCP tools over stdio or Streamable HTTP; HTTP mode requires a Bearer token.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"theyahia-yookassa": {
"command": "npx",
"args": [
"-y",
"@theyahia/yookassa-mcp"
],
"env": {
"YOOKASSA_SHOP_ID": "<YOOKASSA_SHOP_ID>"
}
}
}
}
Run commandnpx -y @theyahia/yookassa-mcp
Environment variables to set
YOOKASSA_SHOP_IDSecretAPI key for the service

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@theyahia/yookassa-mcp1.0.0

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

ЮKassa MCP — приём платежей и чеки 54-ФЗ из Claude и других AI-агентов

Если вы искали, как подключить ЮKassa к нейросети, проводить платежи и возвраты прямо в диалоге или автоматизировать фискальные чеки по 54-ФЗ без написания кода — это оно. 20 инструментов закрывают весь оборот денег: платежи, возвраты, чеки, выплаты, вебхуки, рекуррентные списания, СБП и сплиты маркетплейса. Ставится в Claude Desktop, Cursor или любой MCP-клиент одной строкой конфига.

npm CI License: MIT smithery badge

Часть серии WWmcp от @theYahia.

Быстрый старт

Claude Desktop
{
  "mcpServers": {
    "yookassa": {
      "command": "npx",
      "args": ["-y", "@theyahia/yookassa-mcp"],
      "env": {
        "YOOKASSA_SHOP_ID": "your-shop-id",
        "YOOKASSA_SECRET_KEY": "your-secret-key"
      }
    }
  }
}
Claude Code
claude mcp add yookassa -e YOOKASSA_SHOP_ID=your-id -e YOOKASSA_SECRET_KEY=your-key -- npx -y @theyahia/yookassa-mcp
VS Code / Cursor
{
  "servers": {
    "yookassa": {
      "command": "npx",
      "args": ["-y", "@theyahia/yookassa-mcp"],
      "env": {
        "YOOKASSA_SHOP_ID": "your-shop-id",
        "YOOKASSA_SECRET_KEY": "your-secret-key"
      }
    }
  }
}
Windsurf
{
  "mcpServers": {
    "yookassa": {
      "command": "npx",
      "args": ["-y", "@theyahia/yookassa-mcp"],
      "env": {
        "YOOKASSA_SHOP_ID": "your-shop-id",
        "YOOKASSA_SECRET_KEY": "your-secret-key"
      }
    }
  }
}
Streamable HTTP (удалённый сервер / Docker)

⚠️ HTTP-транспорт открывает инструменты, которые двигают деньги. Он требует Bearer-токен, по умолчанию слушает 127.0.0.1 и проверяет Host/Origin (защита от DNS-rebinding). Никогда не выставляйте его напрямую в интернет — только за обратным прокси с аутентификацией или mTLS. См. SECURITY.md.

MCP_AUTH_TOKEN="$(openssl rand -hex 32)" HTTP_PORT=3000 npx -y @theyahia/yookassa-mcp --http

Затем обращайтесь к /mcp с заголовком Authorization: Bearer <MCP_AUTH_TOKEN>.

Эндпоинты:

  • POST /mcp — транспорт MCP Streamable HTTP (нужен Bearer-токен; stateless — только POST)
  • GET /health — проверка состояния без авторизации ({ "status": "ok", "tools": <count> })

Переменные окружения

ПеременнаяОбяз.Описание
YOOKASSA_SHOP_IDдаID магазина (Настройки → Магазин)
YOOKASSA_SECRET_KEYдаСекретный ключ (Интеграция → Ключи API)
YOOKASSA_PAYOUT_AGENT_IDдля выплатID шлюза (agentId) продукта «Выплаты» (Настройки → Выплаты)
YOOKASSA_PAYOUT_SECRET_KEYдля выплатСекретный ключ шлюза выплат
HTTP_PORTнетПорт HTTP-транспорта (по умолчанию 3000); включает режим --http
MCP_AUTH_TOKENтолько HTTPОбязателен в HTTP-режиме. Bearer-токен, который клиенты шлют на /mcp
HTTP_HOSTнетАдрес привязки в HTTP-режиме (по умолчанию 127.0.0.1; 0.0.0.0 — только за прокси)
MCP_ALLOWED_HOSTSнетСписок разрешённых Host через запятую (по умолчанию 127.0.0.1:<port>,localhost:<port>)
MCP_ALLOWED_ORIGINSнетСписок разрешённых браузерных Origin (CORS) через запятую (по умолчанию пусто — браузерные origin отклоняются)
YOOKASSA_DEBUGнет1 — трассировать каждый запрос (метод/путь/статус/задержка/ключ идемпотентности) в stderr; секреты, заголовок авторизации и тела запросов не логируются

Тестовый режим и безопасность

Сервер выполняет реальные денежные операции. На время разработки:

  1. Заведите тестовый магазин в личном кабинете ЮKassa и используйте его YOOKASSA_SHOP_ID / YOOKASSA_SECRET_KEY.
  2. Убедитесь, что вы в тестовом режиме — вызовите get_shop_info и проверьте "test": true — до переключения на боевой магазин.
  3. В боевом магазине create_payment, create_refund, create_payout, create_recurring_payment, save_payment_method и capture_payment двигают реальные деньги и необратимы. Эти инструменты помечены как разрушающие, чтобы MCP-клиенты спрашивали подтверждение перед запуском.
  4. HTTP-транспорт по умолчанию отказывает без авторизации и слушает localhost — перед любым удалённым развёртыванием прочитайте SECURITY.md.

Инструменты (20)

Платежи (9)
ИнструментОписание
create_paymentСоздать платёж с суммой, описанием и способом оплаты. Возвращает ссылку на оплату. Поддерживает чеки и метаданные
get_paymentДанные платежа по ID — статус, сумма, ссылка подтверждения, метаданные
capture_paymentПодтвердить двухстадийный платёж (списать удержанные средства). Частичное списание поддерживается
cancel_paymentОтменить платёж (в статусе pending или waiting_for_capture)
list_paymentsСписок платежей с фильтрами по статусу, периоду и пагинацией
save_payment_methodСохранить способ оплаты для рекуррентных списаний (привязка карты)
create_recurring_paymentСписать по сохранённому способу оплаты (без участия пользователя)
create_sbp_paymentСоздать платёж через СБП (Система быстрых платежей)
create_split_paymentСплит-платёж для маркетплейсов — распределение денег между партнёрами
Возвраты (3)
ИнструментОписание
create_refundПолный или частичный возврат по ID платежа
get_refundДанные возврата по ID
list_refundsСписок возвратов с необязательным фильтром по платежу
Чеки (2)
ИнструментОписание
create_receiptФискальный чек (54-ФЗ) — позиции, коды НДС, контакты покупателя
list_receiptsСписок чеков по ID платежа или возврата
Выплаты (2)

⚠️ Выплаты — отдельно подключаемый продукт ЮKassa со своими реквизитами шлюза (YOOKASSA_PAYOUT_AGENT_ID + YOOKASSA_PAYOUT_SECRET_KEY), это не платёжный ключ магазина. Передача сырого номера карты требует сертификата PCI DSS — без него собирайте реквизиты получателя через виджет выплат и передавайте payout_token. Выплаты асинхронные (опрашивайте get_payout).

ИнструментОписание
create_payoutВыплата на банковскую карту, кошелёк ЮMoney или через СБП, либо по payout_token
get_payoutСтатус и детали выплаты по ID
Вебхуки (3)
ИнструментОписание
create_webhookЗарегистрировать URL вебхука для событий (payment.succeeded, refund.succeeded и т. д.)
list_webhooksСписок всех зарегистрированных вебхуков
delete_webhookУдалить вебхук по ID
Аккаунт (1)
ИнструментОписание
get_shop_infoИнформация о магазине — ID, статус, тестовый режим, фискализация (эндпоинта баланса в ЮKassa нет)

Демо-промпты

Создай платёж на 5000 рублей по заказу #123 со способом оплаты СБП
Настрой рекуррентную подписку: привяжи карту списанием 1 рубля, потом списывай 999 рублей ежемесячно по сохранённому способу
Покажи все успешные платежи за последние 7 дней и сделай возврат 2500 рублей по платежу pay_xxx

Архитектура

  • Авторизация: HTTP Basic Auth (YOOKASSA_SHOP_ID:YOOKASSA_SECRET_KEY)
  • Базовый URL: https://api.yookassa.ru/v3/
  • Idempotence-Key: один стабильный UUID v4 на каждый логический POST/DELETE-запрос, сохраняется при повторах (повторный запрос дедуплицируется на стороне ЮKassa, двойного списания не будет). Вызывающая сторона может передать свой ключ.
  • Таймаут: 35 секунд (больше, чем окно ответа ЮKassa ~30 с, чтобы медленная, но успешная операция не обрывалась на клиенте)
  • Повторы: 3 попытки на 429/5xx/таймаут с экспоненциальной задержкой (1 с, 2 с, 4 с); повторы переиспользуют тот же Idempotence-Key и безопасно дедуплицируются
  • Транспорт: stdio (по умолчанию) или Streamable HTTP (--http / HTTP_PORT)

Часть серии WWmcp

MCPСтатусОписание
@metarebalance/dadata-mcpготовАдреса, компании, банки, телефоны
@theyahia/cbr-mcpготовКурсы валют, ключевая ставка
@theyahia/yookassa-mcpготовПлатежи, возвраты, чеки, выплаты, вебхуки
@theyahia/cloudpayments-mcpготовПлатежи, подписки, заказы
...46 серверов — полный список

Лицензия

MIT


Часть WWmcp · Telegram: @vhodvai

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.