{
  "$comment": "GENERATED FROM api/_tools/<slug>/route.mjs — do not edit by hand",
  "type": "https://eips.ethereum.org/EIPS/eip-8257#tool-manifest-v1",
  "name": "contract-abi-inspector",
  "description": "Inspect a Base contract before an agent calls it. Returns verified-source status, compiler metadata, proxy implementation hints, ABI counts, sample read/write/event signatures, payable/write-method flags, and Blockscout evidence. Powered by Blockscout. 5min cache. $0.02 USDC per call; AXIOM Tool Pass holders get free access.",
  "endpoint": "https://www.clawbots.org/api/tools/contract-abi-inspector",
  "image": "https://www.clawbots.org/tools/icons/contract-abi-inspector.png",
  "featuredImage": "https://www.clawbots.org/tools/featured/contract-abi-inspector.png",
  "inputs": {
    "type": "object",
    "properties": {
      "address": {
        "type": "string",
        "description": "Contract address on Base (0x...).",
        "pattern": "^0x[a-fA-F0-9]{40}$"
      },
      "includeAbi": {
        "type": "boolean",
        "description": "If true, include the raw ABI array. Defaults false to keep responses compact.",
        "default": false
      }
    },
    "required": [
      "address"
    ],
    "additionalProperties": false
  },
  "outputs": {
    "type": "object",
    "properties": {
      "address": {
        "type": "string",
        "description": "Normalized Base contract address."
      },
      "chain": {
        "type": "string",
        "description": "Always 'base'."
      },
      "fetchedAt": {
        "type": "string",
        "format": "date-time"
      },
      "blockscoutUrl": {
        "type": "string",
        "description": "Human-readable Blockscout contract tab."
      },
      "name": {
        "type": [
          "string",
          "null"
        ],
        "description": "Verified contract name, if available."
      },
      "language": {
        "type": [
          "string",
          "null"
        ],
        "description": "Source language reported by Blockscout."
      },
      "compilerVersion": {
        "type": [
          "string",
          "null"
        ],
        "description": "Compiler version, if verified."
      },
      "evmVersion": {
        "type": [
          "string",
          "null"
        ],
        "description": "EVM version, if reported."
      },
      "optimizationEnabled": {
        "type": [
          "boolean",
          "null"
        ],
        "description": "Whether optimizer was enabled."
      },
      "optimizationRuns": {
        "type": [
          "number",
          "null"
        ],
        "description": "Optimizer runs, if reported."
      },
      "licenseType": {
        "type": [
          "string",
          "null"
        ],
        "description": "Source license type."
      },
      "verifiedAt": {
        "type": [
          "string",
          "null"
        ],
        "description": "Verification timestamp."
      },
      "verification": {
        "type": "object",
        "description": "Verification booleans from Blockscout."
      },
      "proxy": {
        "type": "object",
        "description": "Proxy type and implementation hints, if Blockscout reports them."
      },
      "abi": {
        "type": "object",
        "description": "ABI availability, counts, sample signatures, and optional raw ABI."
      },
      "source": {
        "type": "object",
        "description": "Source-code evidence fields."
      },
      "riskFlags": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Compact caution flags for agents."
      },
      "evidence": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Upstream URLs used for this lookup."
      }
    },
    "required": [
      "address",
      "chain",
      "fetchedAt",
      "blockscoutUrl",
      "name",
      "language",
      "compilerVersion",
      "evmVersion",
      "optimizationEnabled",
      "optimizationRuns",
      "licenseType",
      "verifiedAt",
      "verification",
      "proxy",
      "abi",
      "source",
      "riskFlags",
      "evidence"
    ]
  },
  "creatorAddress": "0xef2cc7d15d3421629f93ffa39727f14179f31c75",
  "tags": [
    "base",
    "contract",
    "abi",
    "verification",
    "blockscout",
    "preflight",
    "proxy"
  ],
  "pricing": [
    {
      "amount": "0.02",
      "asset": "USDC",
      "recipient": "0xef2cc7d15d3421629f93ffa39727f14179f31c75",
      "protocol": "x402"
    }
  ],
  "authentication": [
    {
      "type": "siwe",
      "description": "Sign In With Ethereum. Holders of the Axiom Tool Pass NFT get free unlimited access. Sign a SIWE message proving wallet ownership; the server verifies your wallet holds the pass on-chain.",
      "header": "Authorization: SIWE <base64url(message)>.<0xsignature>",
      "passContract": "0xfc9ce3990f85fA1A3a0eE51a710642396a6Cad82",
      "chain": "base",
      "chainId": 8453,
      "collection": "https://opensea.io/collection/axiom-tool-pass"
    },
    {
      "type": "x402",
      "description": "Pay per call in USDC on Base via the x402 protocol. No account or API key needed.",
      "header": "x-payment: <x402 authorization>"
    }
  ],
  "onChain": {
    "registry": "0x265BB2DBFC0A8165C9A1941Eb1372F349baD2cf1",
    "chainId": 8453,
    "toolId": 277
  }
}
