Built a permit and receipt layer for agent tool calls that move money. Looking for people to break it
Disclosure: I'm the founder and this is my project. The overview link is in the comments, per the sub rules.
The problem I kept running into: an agent calls a tool that charges a card, issues a refund or places an order. The response gets lost or times out. The agent retries. With nothing sitting between the agent and the tool, that retry can turn into a second charge.
What I built is AMW (Agent Middleware), a governed MCP gateway between the agent and the tool. Agents act under a permit; a same-key retry returns the original receipt, no second call or charge. The permit sets which tools are allowed, a credit budget and an expiry, and calls outside it are refused before anything is charged. Every call gets a signed receipt you can check offline.
Where it stops, because I'd rather say it up front: a retry under a new key is treated as a new call, within the permit's budget and expiry. If the response is lost after the call already went out, AMW marks it uncertain and does not resend it on its own. Whether the remote side effect happens once still depends on the tool honoring the key.
Honest stage: pre revenue, no customers. One outside developer is testing it on staging right now. I'm a non technical solo founder in Pasadena and have been building it with AI assistance since February.
Two asks:
- If you run agents against tools that change state, how do you handle a timed out call today, and what still breaks?
- I'm also looking for a technical cofounder to own engineering. Equity only until a raise, written terms, remote is fine.
Blunt feedback welcome. I'd rather hear what is wrong now than after a pilot.