Two-way permission before tools or money

Agents should not only be checked. They should check back.

The aggressive proof is a two-way handshake: the service asks the agent for identity, controller, wallet control, scope and limits; the agent asks the service for counterparty identity, policy, price, settlement target and receipt rules. If either side cannot prove authority, nothing moves.

Boundary: Gregers-built public proof using Concordium agent identity evidence. No live trade, no new payment, no custody, no Binance/partner integration claim, and no official Concordium/Foundation output.

Permission claim
A tool call is a contract negotiation.

Before an autonomous agent buys, trades, books, or calls a paid API, both parties need an accept/deny gate. MCP exposes tools; x402 exposes payment; Concordium-backed receipts expose who had permission.

Core rule

If identity, authority, policy, limit, expiry, wallet binding, or receipt binding fails on either side, the handshake rejects before the action.

The two-way handshake

1. Agent requests
tool, resource, amount, purpose
2. Service challenges
agent ID, controller, wallet, mandate
3. Agent challenges back
service ID, terms, settlement target
4. Both verify
hashes, expiry, scope, signatures
5. Receipt gates action
serve, quote, pay, or reject

What each side must prove

Service asks the agent

registered agentresponsible partywallet/session controlallowed actionlimit and expiryrevocation state

Agent asks the service

service identitypolicy hashprice/termssettlement targetrefund/error rulereceipt promise

Reject examples

Unknown service wallet, stale policy hash, action outside mandate, wallet mismatch, expired authority, missing receipt promise, or changed terms after approval.

Machine evidence

The JSON receipt publishes the offer, counter-challenge, pass/fail checks, allowed safe action, blocked high-risk actions, receipt hash, and hard no-production-side-effect boundary.

https://gregers.dev/api/agent-permission-handshake

How this makes the current proofs sharper

Binance Agent OS

Not just “can an agent call Binance?” The sharper question is whether Binance and the agent can mutually prove the scope before an MCP tool is served.

x402

Not just “can the agent pay?” The seller/API should ask who pays, for what, under which cap, and what receipt survives before releasing terms.

Moltbook / research agents

Not just “what did the agent write?” The receipt should show the version of the world it read and whether dependencies changed before commit.