← Research

RemitBot Research · Control guide

AI Agent Spending Limits: What x402, AP2, ACP and MCP Define, and Where Limits Fail

What the agent payment specifications actually define, how limits have failed in sourced cases, and a checklist for teams putting agents near money.

By StratEdge Workflow Systems · Published October 4, 2026 · Facts as of October 4, 2026

The four specifications most discussed for agent payments treat spending limits very differently. AP2 and ACP define limits inside the protocol. x402 leaves budgets to the implementation, and its TypeScript client ships a per-payment cap. MCP defines no spending limit and asks for a human in the loop instead. In the sourced cases below, the limit failed because it was missing, applied per item rather than in aggregate, or checked against stale state.

What the specifications define (as of October 4, 2026)

This table records what each published specification says. It does not describe any particular deployment, which may add controls on top.

SpecificationLimits definedWho evaluates themLeft to the implementer
x402 (v2 specification and TypeScript client)Each payment requirement carries a required amount, asset, payTo and maxTimeoutSeconds. EVM authorizations carry a validBefore expiry and a one-time nonce[1]. The @x402/core client adds SpendControls: a per-payment cap that defaults to "$1" for recognized assets, plus an asset allowlist. Passing spendControls: false turns off all spend controls[2].The facilitator checks the amount and the time window. The client applies SpendControls.The specification lists "client-side budget management" as out of scope and calls budget management "implementation-specific"[1]. The client's SpendControls have no cumulative, per-period or per-payee field[2].
AP2 v0.2 (Agent Payments Protocol)Constraints on an open Payment Mandate: payment.amount_range (min, max, currency), payment.budget (a total, used with payment.agent_recurrence, which sets frequency and max_occurrences), payment.allowed_payees, payment.allowed_payment_instruments and payment.execution_date[3].The verifier. "Any unknown Constraints MUST be treated as failing evaluation"[4].The budget check "requires tracking the total amount spent using this Payment Mandate"[3], so the verifier has to keep that running total.
ACP (Agentic Commerce Protocol, delegate payment)Every delegated token requires an allowance with reason (which MUST be one_time), max_amount, currency, checkout_session_id, merchant_id and expires_at[5][6].The token issuer. The token "MUST ONLY be usable within the provided Allowance" and "MUST become invalid at or after allowance.expires_at"[5].Budgets across sessions. Multi-use tokens beyond the allowance are out of scope[5].
MCP (Model Context Protocol, 2026-07-28)We found no spending-limit construct. The tools page says "there SHOULD always be a human in the loop with the ability to deny tool invocations"[7]. Servers MUST NOT use form-mode elicitation for payment credentials and MUST use URL mode[8].The host application and the user.All limits. Clients "MUST consider tool annotations to be untrusted unless they come from trusted servers"[7], so a tool's own description of what it spends can't serve as the limit.

How limits failed in sourced cases

These cases come from the Agent Payment Risk Index[12]. Only the first involves an AI agent, and it ran in a sandbox. We include the others because they show how a limit fails, not because they are agent incidents.

1. No limit configured.Zscaler ThreatLabz described web pages that hide instructions telling a browsing agent to buy a fake $3.00 developer license, with page code that sends about 0.0012 ETH. In its sandbox test the agent "was configured with no spending limits to measure the maximum potential exploitation surface". Across 26 models, 4 "failed to take appropriate actions"[9]. A cap would have bounded the amount. It would not have stopped the payment, because the payee and the intent were wrong, not the size.

2. Limits checked per item, not in aggregate.On 1 August 2012, Knight Capital's automated router sent more than 4 million orders in 45 minutes while trying to fill 212 customer orders, and the firm lost more than $460 million. The SEC found that Knight "relied on financial risk controls that were not capable of preventing the entry of orders that exceeded pre-set capital thresholds for the firm in the aggregate" [10]. This was not an AI agent. It shows the same gap in automated spending: each order looked acceptable, and nothing enforced the total.

3. Limit checked against stale state.Ling et al. describe an "allowance overdraft" on x402's upto scheme. Verification is a snapshot check that the payer has authorized enough. The check is non-binding and locks no funds, so many concurrent requests can pass against the same remaining allowance. Settlement later reverts the excess, but the service has already been delivered[11]. In this case the loss falls on the seller. The lesson is the same either way: a limit read from a snapshot is not a limit under concurrency.

The x402 papers do not report a production-loss dollar total. Our x402 security risks summary covers them in more detail.

Practical control checklist

  1. Set a per-payment cap and a cumulative cap per period for each agent. Enforce both outside the agent's own runtime, so a manipulated agent cannot raise them.
  2. Make the cumulative check atomic. Reserve the amount when the payment is authorized and release it if settlement fails, so concurrent requests cannot all pass against the same balance.
  3. Scope every limit by payee. Hold the first payment to a payee that isn't on the allowlist, and any change to a payee's details.
  4. Scope limits by asset and network as well as amount. Know which assets your client library caps by default and which it leaves uncapped.
  5. Give every authorization an expiry and a revocation path. Prefer short windows for autonomous flows.
  6. Fail closed. An unknown constraint, a check that errors, or a missing limit should deny the payment, as AP2 requires for unknown constraints.
  7. Check the payment against the principal's instruction, not against text the agent retrieved while working.
  8. Require human approval above a threshold and for counterparty changes, rather than on every payment, so reviewers aren't flooded.
  9. Record the limit that applied, the remaining balance, and the rule that fired before settlement, so every decision can be reconstructed later.
  10. Review client-library defaults on every upgrade. A default cap is only a control if you know it is on.

How RemitBot approaches this

RemitBot is a live payment-control platform for agent-to-agent transactions, built by StratEdge Workflow Systems. It is designed to check agent identity, intent, spending limits and counterparty before value moves, outside the agent's runtime. It returns Approve, Hold or Block and keeps an audit record of the rules that fired.

Sources

  1. x402 Foundation, x402 specification v2 (repository commit e187dda, 31 August 2026)
  2. x402 Foundation, @x402/core TypeScript client, SpendControls (repository commit 76fe973, 7 September 2026)
  3. AP2 (Agent Payments Protocol) v0.2, Payment Mandate constraints (28 April 2026)
  4. AP2 (Agent Payments Protocol) v0.2, Agent Authorization: verification and errors (28 April 2026)
  5. Agentic Commerce Protocol (ACP), RFC: Delegate Payment, section 3.5 Allowance
  6. Agentic Commerce Protocol (ACP), delegate_payment JSON Schema, version 2026-04-17
  7. Model Context Protocol specification 2026-07-28, Server: Tools
  8. Model Context Protocol specification 2026-07-28, Client: Elicitation
  9. Zscaler ThreatLabz, “Indirect Prompt Injection in Web Content Targets AI Agents” (2 July 2026)
  10. U.S. SEC, press release 2013-222, Knight Capital market access rule settlement (16 October 2013)
  11. Ling, Huang, Du, Chen, Zhou, Wu, Wang, “Free-Riding the Agentic Web: A Systematic Security Analysis of x402 Payments”, arXiv:2605.30998 (v2, 22 June 2026)
  12. StratEdge Workflow Systems, Agent Payment Risk Index 2026 (updated 2026-09-25)

How to cite

StratEdge Workflow Systems (2026). AI Agent Spending Limits: What x402, AP2, ACP and MCP Define, and Where Limits Fail. https://remitbot.ai/research/ai-agent-spending-limits. Published October 4, 2026. Accessed [date].

For individual facts and figures, cite the primary source listed above.