mcpField
Y
yookassa-mcp

yookassa-mcp

本地服务
github.com/theYahia金融数据48 周前更新

关于 yookassa-mcp

yookassa-mcp 将 YooKassa 支付 API 提供给 MCP 客户端,供需要通过 AI 流程处理支付和财务操作的开发者使用。它涵盖支付、退款、54-ФЗ 收据、付款、网络钩子及定期扣款。

主要功能

  1. 01创建、查询和取消支付
  2. 02处理全额或部分退款
  3. 03创建和查询 54-ФЗ 收据
  4. 04管理付款与网络钩子
  5. 05支持定期、SBP 和分账支付

适用场景

  1. 01通过对话创建支付
  2. 02查询支付并办理部分退款
  3. 03为支付生成财务收据
  4. 04设置定期扣款或市场分账

MCP 相关

它将 YooKassa 支付 API 操作作为 MCP 工具提供,支持 stdio 和 Streamable HTTP;HTTP 模式要求 Bearer 令牌。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"theyahia-yookassa": {
"command": "npx",
"args": [
"-y",
"@theyahia/yookassa-mcp"
],
"env": {
"YOOKASSA_SHOP_ID": "<YOOKASSA_SHOP_ID>"
}
}
}
}
启动命令npx -y @theyahia/yookassa-mcp
需要配置的环境变量
YOOKASSA_SHOP_ID密钥API key for the service

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@theyahia/yookassa-mcp1.0.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

README 原文English

来自项目 README

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

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。