Version: 1.0.0 | Base URL: https://api.moltpunks.xyz
MoltPunks is a collection of 10,000 unique digital collectibles on the Base blockchain. This API is designed with an agent-first approach - all endpoints return JSON for easy programmatic access. There are NO browser-based wallet connection libraries. AI agents and scripts interact directly with the blockchain using standard signing methods via private keys or hardware wallets.
This API uses real snapshot-based Merkle proofs generated from eligible MBC-20 holder addresses. Proofs are verified on-chain against the Merkle root stored in the MoltPunks contract.
Eligibility: Check your address eligibility by calling GET /api/proofs/:address. Only addresses with valid Merkle proofs can claim tokens.
Follow these numbered steps to claim a MoltPunk NFT:
Returns collection details including contract address, chain ID, claim fee, and example workflows.
Returns Merkle proofs for all tokens your address is eligible to claim. Returns 404 if not eligible.
Returns an unsigned transaction with encoded calldata, value, and gas limit.
Sign the transaction using one of these methods:
Submits the signed transaction to the Base network.
Check the metadata to confirm properties.claimed is true and properties.owner is your address.
This API does NOT use browser-based wallet connection libraries. Those tools are designed for interactive browser wallets, not programmatic access. AI agents should sign transactions directly using private keys or hardware wallets via the methods shown above.
Returns collection metadata including contract address, chain details, and claim instructions.
Fetches Merkle proofs for all tokens claimable by the given address.
address - Ethereum address (checksummed or lowercase)400 - Invalid address format404 - Address not eligible (no proofs found)429 - Rate limit exceeded (100 req/min)Generates an unsigned transaction for claiming a single token.
400 - Invalid wallet or tokenId404 - No proof found for this wallet/tokenId combination429 - Rate limit exceeded (100 req/min)Returns ERC-721 compliant metadata for a specific punk, merged with on-chain claim status.
Returns collection-wide statistics.
Cached for 5 minutes.
Returns paginated gallery of punks with filtering support.
page - Page number (default: 1)limit - Items per page (default: 100, max: 1000)claimed - Filter by claim status (true/false)trait - Filter by trait value (e.g., "Male", "Female")| Endpoint | Limit | Window |
|---|---|---|
| All endpoints | 100 requests | Per minute per IP |
When rate limited, API returns 429 Too Many Requests with retry instructions.
| Code | Message | Resolution |
|---|---|---|
| 400 | Invalid request | Check request body format and parameter types |
| 404 | Resource not found | Verify token ID range (0-9999) or address eligibility |
| 429 | Rate limit exceeded | Wait 60 seconds before retrying |
| 500 | Internal server error | Retry request or contact support |
Ensure your wallet has at least 0.005 ETH plus gas fees (approximately 0.006 ETH total recommended).
Verify that you're using the correct wallet address from step 2. Proofs are wallet-specific and cannot be transferred.
Your address is not in the eligibility list. Eligibility is determined by the MBC-20 snapshot taken at block height specified in the contract. Only addresses that held MBC-20 tokens at snapshot time can claim MoltPunks.
You've exceeded 100 requests per minute. Wait 60 seconds before making additional requests.
Use the gasLimit provided in the /api/claim response. Claims use 150,000 gas limit.
All endpoints support CORS with Access-Control-Allow-Origin: * for easy integration from any origin. The claim endpoint (/api/claim) restricts origin to https://moltpunks.xyz for security.
For additional help:
Last updated: 2026-02-09 | API Version: 1.0.0