Robicop
Live app

Block 0 → — Every single rug and rugger, arrested since block 0.

Robicop has indexed the entire chain and flagged every wallet that has rugged a coin, or shown the pattern of one. A real-time block feed catches every new rugger as it happens.

claude mcp add robicop --transport http https://robicop.com/mcp

Your trading agent needs to know what wallets and coins to avoid.

On patrol · block
—
Coins on file
—
§01  THE WIRE
§01 · The wire

The first ever due-diligence tool for Robinhood trading agents.

One line to set up.

Robinhood opened trading to agents over MCP. The tooling never followed. A person can check who rugged the last coin and whether those wallets have done it before. An agent sees a price and a clock. Robicop hands it the rest.

robicop · agent sessionexample

      
§02  THE BEAT
§02 · The beat

One behaviour. Measured on every coin.

A rug is a threshold fitted to this chain and a base rate it has to beat, not a hunch. One collapse opens a file; the same wallet doing it again books them. Every line opens the transaction that proves it.

—

§04  METHOD
§04 · Method

Real time pattern recognition.

§05  QUESTIONS
§05 · Questions

What the method has to survive.

Serve & protect the trenches

Stop finding out after the candle.

Live tape — Across all launchpads

Robicop has eyes on every coin across the entire chain!
—rows / sec
Opening the tape…
paused — move the cursor away to resume
Integration

Your agent needs to know which wallets & coins to avoid!

Robinhood opened trading to agents over MCP — 70,000+ agentic accounts across Claude, ChatGPT, Cursor and Grok. Robicop speaks the same protocol, so your agent checks a coin before it trades it.

Install

One line, and it is wired in.

claude mcp add robicop --transport http https://robicop.com/mcp

That is the whole setup. No key, no account, no rate card. It sits beside the trading server your agent already talks to:

claude mcp add robinhood-trading --transport http https://agent.robinhood.com/mcp/trading

Four tools

check_coin · check_wallet · latest_bookings · patrol_stats — called mid-decision, answered in one round trip.

Read-only by construction

It returns a verdict and its evidence. It cannot place an order, request an approval or hold a key.

The real-time edge

The moment it happens, your agent knows.

A rug fires on a coin that is four minutes old, and the wallets that sold into it are named. That lands in the MCP as the blocks land — not in tonight's export, not in a CSV you remembered to refresh.

That is the difference between a list and a patrol. A list is right on the day you downloaded it. A patrol is right now.

Booked as blocks land

Classification runs off the live tail, so a wallet booked at a block is answerable about that block. Your agent is never trading against yesterday's version of who is dangerous.

Nothing to refresh

There is no file to re-download and no cache of your own to age. Your agent asks at the moment of the decision and gets the answer as it stands at that moment.

Every class, not just rugs

Rug detection updates on the same stream. A new pattern does not wait for a release.

Your own patrol officer

One line of config buys you something that sits next to your agent and filters bad actors out of its path, continuously, without you watching a chart.

In practice

Your agent screens. Robicop hands it the file.

State your bar in a sentence and your agent runs every launch past Robicop before it reaches your list. Back comes the count for each class and the transaction behind it — the homework a careful trader would have done by hand, at the speed an agent needs it.

robicop · agent sessionexample

  
Their stack

Robinhood's agent runs on MCP.

Trading MCP server

Account data, market feeds and order placement over agent.robinhood.com/mcp/trading — around 50 tools.

Guardrails exist already

Sandboxed accounts, spending limits, manual approvals. They control how much an agent can lose — not who it trades against.

What your agent asks

reading the archive…
Full access

Three days free. The rest is for holders.

Live tape included, for everyone.

Every rug of the last three days, and every one landing right now, is open to anybody — no wallet, no key, no ceiling. Everything older than that is the archive, and the archive opens once you have held $ROBICOP for six hours.

claude mcp add robicop --transport http https://robicop.com/mcp
Where the line sits

One line, and it is time.

Not a feature ladder and not a trial. The present is free because an agent needs to know what is happening now; the history is what holding buys.

Free, always

The live tape across every launchpad, and every rug booked in the last three days — with the wallets named and the transaction behind each one. This does not expire and does not meter.

Held six hours

Everything before those three days, back to block 1. Six hours of continuous holding — tenure, not size. Sell and the clock starts again.

Not connected

Connect an EVM wallet on Robinhood Chain (4663) to check your rank. Read-only — nothing is signed.

Cadet
Not on the force yet — connect to enlist.
0h
held
Connect a wallet to see where you stand.

What you can reach

Read the method → Message us on X
Technical paper

How a rug is proven.

Robicop reads Robinhood Chain from block 1 to the head, decodes every trade on every venue, and holds one question against all of it: did this coin collapse in a way nobody could escape, and who sold into it. This paper is the whole method — the ingestion, the decoder, the measurement, and what the measurement cannot see.

01 · Scope

One question, asked of the entire chain.

A rug is not a coin that failed. It is not a coin that bled out over an afternoon — that gave holders every chance to leave. A rug is a collapse with no exit: from the first print of the fall, every trade is worse than the one before it, there is never a tick back up to sell into, and the whole thing is finished inside a second.

The wallets that got out during that second are the ruggers. Not because selling is wrong, but because they sold into a collapse that left everyone else with nothing, at the one moment ordinary holders cannot act. Once is luck. On a second, unrelated coin it is a method.

02 · Ingestion

Every block, on one contiguous span.

Coverage runs from block 1 to the chain head as a single unbroken range, held on our own storage rather than rented from an index. Two sources are read in parallel because each is silent about something the other hears: the sequencer feed carries the block and its transactions, the log tail carries the receipts. A block is applied only when both agree.

BLOCK 1 HEAD ONE CONTIGUOUS SPAN · NO INTERIOR GAP LIVE EDGE
Coverage is a set-cover over block ranges, proven, not counted

Applied at frontier + 1

One process, strictly serial, resumable. Supply is a running fold from a coin's birth, so blocks cannot be applied out of order without corrupting every market cap downstream. A gap and an overlap are both impossible by construction.

Contiguity of blocks, not files

Coverage is proven by set-cover over block ranges, never by counting objects. A repair written off the usual grid is still coverage; a file-name test would call it a hole.

Reorg halts, never guesses

Every block's parentHash is checked against the hash of the one before it. On a mismatch the fold stops at that block and commits nothing. Silent corruption is the one failure that cannot be caught downstream.

Byte-identical on re-run

A day of a coin's tape is written whole, keyed by coin and day, sorted by (block, logIndex). Re-running a range overwrites rather than appends, so a retry cannot duplicate a trade.

03 · The decoder

A log is not a trade until it is resolved.

A raw Swap carries amounts and a price root. Turning it into a trade needs things that are not in the block: the coin's decimals, the pool's currency pair, the supply so far, the launchpad it was born on. All of it is state carried between blocks, which is why this is a stateful streaming decoder and not a batch job.

Every venue, not the convenient ones

Bonding curves, v2, v3 and v4 are all decoded. Roughly half of all trades on this chain happen on a curve before the coin ever reaches a pool — a decoder that only reads AMMs is reading the minority and calling it the market.

Side comes from net flow

v3 and v4 disagree on sign convention: one reports from the pool's perspective, one from the swapper's. Taking the sign off the event inverts every trade on one venue. Direction is the sign of net coin flow across the whole transaction, with transfers as ground truth and the swap supplying only the amounts.

The pair is read, never inferred

A v4 pool fixes its currencies at Initialize, so the pair is read from the pool's own definition. Amount-matching cannot work here: native ETH emits no transfer at all, and fee tiers mean the delivered amount is already net of the fee — a tolerance wide enough to absorb that is wide enough to match the wrong token.

Scale is never assumed

Decimals are resolved once at creation and cached forever. A coin whose scale cannot be read is held back, never defaulted to eighteen: dividing a nine-decimal coin by 1e18 misreads it by a factor of a billion, and a wrong scale is indistinguishable from bad data.

04 · Price

Quote-denominated, because the dollar moves too.

Price is q / n — the quote amount over the coin amount, both taken straight off the swap event. It is what the coin actually traded for. USD is carried for display and is never read by the measurement.

PRICED IN USD — −90% PRICED IN ITS QUOTE — UNCHANGED THE QUOTE REPRICED. THE COIN DID NOTHING.
Same coin, same blocks, two denominators
446 of 447

Apparent ≥90% collapses that were the quote rate moving, not the coin. Of 447 runs that looked like a rug in dollar terms, exactly one was a rug in quote terms. A USD price carries an oracle; q and n carry nothing.

The quote must be a reference asset

A price is a ratio. If the denominator moves, the ratio moves and nothing has happened to the coin. A quote qualifies only if it is used across at least twenty distinct coins — measured from our own corpus, needing no allowlist. One memecoin used as a quote repriced by a factor of 234,000 in a single block and made a perfectly healthy coin read as −98%. That one rule voided ten of thirteen candidates on the corpus it was first tested against.

One coin, one venue

Two pools are two price scales, and their junction prints a fake instant −99% at every switch. Each coin is read on its busiest pool-and-quote pair alone. This is safe because a v4 pool fixes its currencies at creation: across 492 coins, none carried two quote tokens inside their dominant pool.

A regime jump is not a price move

A move greater than 50× between two consecutive trades inside one pool is a denominator event or a decode fault, never a market move. The measurement does not read across such a boundary.

Ratios, measured in ticks

A collapse is a ratio, so it is measured in log space rather than in price. −90% is −23,026 ticks at any market cap, with no precision lost on a coin worth 1e−9.

05 · The measurement

What has to be true before anything is called a rug.

Over the coin's trades on its dominant venue, priced rows only, sorted by (block, logIndex):

RAN ×4 FROM LAUNCH ≤ 1 SECOND ≤ 10% OF THE START EVERY PRINT LOWER THAN THE LAST · NO TICK BACK UP
Run Depth Speed Run-up Corroborated high Sellers present
All six must hold, or nothing is called

The run

A maximal stretch where every consecutive pair is strictly lower than the last. No flat, no tick up. A bleeding coin bounces — buyers step in, the price ticks, the run breaks. Only a dump that eats every bid on the way down stays unbroken.

The depth

The run ends at 10% or less of where it started.

The speed

One second or less, measured from the first trade of the collapse — not from the last print at the peak. A long quiet period before a dump is silence, not descent, and counting it measures the wrong thing. Block timestamps on this chain are whole seconds with five to ten blocks sharing each one, so “inside one second” is provable and anything finer is derived.

The run-up

The coin must have run at least 4× from launch. Nobody is hurt on a coin that never moved. Launch is the median of the first few prints, bounded as a fraction of the series so that on a short-lived coin the run-up does not measure itself away.

A corroborated high

The price a collapse is measured from must be a trade of at least that coin's median size, in the series' own denomination. A rug traps holders at a price; a level that only one dust print ever established is not a level anyone was trapped at. A single micro-trader with 52,667 trades at a $0.23 median — against $4.90 for everyone else — anchored 121 of 424 candidates before this rule.

A rug has ruggers

A collapse window with no seller in it is a different event and is not this class.

2

Rug events across 68,444 coins with every gate as defined. Relax the run-up to 1× and it becomes 8; relax the speed to three seconds and it becomes 5. The gates are not decoration — each one was set against measured data and each one kills a specific false positive.

06 · Attribution

Who is named, and who is not.

THE CAUSAL WINDOW NAMED REACTING — NEVER NAMED
A wallet selling after the fall is a holder, not a rugger

The causal window

Only sells inside the collapse itself count. A wallet selling several blocks after the fall is reacting to it like everyone else and is never named. Without this bound, a slow bleed catches every seller on the way down: one early version produced 60,821 “confirmed ruggers”, which is most of the chain.

The beneficiary, not the recipient

A routed trade has the router as its recipient. The end party is the address whose net coin flow exceeds 5% of its gross — a router nets to zero against a large gross, a trader nets to its gross. On verified transactions the two separate by three orders of magnitude.

Infrastructure is never an actor

Pools, the v4 pool manager, curves, routers, lockers and launchpads move coins by construction. Without that exclusion the pool manager is the single largest rugger on the chain. The same exclusion set is used by the measurement and by anything auditing it.

The signer and the wallet

The transaction signer is recorded separately from the address that received the coin. Where they differ, one party is trading on another's behalf — true of roughly a quarter of trades, and a link that survives a change of address.

One collapse opens a file and asserts nothing. The wallet is pinned to a watch riding the live log tail, and every trade it makes afterwards is checked against that open file as the block lands — not in a nightly sweep. The same wallet doing it again, on a second and unrelated coin, is what books it.

07 · Real time

The same code path at the head of the chain.

Backfill and live are one loop with one frontier. Replaying stored blocks and following the chain head run through identical code and identical state; there is no handoff, and therefore no seam where the two could disagree. Every answer carries the block it was true at, and the distance from that block to the head, so a stalled lane shows up as a number that grows rather than an answer that quietly goes stale.

Booked as blocks land

A rug that fires now is measured now. The wallets that sold into it are named in the same pass that decoded the block they sold in.

Every claim keeps its proof

Each booking carries the transaction that produced it, the block, the price at both ends of the run and the seconds it spanned. Nothing is asserted that cannot be opened.

08 · Limits

What the method cannot see.

A measurement that cannot state its own boundary is not a measurement. These are reported as numbers rather than smoothed over.

Unattributed sells

Roughly one sell in five carries no resolvable end wallet. The rug itself is still detected in full — that is coin-level and complete — but the seller list is short by that much, which makes second-coin confirmation harder than it looks, not easier.

Liquidity removal

A collapse executed by pulling liquidity rather than selling produces no sell trade. That is a miss, not a false positive: the coin reads as dead with an empty seller list.

Honeypots

Reverted transactions emit no logs, and the archive is logs. A coin where buys succeed and sells revert is invisible to this method by construction.

Sub-second timing

Header clocks are whole seconds. “Inside one second” is provable; 200 milliseconds against 900 is not, and no amount of ingestion changes that.

Absence of a record is not a clearance. An empty result means no booked wallet has traded that coin inside the covered window — which is also what a brand new coin looks like.

09 · Surface

How an agent reads it.

One MCP server, read-only, called mid-decision. It returns a verdict and its evidence. It never places an order, never requests an approval and never holds a key.

claude mcp add robicop --transport http https://robicop.com/mcp

Every rugger wallet, back to block 1, free and unmetered.