Skip to main content
Glama

MandatePay

Межсетевой экран авторизации для агентных платежей

Идентичность · Намерение · Политика · Одобрение человеком · Криптографическое доказательство

CI Python MCP License

Автономные агенты могут предлагать платежи. Они не должны получать неограниченные финансовые полномочия. MandatePay проверяет каждый инициированный машиной платёж на соответствие подписанному человеком мандату до его исполнения.

Зачем это существует

Агентная коммерция порождает новую проблему контроля: как платёжный провайдер может доказать, что ИИ-агент действовал в рамках полномочий, делегированных человеком или организацией? Традиционный checkout предполагает присутствие человека. API-ключи устанавливают доступ к приложению, но не цель, лимиты, географию, круг мерчантов или точные границы делегированного намерения.

MandatePay — это исследовательская плоскость управления, которая располагается между агентами и платёжными рельсами. Она не хранит и не перемещает средства.

Related MCP server: dingdawg-agent-wallet

Что делает её особенной

  • Подписанные мандаты: полномочия проверяемы машиной и защищены от подделки.

  • Политика как код: детерминированные лимиты на сумму, общий объём расходов, валюту, страну, мерчанта, цель, срок действия и скорость.

  • Человеческий вызов: операции с более высоким риском приостанавливаются для одобрения, привязанного к конкретному платежу.

  • Привязка к идентичности агента: мандат не может быть использован другим агентом.

  • Защита от повторов: ключи идемпотентности возвращают исходное решение.

  • Проверяемые события: каждое решение попадает в журнал с хеш-цепочкой.

  • MCP-инструмент: агенты могут запрашивать авторизацию через ограниченный интерфейс инструмента.

  • Отказ по умолчанию: недействительные подписи, некорректные денежные суммы, истёкшие полномочия и выход за рамки области действия отклоняются.

Жизненный цикл авторизации

sequenceDiagram
    participant H as Human / Organization
    participant A as AI Agent
    participant M as MandatePay
    participant P as Payment Provider
    H->>M: Sign bounded mandate
    A->>M: Submit payment intent
    M->>M: Verify identity + signature + policy + state
    alt within authority
        M-->>A: Single-use authorization
        A->>P: Execute with authorization proof
    else approval threshold
        M-->>H: Challenge exact intent
    else policy violation
        M-->>A: Deny with reason codes
    end
    M->>M: Append decision to audit chain

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

git clone https://github.com/muhammadashir0/mandatepay.git
cd mandatepay
python -m unittest discover -s tests -v
python app.py

Откройте http://localhost:8080.

Попробуйте четыре сценария в консоли:

  1. €299 / software / DE → авторизовать

  2. €400 / software / DE → человеческий вызов

  3. €900 / software / DE → отклонить: превышение лимита платежа

  4. €100 / travel / GB → отклонить: цель и страна

Используйте новый ключ идемпотентности при смене сценария.

MCP-сервер

python -m mandatepay.mcp_server

JSON-RPC-сервер без зависимостей предоставляет один намеренно узкий инструмент: request_payment_authorization. Инструмент возвращает решение, а не движение денежных средств.

Модель угроз

MandatePay разработан с учётом:

  • украденных или избыточно привилегированных учётных данных агента;

  • prompt-инъекций, вызывающих непреднамеренные покупки;

  • подделки мандатов и эскалации области действия;

  • дублирующего исполнения и повторов;

  • злоупотребления скоростью и совокупного перерасхода;

  • неоднозначного одобрения человеком;

  • неполных судебно-медицинских доказательств.

См. docs/THREAT_MODEL.md о границах доверия, нецелях и производственных средствах контроля.

Архитектура репозитория

mandatepay/
├── mandatepay/
│   ├── core.py          # signed mandate + deterministic policy engine
│   ├── store.py         # state, idempotency, tamper-evident journal
│   └── mcp_server.py    # constrained MCP-compatible tool server
├── web/index.html       # premium operator console
├── tests/               # policy and adversarial scenarios
├── docs/                # protocol, threat model, product direction
└── app.py               # sandbox HTTP API

Оценка, а не просто демонстрация

Тесты проверяют авторизацию, вызовы на одобрение, несовпадение идентичности, выход за рамки области действия, лимиты скорости и подделку подписанных мандатов. Следующий уровень бенчмарков будет измерять ложные авторизации, ложные отказы, устойчивость к повторам, покрытие политик, задержку решений и нагрузку на одобрение в состязательных сценариях.

Дорожная карта

  • Продакшн-подпись Ed25519/JWS и ротация ключей

  • Удостоверенная через OAuth идентичность агента и workload identity

  • Церемония одобрения, привязанная к хешу намерения

  • Одноразовые токены авторизации для платёжных провайдеров

  • Долговечный SQL-журнал с гарантиями конкурентности

  • OpenTelemetry-трассировки решений и экспорт подписанного аудита

  • Состязательный оценочный корпус для атак на агентные платежи

  • Песочница-адаптер Stripe/Adyen за интерфейсом исполнения

  • Мультивалютные десятичные и FX-политики

Границы ответственного использования

Этот репозиторий — исследовательский MVP в области безопасности и FinTech, использующий синтетические идентичности и не оперирующий реальными средствами. HMAC используется только для того, чтобы демонстрация оставалась без зависимостей. Для продакшн-развёртывания требуются проверенная асимметричная криптография, усиленная идентичность, долговечное транзакционное хранилище, аутентификация и авторизация, регуляторный анализ, средства контроля конфиденциальности, независимое тестирование безопасности и сертификация платёжного провайдера.

Стратегический контекст

Агентным платёжным системам необходимы авторизация на основе мандатов, разделение решения и исполнения, идентичность агента, программируемые средства контроля, аудиторские следы и многоуровневый человеческий надзор. MandatePay превращает эти проектные требования в инспектируемый прототип с открытым исходным кодом.

Лицензия

Apache License 2.0.

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to make payments with strict spending limits enforced by signed mandates, preventing unauthorized fund movement beyond predefined caps and allowlists.
    4
    22
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables verification of AI agent identity, authority, and integrity at transaction time, returning signed verdicts for allow, step-up, review, or block.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Deterministically evaluates whether a proposed agent spend action matches a supplied policy, returning ELIGIBLE, DENY, or STEP_UP with stable reason codes. Provides local policy evidence only, not payment authorization.
    1
    347
    MIT

View all related MCP servers

Related MCP Connectors

  • Agent payments, API key vaulting, and governed mandates. Agents spend within user-defined limits.

  • Pre-action allow/deny for AI agents. 24 statutes, 13 jurisdictions: EU AI Act, GDPR, DPDP.

  • Secure agent purchasing with human-approved virtual cards, receipts, and audit trails.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/muhammadashir0/mandatepay'

If you have feedback or need assistance with the MCP directory API, please join our Discord server