A nine-stage agent payment workflow over caller-declared data. Step 1 validates the AP2 Intent, Cart and Payment mandate trio for signature-chain integrity, scope and limit consistency, expiry and over-spend (art-01). Step 2 then validates the on-behalf-of mandate the agent acts under, covering subject, scope, intent and validity window (art-151). Step 3 then cross-checks the declared KYA credential scope against the declared x402 payment payload (art-565). Step 4 then scores the declared transaction graph for laundering typologies (art-10). Step 5 then validates travel-rule field completeness across the declared transfer batch (art-104). Step 6 then binds the screening decision to the exact dataset version it was screened against (art-585). Step 7 then verifies the payment receipt against its mandate chain under the human-not-present guardrail (art-62). Step 8 then recomputes the Permit2 settlement digest for the declared payment (art-699). Step 9 aggregates the declared execution hashes of the session into one Merkle-root audit receipt (cry-05). Each step computes from its own declared inputs; the order is analytical, not a statutory sequence, and the workflow certifies nothing.
validate_ap2_mandate_chain{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "validate_ap2_mandate_chain",
"arguments": {}
},
"id": 1
}
validate_agent_obo_mandate{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "validate_agent_obo_mandate",
"arguments": {}
},
"id": 1
}
verify_kya_x402_scope{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "verify_kya_x402_scope",
"arguments": {}
},
"id": 1
}
score_aml_typologies{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "score_aml_typologies",
"arguments": {}
},
"id": 1
}
validate_tfr_travel_rule_batch{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "validate_tfr_travel_rule_batch",
"arguments": {}
},
"id": 1
}
build_sanctions_screening_evidence_pack{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "build_sanctions_screening_evidence_pack",
"arguments": {}
},
"id": 1
}
verify_ap2_payment_receipt{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "verify_ap2_payment_receipt",
"arguments": {}
},
"id": 1
}
recompute_x402_permit2_digest{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "recompute_x402_permit2_digest",
"arguments": {}
},
"id": 1
}
aggregate_execution_receipts{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "aggregate_execution_receipts",
"arguments": {}
},
"id": 1
}
Copy this paragraph into Claude, OpenClaw, or any MCP-aware agent to run this whole workflow on the server and check one field that answers a real question.
Question: An agent's x402 payment exceeds its credential's spend cap. Does the scope check report the payment out of scope, or clear it as in scope?
Run the AINumbers MCP tool `run_chain` with {"chain":"agent-payment-compliance-trail"} and read `art-565-kya-x402-scope-verifier.verdict`.
Re-run with `inputs` for `art-565-kya-x402-scope-verifier`, reusing the values that result echoed, with `x402_payload` changed so swap in the fixture out-of-scope payload whose payment amount exceeds the credential spend cap. Compare the same field.
Verify: call `verify_execution_hash` (https://mcp.ainumbers.co/mcp) with `claimed_hash` set to `composite_execution_hash` and the full `composite_artifact`.
Ledger, for a human re-check: https://ledger.ainumbers.co/
PII rule: send synthetic or anonymised inputs only. The MCP server runs these kernels and logs no payloads.
Chain page: https://ainumbers.co/chaingraph/chains/agent-payment-compliance-trail.html