Mpp Agent

Оплата API с HTTP 402 через Machine Payments Protocol (MPP).

Метаданные навыка

ИсточникОпциональный — установка: hermes skills install official/payments/mpp-agent
Путьoptional-skills/payments/mpp-agent
Версия0.1.0
АвторTeknium (teknium1), Hermes Agent
ЛицензияMIT
Платформыlinux, macos
ТегиPayments, MPP, HTTP-402, Tempo, Stripe
Связанные навыкиstripe-link-cli, stripe-projects

Справочник: полный SKILL.md

инфо

Ниже — полное определение навыка, которое Hermes загружает при его срабатывании. Именно это агент видит как инструкции, когда навык активен.

MPP Agent Skill

Оборачивает клиенты Machine Payments Protocol (MPP, https://mpp.dev), чтобы Hermes мог оплачивать доступ к API за каждый запрос на серверах, которые отвечают HTTP 402 Payment Required.

Три варианта клиента, все распространяются через npm. Берите самый лёгкий, который закрывает задачу пользователя. Доступно только на [linux, macos] — поддержка Windows появится позже, когда платёжный стек на этой платформе устоится.

Когда использовать

  • API продавца возвращает HTTP 402 с заголовком www-authenticate, и пользователь хочет действительно оплатить запрос, а не просто записать ответ в лог.
  • Пользователь просит «платить за запрос», «настроить кошелёк агента», «использовать Tempo / Privy / AgentCash» или хочет найти сервисы с ценами в MPP.
  • Списание через Stripe Link выдало Shared Payment Token (SPT), и агенту нужно приложить его к челленджу 402 — в этом сценарии предпочтительнее link-cli mpp pay (см. навык stripe-link-cli).

Выбор клиента

ИнструментКогдаНастройка
link-cliУ пользователя уже настроен Stripe Link, либо челлендж 402 объявляет method="stripe"см. навык stripe-link-cli
Tempo WalletСервисы MPP с контролем расходов, поиск сервисовtempo wallet login
Privy Agent CLIМультичейн-кошельки, пополнение через браузерprivy-agent-wallets login
AgentCash300+ API с заранее заданными ценами через один баланс USDC.enpx agentcash onboard
mppxРазработка и отладка, наименьший набор зависимостейnpm install -g mppx, затем mppx account create

По умолчанию: если у пользователя уже настроен Stripe Link или челлендж 402 указывает method="stripe", используйте link-cli mpp pay (навык stripe-link-cli). Иначе mppx для разовых платных вызовов и отладки, а Tempo Wallet — когда нужен постоянный контроль расходов.

Требования

  • Node.js 20+ в PATH
  • Пополненный кошелёк (Tempo / Privy / AgentCash) ЛИБО аккаунт mppx
  • Для Tempo / Privy / AgentCash: следуйте их собственным навыкам онбординга:
    • https://tempo.xyz/SKILL.md
    • https://agents.privy.io/skill.md
    • https://agentcash.dev/skill.md

Если пользователь выбрал один из них, скачайте соответствующий файл SKILL.md через web_extract.

Процедура (mppx, самый быстрый путь)

Все команды выполняйте через инструмент terminal.

1. Установка и создание аккаунта

npm install -g mppx
mppx account create

Сохраните полученные учётные данные аккаунта туда, куда укажет CLI (CLI пишет их в собственный конфиг — не вставляйте их в транскрипт агента).

2. Изучите челлендж 402 от продавца

Если пользователь дал URL, сначала проверьте его — убедитесь, что он действительно говорит на MPP:

curl -i <url>

Настоящий MPP-ответ 402 выглядит так:

HTTP/1.1 402 Payment Required
www-authenticate: tempo amount=0.1 currency=...

3. Оплатите запрос

mppx <url>

Для методов кроме GET или с телом запроса:

mppx <url> --method POST --data '<json>'

mppx сам отрабатывает обмен «челлендж / учётные данные» по схеме 402 и при успехе печатает фактический ответ продавца.

4. Проверьте чек

mppx прикладывает заголовок с чеком автоматически. Чтобы его посмотреть:

mppx <url> -v

Процедура (Tempo Wallet)

Навык Tempo Wallet по адресу https://tempo.xyz/SKILL.md — это канонический справочник; скачайте его через web_extract и следуйте ему. Вкратце:

tempo wallet login
tempo wallet pay <url>

Контроль расходов и поиск сервисов находятся в UI кошелька по адресу https://wallet.tempo.xyz.

Подводные камни

  • HTTP 402 без method="stripe" нельзя оплатить через Stripe Link. Если челлендж объявляет только Tempo или другие методы, используйте mppx (или тот кошелёк, что подходит) — Link его отклонит. И наоборот: если объявлен method="stripe", предпочтите Link через навык stripe-link-cli, чтобы списание прошло по одобренной пользователем карте.
  • Несколько челленджей в одном заголовке. В www-authenticate может быть перечислено несколько методов (например, tempo, stripe). mpp decode из Link CLI выберет Stripe; mppx выберет Tempo. Единственно «правильного» клиента нет — выбирайте по тому, какой кошелёк пользователь пополнил.
  • Челленджи с нулевой суммой. Некоторые MPP-эндпоинты берут $0.00 и хотят лишь подтверждающие учётные данные. Они работают без пополненного кошелька. Не отбраковывайте их как «сломанные».
  • Ключи кошелька никогда не попадают в контекст агента. Все четыре клиента хранят ключи в своих конфиг-директориях (или генерируют эфемерные пары ключей на каждую сессию, как в случае Privy). Не делайте cat/read_file по ним.
  • MPP на стороне сервера — это другой навык. Если пользователь хочет ДОБАВИТЬ 402 в свой собственный API, этот навык не подходит — направьте его на https://mpp.dev/quickstart/server и на middleware mppx/nextjs / mppx/hono / mppx/express / mppx/elysia. Отдельный навык mpp-server может появиться позже.

Проверка

mppx --version && mppx account list

Код выхода 0 означает, что инструмент установлен и аккаунт существует.

ESC