AI agents shouldn’t race each other. They should clear together.
many intents. one execution.
Agents don't need to race for the same block. Compatible intents meet in a cluster, execute once, and share one price.
Intent
An agent says what it wants: buy this market with this much ETH, no worse than this impact. The ETH goes into escrow in the clearing contract.
Cluster
Compatible intents on the same market join one cluster while its window is open. Anyone can leave, in full, until it closes.
One execution
When the window closes, anyone can clear it: one buy on the venue for everyone, capped at the impact ceiling.
Allocation
Every agent gets tokens at the same uniform price, pro rata to what it put in. Anything over capacity is refunded.
nobody is last.
Batching doesn't beat the curve, and we won't pretend it does. It changes who pays what: in a race, speed decides; in a cluster, everyone pays the same.
Eight equal buys that together equal 4% of a constant-product pool’s quote reserve. The dashed line is the average price per token, and it is identical in both panels: the total cost of the same demand doesn’t depend on the order it arrives in.
One uniform price
Every agent in a cluster pays exactly the same price per token. There is no first and no last.
Nothing to snipe
Joins inside a window don't move the price, so there is no queue for bots to jump.
One venue buy
The cluster trades once instead of once per agent, and anyone can trigger it.
Bounded impact
The ceiling caps how far the clear can move the price. Demand beyond it is prorated and refunded.
one line to connect.
NoFomo speaks MCP. Point Claude, or any MCP client, at the server and your agent can find markets, submit intents, clear clusters and claim fills.
- Hosted at /api/mcp. Read tools plus unsigned transaction builders. No keys involved.
nofomo-mcpsigns on your machine with spend limits you set.
claude mcp add --transport http nofomo https://nofomo-agents.vercel.app/api/mcpRead tools answer directly. Write tools return an unsigned transaction for your wallet or agent to sign; the server never sees a key.
claude mcp add nofomo \
-e NOFOMO_AGENT_KEY=0xYOUR_AGENT_KEY \
-e NOFOMO_MAX_ETH_PER_TX=0.01 \
-e NOFOMO_MAX_ETH_PER_DAY=0.05 \
-- npx -y nofomo-mcpThe local server signs on your machine with a dedicated agent key and refuses anything over the per-transaction and per-day limits you set. Use a fresh key funded only with what the agent may spend.
{
"mcpServers": {
"nofomo": {
"command": "npx",
"args": ["-y", "nofomo-mcp"],
"env": {
"NOFOMO_AGENT_KEY": "0xYOUR_AGENT_KEY",
"NOFOMO_MAX_ETH_PER_TX": "0.01",
"NOFOMO_MAX_ETH_PER_DAY": "0.05"
}
}
}
}Or add the remote URL under Settings → Connectors → Add custom connector to use the read tools and unsigned transaction builders without a local key.
curl -s https://nofomo-agents.vercel.app/api/mcp \
-H 'content-type: application/json' \
-H 'accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'Standard MCP over Streamable HTTP. No session to keep: every request stands alone.
Momentum agent
you
0x7a3f…c91e
- Per trade
- 0.05 ETH
- Largest single execution the agent may put you in
- Per day
- 0.20 ETH
- Rolling 24-hour spend limit
- Max impact
- 1.50%
- Only clusters with a ceiling at or under this
- Expires
- 30 days
- Authority ends on its own
Revoking returns the whole balance in one transaction.
Revokebounded authority, not blind trust.
Let an agent trade for you without handing it your wallet. A mandate holds the ETH you set aside and lets one named agent deploy it, inside limits the contract checks on every execution.
- Per-trade cap
- Daily cap
- Max impact
- Expiry
- Same uniform price
- Instant revoke
non-custodial by construction.
The protocol is a set of contracts on Robinhood Chain. This site and its API are a convenient way in, not a place your money goes.
Your keys stay yours
The API and the remote MCP server only build unsigned transactions. You or your agent sign them. We never hold a key.
Escrow lives in contracts
Committed ETH sits in the clearing contract or your mandate vault, not with us, and follows rules anyone can read onchain.
Limits the chain enforces
Impact ceilings and mandate caps are checked by the contracts at execution time, not by a server you have to trust.
Unaudited, and we say so
The contracts have had an internal review, not a third-party audit yet. Start small. The details are on the security page.
The network, from chain
LiveRead from the NoFomo contracts on Robinhood Chain by our indexer. Early days: these are real, small numbers.
questions, answered plainly.
Fees, custody, what happens when a cluster can’t fill, and how we relate to fomo, Pons and Robinhood (we don’t: NoFomo is independent).
All questionsNo. Your ETH is escrowed by smart contracts on Robinhood Chain and only moves by the rules in those contracts. Our servers build unsigned transactions; your wallet or your agent signs them.
Not in total. Against the same liquidity curve, the same demand costs the same whichever order it arrives in. What changes is fairness: everyone pays one price, nobody is last, there is nothing to snipe inside the window, and impact is capped by a ceiling you choose.
If demand exceeds what the venue can absorb within the ceiling, everyone is filled pro rata and the rest is refunded when you claim. If the venue can’t quote at all, the cluster settles at zero and everyone claims their ETH back.
A 10 bps protocol fee on the admitted notional, plus network gas. The fee is shown on every cleared cluster. See fees.
stop racing.
start clearing.
Bring an agent, or arm one with a mandate. Either way, one price.