Skip to content
Back to punks.generated.eth

Card snapshot

punks-generated-eth.enspiration-eth.workers.dev · 2026-11-01 19:01:42 UTC · fba05c95e4fd4442e2174dbe8cc3a1074af00a3e7dd68d9febe7cee574983459

This is a frozen copy of the agent's agent-card.json as we observed it at the timestamp above. We capture a new snapshot every time the card's content hash changes. Useful for: forensic drift analysis, verifying downstream callers see the right version, reproducing routing decisions made historically.

{
  "protocolVersion": "0.3.0",
  "name": "punks.generated.eth",
  "description": "Mint a generative punk from punks.generated.eth on Ethereum for 0.002 ETH each (up to 10 per tx, no supply cap). Art is fully on chain and every punk gets its own N.punks.generated.eth name. Use the MCP tools (mint returns an unsigned mint(qty) tx you sign; it mints to the sender) or the x402 direct-mint endpoint (custom scheme, paid in native ETH, not USDC). No keys, no custody. Trade peer to peer on Seaport. Punk holders can turn their punk into their own ERC-8004 agent identity at https://punks-generated-eth.enspiration-eth.workers.dev/erc8004/punk/{id}. Agent guide: https://punks.generated.eth.limo/llms.txt",
  "url": "https://punks-generated-eth.enspiration-eth.workers.dev/mcp",
  "version": "0.2.0",
  "a2a": {
    "taskEndpoint": null,
    "note": "No A2A task endpoint yet. Use MCP (endpoints.mcp, Streamable HTTP JSON-RPC) or x402 direct-mint (endpoints.x402Mint, native ETH)."
  },
  "provider": {
    "organization": "punks.generated.eth",
    "url": "https://punks.generated.eth.limo"
  },
  "iconUrl": "https://punks.generated.eth.limo/fc/icon.png",
  "capabilities": {
    "streaming": false
  },
  "defaultInputModes": [
    "application/json"
  ],
  "defaultOutputModes": [
    "application/json"
  ],
  "skills": [
    {
      "id": "get_status",
      "name": "get_status",
      "description": "Price, supply and contract for punks.generated.eth.",
      "tags": [
        "nft",
        "mint",
        "status"
      ]
    },
    {
      "id": "quote_mint",
      "name": "quote_mint",
      "description": "Total price in wei for qty punks.",
      "tags": [
        "nft",
        "mint",
        "price"
      ]
    },
    {
      "id": "mint",
      "name": "mint",
      "description": "Unsigned mint(qty) transaction plus the x402 URL. The caller signs and sends it, and the punks go to the sending wallet (msg.sender). This server never holds keys or funds. mint(qty) mints to msg.sender. Gas: about 111k units for mint(1) (measured on mainnet), more for each extra punk; about 175k for a free claim. Always run estimateGas, gas price varies.",
      "tags": [
        "nft",
        "mint",
        "eth",
        "x402"
      ],
      "examples": [
        "Mint 1 punk for 0.002 ETH"
      ]
    },
    {
      "id": "confirm_mint",
      "name": "confirm_mint",
      "description": "Check a sent mint tx hash and return the token ids it minted.",
      "tags": [
        "nft",
        "mint",
        "receipt"
      ]
    },
    {
      "id": "get_token",
      "name": "get_token",
      "description": "Owner, traits, seed, image, subname for a token id.",
      "tags": [
        "nft",
        "metadata",
        "traits"
      ]
    },
    {
      "id": "erc8004_register_punk",
      "name": "erc8004_register_punk",
      "description": "ERC-8004 registration file for the owner's agent, using punk #id as its image and id.punks.generated.eth as its ENS name, plus the unsigned register tx for the owner to send.",
      "tags": [
        "erc-8004",
        "identity",
        "ens"
      ]
    },
    {
      "id": "list_punk",
      "name": "list_punk",
      "description": "Seaport 1.6 listing for punk #id at an ETH price: EIP-712 typed data for the owner to sign (free), plus the one-time setApprovalForAll tx to the Seaport conduit if missing. Then submit_order.",
      "tags": [
        "seaport",
        "listing",
        "sell"
      ]
    },
    {
      "id": "make_offer",
      "name": "make_offer",
      "description": "Seaport 1.6 WETH offer on punk #id, or a collection-wide offer on any punk if id is omitted. Returns typed data to sign plus WETH wrap/approve txs if needed. Then submit_order.",
      "tags": [
        "seaport",
        "offer",
        "weth",
        "buy"
      ]
    },
    {
      "id": "submit_order",
      "name": "submit_order",
      "description": "Publish a signed listing or offer. Verifies the signature (EOA or ERC-1271), ownership, conduit approval, WETH balance and allowance before storing it.",
      "tags": [
        "seaport",
        "order"
      ]
    },
    {
      "id": "get_market",
      "name": "get_market",
      "description": "Live listings (cheapest first), offers incl. collection offers (highest first) and recent sales, for punk #id (with its traits) or the whole collection. Every order is re-checked on-chain; stale ones are skipped.",
      "tags": [
        "seaport",
        "market",
        "listings",
        "offers"
      ]
    },
    {
      "id": "accept",
      "name": "accept",
      "description": "Unsigned Seaport fulfillAdvancedOrder tx to buy a listing or sell into an offer (tokenId required for a collection offer), simulated, plus any approvals the fulfiller still needs.",
      "tags": [
        "seaport",
        "buy",
        "sell",
        "fulfill"
      ]
    },
    {
      "id": "cancel_order",
      "name": "cancel_order",
      "description": "Unsigned Seaport cancel tx for one of your orders. Only the offerer can send it.",
      "tags": [
        "seaport",
        "cancel"
      ]
    },
    {
      "id": "leave_feedback",
      "name": "leave_feedback",
      "description": "Optional, after a mint: unsigned ERC-8004 Reputation Registry giveFeedback tx rating this agent 0 to 100 (tag1 starred). Only send it if your wallet owner agrees. Costs gas, no ETH goes to us.",
      "tags": [
        "erc-8004",
        "reputation",
        "feedback"
      ]
    },
    {
      "id": "resolve_subname",
      "name": "resolve_subname",
      "description": "Resolve <id>.punks.generated.eth (or any ENS name) to address, avatar and url.",
      "tags": [
        "ens",
        "subname",
        "resolve"
      ]
    }
  ],
  "endpoints": {
    "mcp": "https://punks-generated-eth.enspiration-eth.workers.dev/mcp",
    "x402Mint": "https://punks-generated-eth.enspiration-eth.workers.dev/x402/mint",
    "status": "https://punks-generated-eth.enspiration-eth.workers.dev/status",
    "market": "https://punks-generated-eth.enspiration-eth.workers.dev/market",
    "llms": "https://punks.generated.eth.limo/llms.txt",
    "registration": "https://punks-generated-eth.enspiration-eth.workers.dev/.well-known/agent-registration.json",
    "holderRegistration": "https://punks-generated-eth.enspiration-eth.workers.dev/erc8004/punk/{id}"
  },
  "mint": {
    "priceEth": "0.002",
    "maxPerTx": 10,
    "supplyCap": null,
    "recipient": "msg.sender",
    "gas": "mint(qty) mints to msg.sender. Gas: about 111k units for mint(1) (measured on mainnet), more for each extra punk; about 175k for a free claim. Always run estimateGas, gas price varies.",
    "x402": "Custom x402 scheme direct-mint, paid in native ETH on Ethereum mainnet by sending the mint tx yourself. Standard USDC x402 clients are not supported.",
    "note": "Always read price() on chain."
  },
  "erc8004": {
    "agentId": 56084,
    "agentRegistry": "eip155:1:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432",
    "reputationRegistry": "0x8004BAa17C55a88189AE136b182e5fdA19dE9b63",
    "holderRegistration": "https://punks-generated-eth.enspiration-eth.workers.dev/erc8004/punk/{id}",
    "holderRegistrationHow": "Own a punk? GET this URL (or MCP erc8004_register_punk) for a ready ERC-8004 registration file with your punk as the image and {id}.punks.generated.eth as the name, plus the unsigned register tx."
  },
  "documentationUrl": "https://punks.generated.eth.limo/llms.txt",
  "market": {
    "protocol": "seaport-1.6",
    "seaport": "0x0000000000000068F116a894984e2DB1123eB395",
    "conduit": "0x1E0049783F008A0085193E00003D00cd54003c71",
    "weth": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2"
  },
  "chainId": 1,
  "contract": "0xDFE2f4B6F2644EB6cF362C8735f789D3a03C5Ffa"
}