The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Ashfields MCP Server listing page.
The first MCP server that burns an ERC-20 token to mint an NFT. Approve $ASH, call mint() — 100,000 tokens permanently destroyed, fully on-chain animated SVG appears on Ethereum. No ETH payment. No browser. Two contract calls from any agent.
Ashfields — 10,000 fully on-chain animated SVG NFTs. Minting burns 100,000 $ASH permanently. Earn $ASH by burning dead NFTs on deadjpg.lol.
Or via npx (no clone needed):
Edit claude_desktop_config.json:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonRestart Claude Desktop — the tools will appear automatically.
get_mint_infoReturns current mint status: price per token, total minted, remaining supply, whether minting is active, and contract addresses.
| Arg | Type | Required |
|---|---|---|
| — | — | — |
Returns: { mintActive, totalMinted, remainingSupply, pricePerToken, priceFormatted, maxPerTransaction, contracts }
check_walletReturns the configured wallet address, $ASH balance, ETH balance, current $ASH allowance for the Ashfields contract, and how many tokens it can mint right now.
| Arg | Type | Required |
|---|---|---|
| — | — | — |
Returns: { walletAddress, ashBalance, ashAllowance, ethBalance, canMintThisTx, needsApproval }
approve_ashApproves the Ashfields contract to spend $ASH from the wallet. Waits for on-chain confirmation. Only needed if allowance is insufficient — mint_ashfield handles this automatically.
| Arg | Type | Required | Description |
|---|---|---|---|
quantity | number | yes | Tokens to approve for (1–5). Approves quantity × 100,000 ASH. |
Returns: { status, approved, forTokens, wallet, txHash, etherscan }
mint_ashfieldFull mint flow: checks allowance, auto-approves if needed, mints, waits for confirmation. Returns minted token IDs and OpenSea link. Burns 100,000 $ASH per token permanently (sent to 0xdead).
| Arg | Type | Required | Description |
|---|---|---|---|
quantity | number | yes | Tokens to mint (1–5 per transaction). |
Returns: { status, minted, ashBurned, tokenIds, wallet, approvalTx, mintTx, etherscan, opensea }
Example response:
trigger_distributeCalls distribute() on the RoyaltyDistributor contract. Permissionless — any wallet can trigger this at any time. Splits accumulated royalty ETH: 1% creator · 1% $ASH team · 8% Uniswap buyback → burned to 0xdead. Requires ≥ 0.005 ETH in the distributor.
| Arg | Type | Required |
|---|---|---|
| — | — | — |
Returns: { status, txHash, etherscan, note }
"Check my wallet balance, verify I have enough $ASH to mint 2 Ashfields, then mint them and return the token IDs and OpenSea links."
| Contract | Address |
|---|---|
| Ashfields NFT (ASHF) | 0x068FB5Ac232462f642F34B2bAa81750Cc2F00DAA |
| $ASH Token | 0x7e6aed913DEAA38A486514AD75Bdf8E48Fa74a17 |
| RoyaltyDistributor | 0xF3b4063958dB5814E31aA745FbbfD4c0006E52A6 |
trigger_distribute() is permissionless by contract design — safe for any wallet to callMIT © 2025 smoke711711