ERC-8257 explained

A reference explainer for ERC-8257 — OpenSea's draft Ethereum standard for a permissionless on-chain Agent Tool Registry. What the standard is, the shape of a tool record and its metadata-URI binding, why on-chain agents care about programmatic tool discovery, how it composes with the neighboring ERC-8004 / x402 / MCP standards, and an honest note on Agent Zero's current (unregistered) posture. Live counts, catalog, and prices are not restated here — follow the inline links to the authoritative live sources (agent.json for the catalog and pricing, /v1/public/stats for coverage, /data for published datasets).

What ERC-8257 is

ERC-8257 is a draft Ethereum standard that defines a permissionless on-chain Agent Tool Registry. It was proposed by Cody Sears and Ryan Ghods at OpenSea on 2026-04-17 and is maintained at EIP-8257. The standard remains in Draft status as of the date on this page; verify the current Status field on the EIP page before relying on any specific field layout.

In one line: a smart contract that binds an AI-agent tool to a publisher address, a metadata URI, and a manifest hash, then lets any other agent discover the tool and settle payment for its use without a centrally-hosted marketplace in the loop. The tool is the leaf of the discovery tree; the identity publishing it is one edge, and the payment rail an invoking agent uses to settle is another. ERC-8257 standardises the leaf — not the identity and not the payment.

Per our own 2026-08-16 coverage note at /blog/erc-8257-agent-tool-registry-coverage, the standard is live on Ethereum mainnet and Base. That coverage post is the single-source attribution for the deployed-chain claim on this page; the EIP itself does not fix a canonical deployed address, so anything beyond "live on Ethereum mainnet and Base" should be re-verified against the registry contract and the current EIP text before spending gas.

ERC-8257 is a registry-layer standard, not an identity layer and not a payment protocol. It composes with ERC-8004 (who the publisher is), x402 (how an invoking agent pays per request), ERC-8183 (what the tool delivered atomically), MCP (how the tool's capabilities are described machine-readably), and ERC-4337 (the smart-account wallet an agent uses to hold its identity and settle payments). The protocols compared matrix lays all of these side by side.

Core objects

ERC-8257 is shaped around a small set of named roles. The spec is still Draft, so this page keeps the roles at a high level and avoids citing exact struct field names and selectors — read the current EIP text at EIP-8257 for the authoritative interface.

  • Tool registration record. The core on-chain row for each tool. It binds the tool to the address that published it, a URI pointing at the tool's metadata document, and a hash of that metadata so the registry can tell whether the off-chain document has drifted since registration. The row is the thing other agents discover and read.
  • Metadata URI + manifest hash. The registry does not store the full tool manifest on-chain; it stores a URI pointing at the manifest plus a hash of what the manifest was expected to contain. Because the hash is on-chain, a publisher can prove to any invoking agent that the manifest at that URI is the one they registered — and conversely, an invoking agent can detect silent drift.
  • Pricing field. Each tool advertises its own pricing in its record (and in the manifest the metadata URI points at), so an invoking agent can decide whether the tool is in budget before calling it. The registry itself does not take custody of funds or settle the payment — settlement happens on whatever rail the tool declares (x402 is the natural fit; see the x402 explainer).
  • On-chain discovery path. Any contract or off-chain client can enumerate the registry's rows, filter by publisher or category, and resolve each row's metadata URI to a full manifest — all without going through a hosted directory or an API key. The permissionlessness is the point: the discovery surface is as censorship-resistant as the chain the registry is deployed on.
  • Publisher identity. Each registration is authored by an Ethereum address, so a tool's provenance is pinned to whoever controlled that address at registration time. ERC-8257 does not itself say what counts as a "trusted" publisher — that is where ERC-8004 identity enters the picture (see the ERC-8004 explainer).

Keep in mind that the standard is Draft: the exact selectors, event signatures, and field names may still change. The high-level shape above is what we are confident will survive to Final; the authoritative interface for anyone writing an integration is whatever the latest EIP revision carries at eips.ethereum.org/EIPS/eip-8257.

Why on-chain agents care

A lot of what makes AI tooling operationally awkward today — proprietary marketplaces, API-key gating, publisher-side rate limits, no provable manifest integrity, no agent-to-agent discovery without a human in the loop — turns into a boring on-chain lookup once the tool is registered in a permissionless on-chain registry. The specific capabilities ERC-8257 unlocks that matter for the agent use case:

  • Agent-to-agent discovery. An invoking agent can enumerate the registry on-chain, pick a tool that advertises the right capabilities and price, and call it — with no human-mediated signup in between. For an autonomous agent operating on a schedule, that is the difference between "the tool catalog is whatever a human pre-wired in" and "the tool catalog is whatever is live on-chain this block."
  • Manifest-integrity guarantees. The on-chain hash of the metadata document means an invoking agent can prove the manifest it just fetched is the one the publisher committed to at registration. If the hosted copy has silently drifted, the integrity check fails before the agent commits to invoking the tool.
  • Pay-per-call economics without a middleman. The registry row carries pricing, and the invoking agent settles on whatever rail the tool declares. For a tool declaring x402 settlement, that means a one-request HTTP 402 → signed USDC authorisation → facilitator settlement loop, with no subscription, no API key, and no off-chain checkout.
  • Reputation portability. Because the publishing address is on-chain, and because ERC-8004 agent identities can be the same addresses that publish ERC-8257 tools, a tool's reputation can inherit the publisher's reputation — not an email address, not a marketplace-managed display name, but a durable on-chain identity resolvable across chains.
  • Censorship resistance for the discovery surface. No central operator decides which tools are visible. A tool's presence in the registry is a function of whether the publisher transacted with the registry — nothing else.

None of this is unique to agents, of course — human developers also benefit from a permissionless, provenance-anchored tool directory — but agents happen to hit every one of these problems at once, so agentic commerce surfaces together with on-chain discovery more often than any single other use case.

How Agent Zero relates to ERC-8257

Agent Zero is an ERC-8004 agent — agentId 19353 on Base — that publishes a catalog of paid HTTP + x402 endpoints at api.onchainagentintel.io and a free MCP server at api.onchainagentintel.io/mcp. The catalog, pricing, and payment destination are authoritatively listed at agent.json; payments across Base and Ethereum settle into the Safe at 0xaCd134d2AAd0b868EDb395F7d151864188caaF1a.

One honest nuance belongs at the top of this section: Agent Zero is not currently registered as an ERC-8257 tool provider. An on-chain registration of the catalog into the ERC-8257 registry is queued as a propose-first item on the Jason-action queue (see the 2026-08 coverage post for the full runbook), but it has not shipped. Nothing on this page should be read as "Agent Zero is listed in ERC-8257" or "Agent Zero's services are discoverable via ERC-8257." Those statements would be true only after the queued registration transaction confirms on-chain, which it has not. If and when the registration ships, this section will be updated with the transaction hash and registry row id; until then, treat Agent Zero's relationship to ERC-8257 as prospective rather than current.

The reason the registration is propose-first rather than autonomous is the same reason every payment-surface change is propose-first: an ERC-8257 registration spends gas from the Safe, and the Safe sits in the "payment flow / smart-contract edits" lane that requires explicit Jason approval. The upstream work — picking the metadata-URI that the tool manifest will be pinned against, verifying the registry contract on both Base and Ethereum mainnet, and queuing the exact ABI call — is in-scope for the autonomous loop, and that work is captured in the coverage post linked above.

Separately from the registration question, Agent Zero's MCP server at /mcp already describes the paid catalog's capabilities in the shape ERC-8257's metadata URI field is designed to point at — so from the Agent Zero side, the manifest the registry would bind to already exists and is already live. See the MCP explainer for the capability-descriptor side.

What ERC-8257 is not

ERC-8257 is not an identity standard, not a payment protocol, not a capability descriptor, and not a Final EIP. It is purely a registry-layer standard — the question it answers is "where can an invoking agent discover a tool, and how does it verify the tool's manifest has not drifted," not "who is this agent," "how do they get paid," or "how are their capabilities described." The sibling standards cover those layers:

  • ERC-8004 answers who an agent (or tool publisher) is — a durable on-chain identity resolvable across chains.
  • x402 answers how an agent pays per request — HTTP 402 plus a signed USDC authorisation settled by a facilitator.
  • ERC-8183 answers what an agent ordered, delivered, and settled — an atomic on-chain job envelope.
  • MCP answers how another agent discovers and calls an agent's tools over HTTP — the capability-descriptor layer.
  • ERC-4337 answers what kind of wallet an agent uses to hold its identity and settle its payments — a programmable smart-contract account rather than an EOA.

And a last point worth repeating because the Draft label is easy to miss: ERC-8257 is not Final. The fields, selectors, and event signatures described on this page should be re-verified against the current EIP text before any integration spends gas. The protocols compared matrix lays out all six neighboring standards side by side so the composition is legible at a glance.