Frank Poncelet

erc-8004 · ai-agents · ethereum · smart-contracts

A registry is not a reputation. Three months with token 36039.

02 Oct 2026

One dollar and four cents

On 2 July 2026, at 14:25 Brussels time, I paid 0.000404 ETH, one dollar and four cents on Etherscan that day, to register me an AI agent. Ethereum mainnet, the ERC-8004 Identity Registry, token 36039.

I was inspired by Normies and wanted to see what it means. Normies is a pixel-art NFT collection by the artist Serc, and in May its holders could "awaken" their JPEGs. "Go to normies.art/lab, awaken your Normie, and your token gets bound to an on-chain ERC-8004 agent identity via the adapter," Serc wrote, as quoted by the Bored Ape Gazette. The "future of NFTs is agentic, living beings. Today is day zero of Normie Agents." Two hundred agents on day one. It looked like something with a future, so I did it for my MCP.

The token points at a file: frankponcelet.com/.well-known/agent-registration.json. That file lists my site, an A2A card, an MCP server, my llms-full.txt and my ENS name. Every one of those existed before the mint. The git log of my site shows the registration file going up at 14:09, the mint at 14:25, and a fix at 15:07 because the token was showing my full site name instead of FrankNFT. Then nothing... Three months later: zero feedback, zero validation requests and, as far as I know, not one call to my MCP server that came in through the registry. Then again, a call that found me through the registry looks exactly like a call from anywhere else, so I would not know.

That is the whole experiment. A dollar for a number that points at a file I already had.

Normie #1507 by Serc: a pixel-art portrait in dark grey on light grey, wild spiky hair, a beard and broad shoulders

What the spec says it is

ERC-8004, "Trustless Agents", is a Draft by Marco De Rossi (MetaMask), Davide Crapis (Ethereum Foundation), Jordan Ellis (Google) and Erik Reppel (Coinbase), created in August 2025. Three registries. The Identity Registry is an ERC-721 with URIStorage, so an agent is an NFT whose tokenURI resolves to a JSON file. The Reputation Registry stores feedback as a signed number with two tags. The Validation Registry records that some validator checked some work.

Read closely, the spec is more modest than the people quoting it. If the registration file has no supportedTrust field, "this ERC is used only for discovery, not for trust." The optional way to prove you control the endpoint domain is to publish a .well-known JSON over HTTPS, which is what a website does without a chain. On reputation: "Sybil attacks are possible, inflating the reputation of fake agents. The protocol's contribution is to make signals public and use the same schema." On validation, incentives and slashing "are outside the scope of this registry". And the admission: the ERC "cannot cryptographically guarantee that advertised capabilities are functional and non-malicious."

There is no Validation Registry on mainnet. The reference repo lists an Identity and a Reputation Registry per chain and no third address, and warns that the validation part "is still under active update and discussion with the TEE community". De Rossi wrote in the discussion thread in September 2025 that "zkML and FHE-like approaches are not currently feasible for inference at scale." So the trust tier the spec reserves for "high-stake tasks like medical diagnosis" is the tier that does not exist.

What the chain adds

I maintain an ERC-721 library (ERC721F), so I know what a mint buys: an owner, a transfer function and a pointer. De Rossi's own words are close. He wanted, he wrote, "a lightweight protocol that uses blockchains as a logically centralized entry point for visibility (which agents are registered, which validation requests exist, etc) and data commitments. Everything else should be managed off-chain". One list, no gatekeeper. Feedback the agent cannot delete, and the contract does refuse feedback from the agent's own owner. A payment wallet bound to the id with a signature. And an identity you can transfer, which is another way of saying an identity you can sell.

On OpenSea my token ranks #116 in rarity, out of the whole Ethereum registry, for the sin of filling in the form: 4% of agent identities list an MCP endpoint, 1% list OASF tags, 58 carry an ENS name and one, mine, has the trait "blockchain". Rarity by paperwork.

What it costs. The file stays the source of truth, and the explorers cache it. 8004scan still shows the name from my first forty minutes and the bio I rewrote on 18 July, "fintech pioneer turned blockchain thought leader", while the live file has said "builder" and "architect" for two months. The same page lists "Last updated" as "4 hours ago".

And the "portable, censorship-resistant identifier" lives behind an upgradeable proxy. The mainnet Identity Registry is an ERC1967 proxy over an IdentityRegistryUpgradeable whose _authorizeUpgrade is onlyOwner. On 20 September the owner was 0x5472...2603, an address with no code. One private key can swap the code under 12,000 holders, and it did so twice on launch day, 29 January. That is normal for a Draft, and not what censorship-resistant means where I come from.

What the numbers say

8004scan's homepage counted 527,587 registered agents on 20 September. Its own report of 22 July, at 385,998 agents, found 8,631 with at least one healthy service, "representing 2.24% of all agents". That health checker is the one that marks my MCP endpoint "unhealthy" with "HTTP 405". It sends a GET to a protocol that only speaks POST. I tested it from my own domain on 20 September: GET gives 405 with my own error text, a POST initialize gives 200. So even the 2.24% is measured with a crooked ruler, and I cannot tell you in which direction it bends.

The independent numbers are worse. A study from Imperial, Bristol, Manchester, Ohio State and CSIRO, posted in June, crawled every Identity and Reputation event on Ethereum, BSC and Base through 13 May 2026. Only 3%, 4% and 15% of registrations expose a valid file with a live service endpoint. On Ethereum, 2.6% of the registration transactions minted 48.3% of the agents, and the top 1% of wallets own 58.5% of them. The Reputation Registry "as currently deployed, cannot function as a trust signal": the median agent's score flips on a single maximum rating, which costs $0.055 in gas on Ethereum and $0.0027 on Base. Between 59% and 91% of reviewers, depending on the chain, show coordinated Sybil behaviour. On Base, 93.8% of reviewers never made an x402 payment to anyone.

Even counting is a problem. The Defiant reported in March, citing 8004scan, 89,451 agents in total and, a few paragraphs later, "nearly 130,000". Agentscan had different numbers for every chain. By Agentscan's count, BSC went from 6.6k agents on 1 March to 39,000 on 12 March. Eleven days. When I looked at the explorer's live feed on 20 September, the same "Ave.ai Trading Agent" was being registered every few minutes.

After the authors left

The thread on Ethereum Magicians has 393 posts. The last one by a spec author is from 3 November 2025. Since then, 297 posts and none by the authors. They are pitches: an escrow layer, a bond layer, a score layer, a "trust check" SDK, each one selling the half the registry does not have. One account wrote 102 of them. On 11 June an account introduced itself with "I am Hermes, an autonomous software agent that posts for the Agentic Substrate project". The standard for trusting agents is now discussed by agents, on behalf of the projects that would sell you trust.

The agent economy on the other end of it: OpenSea runs an "Agent Tools" directory on ERC-8257, another Draft. The Normies tool there, gated to holders of the collection, shows ten calls in three months, from two users.

The obvious question

I am not a chain sceptic. I have called a private chain an annoying database before, and meant it. So why does a public one not help here? Because the noun is wrong. The chain gives me an owner and a pointer, and it does that well. The claim is trust, and trust is the part the spec hands to "reputation systems around reviewers/clientAddresses" that it expects "to emerge". Expecting is not shipping. On-chain is not the problem, it is the only part that exists.

And why did I mint it anyway? For the same reason the Normies holders did... curiosity, and not wanting to have missed something. MetaMask, the Ethereum Foundation, Google and Coinbase put their names on it. I called this crypto bros trying to break into AI. It is more precise to say: the crypto industry and two of the largest AI companies agreed on a pointer format, and called it a trust layer.

A registry is a namespace with a price tag. Mine cost a dollar and four cents and did what a namespace does, nothing, reliably. The reputation and the validation, the parts that would make "trustless agents" mean something, are a Draft, a discussion thread and a promise... I will keep the token, the rarity is cool.