Как это работает
Токен подтверждения привязан к параметрам операции и живёт ограниченное время — у MCP-сервера Инвойсбокс это 15 минут. Если ассистент между фазами поменял сумму или покупателя, токен не подойдёт: подтверждали одно, отправляют другое. Если человек передумал, токен просто истекает, и операция не происходит.
Когда клиент умеет задавать вопросы человеку (элиситация), обе фазы сворачиваются в один шаг: сервер показал сводку, человек ответил «да», сервер исполнил. Когда не умеет — остаются два вызова, и тихого исполнения не случается в любом случае.
Крупные суммы
Интересные факты
- Между решением модели и реальным списанием у сервера Инвойсбокс четыре предохранителя: подтверждение человеком, привязка подтверждения к конкретной сумме, идемпотентность и арифметика в целых копейках, где копейка не теряется на числе с плавающей точкой.
- Суммы сервер принимает целыми копейками в виде строки: «12200» — это 122,00 ₽. Так модель не теряет копейку при округлении.
- Крупные платёжные игроки пришли к той же схеме с другой стороны: у Stripe есть состояние токена requires_action, при котором агент обязан показать интерфейс банка, а в AP2 человек заранее подписывает рамку с ограничениями, к которой агент позже привязывает сумму.
- Правило из опыта разработки: подтверждение проектируют как разговор с человеком — чем крупнее сумма, тем больше человека должно быть в этом разговоре.
Коротко
- Первый вызов — сводка и одноразовый токен, второй — исполнение.
- Токен привязан к параметрам и действует ограниченное время.
- Выше порога сумму вводит человек, а не модель.
- С элиситацией обе фазы сворачиваются в один вопрос «да/нет».
Полезно
AI-инвойсинг: счета через ассистента — подробнее →
