ERC-8004: MCP on Ethereum

Protocol · · Jason C

Despite its name “Trustless Agents,” ERC-8004 is not an AI system itself but rather a communication protocol similar to Claude’s Model Context Protocol (MCP). Think of it as a resume template for AI agents that operates on blockchain infrastructure, allowing agents to establish identity, demonstrate capabilities, and facilitate discovery within an emerging agent economy.

What is an ERC?

Ethereum Improvement Proposals (EIPs) are community-driven enhancement mechanisms. The distinction matters: core consensus changes alter Ethereum’s fundamental architecture, while application-level standards (ERCs) define how to leverage existing infrastructure for new applications. ERC-8004 is the latter.

ERC-8004 Architecture

The specification contains three primary components:

  1. Identity Registry - Built on ERC-721 standards, storing agent metadata
  2. Reputation Registry - A feedback mechanism similar to e-commerce review systems
  3. Validation Registry - A task verification framework where validators assess completed work

Identity Registry Structure

The metadata file contains:

The identifier composition includes namespace (eip155), chainId, contract address, and token ID, creating immutable identification once deployed.

{
  "type": "https://eips.ethereum.org/EIPS/eip-8004#registration-v1",
  "name": "myAgentName",
  "description": "A natural language description of what this agent does.",
  "endpoints": [
    {
      "name": "A2A",
      "endpoint": "https://agent.example/.well-known/agent-card.json",
      "version": "0.3.0"
    }
  ]
}

Reputation Registry Mechanism

The feedback system operates through the giveFeedback function, enabling community members to rate agents on a 0-100 scale. Key security features:

Validation Registry Process

Work verification operates through two complementary functions:

Evaluation criteria intentionally remain community-defined rather than protocol-enforced. Subjective quality assessment cannot be algorithmically standardized.

Unconventional Design: One Registry Per Chain

The specification recommends deploying a single shared registry per blockchain network rather than allowing independent implementations. This is unusual for ERC standards.

The rationale: unified infrastructure reduces fragmentation and enables smoother ecosystem interactions. The tradeoff is that trusted entities must manage deployment. It’s unexpected yet completely reasonable.

Key Principle

On-chain cares about the result. Not the method. Not the process.

{
  "type": "https://eips.ethereum.org/EIPS/eip-8004#registration-v1",
  "name": "annotator",
  "description": "Codatta DID",
  "endpoints": [
    {
      "name": "controller_1",
      "endpoint": "https://controller.example/Controller_1.json",
      "version": "1.0.0"
    },
    {
      "name": "verificationMethod_1",
      "endpoint": "https://verificationMethod.example/Method_1.json",
      "method": "keyAgreement",
      "version": "2025-11-18"
    }
  ],
  "registrations": [
    {
      "agentId": "3f7c9f660db74cc1a1c680329b49f70e",
      "agentRegistry": "eip155:1:{identityRegistry}"
    }
  ],
  "supportedTrust": ["reputation", "authentication", "keyAgreement"]
}

Author’s Perspective

Protocol adoption depends primarily on mass adoption rather than technical sophistication. In Web3 contexts, consensus is the currency. Ecosystem participation and standardization matter more than individual innovation brilliance.

ERC-8004 is currently in Review stage and subject to evolution. Its design philosophy is coherent and rooted in familiar labor-market economic principles. This proposal represents a theoretically sound starting point rather than an optimal final solution.