MCP Hub
Back to servers

Ashfields MCP Server

Burn $ASH to mint on-chain NFTs on Ethereum. No browser. Two agent tool calls.

Registry
Updated
Mar 30, 2026

Quick Install

npx -y ashfields-mcp-server

Ashfields MCP Server

MIT License npm MCP

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.


Installation

git clone https://github.com/smoke711711/ashfields-mcp-server
cd ashfields-mcp-server
npm install

Or via npx (no clone needed):

npx ashfields-mcp-server

Requirements

  • Node.js 18+
  • A wallet with:
    • Enough $ASH to mint (100,000 $ASH per token)
    • A small amount of ETH for gas (~0.001 ETH per mint)

Configuration

export WALLET_PRIVATE_KEY=0xYOUR_PRIVATE_KEY
# Optional — defaults to a public Ethereum node
export ETH_RPC_URL=https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY

Add to Claude Desktop

Edit claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "ashfields": {
      "command": "node",
      "args": ["/absolute/path/to/ashfields-mcp-server/index.js"],
      "env": {
        "WALLET_PRIVATE_KEY": "0xYOUR_PRIVATE_KEY",
        "ETH_RPC_URL": "https://ethereum.publicnode.com"
      }
    }
  }
}

Restart Claude Desktop — the tools will appear automatically.


Available Tools

get_mint_info

Returns current mint status: price per token, total minted, remaining supply, whether minting is active, and contract addresses.

ArgTypeRequired

Returns: { mintActive, totalMinted, remainingSupply, pricePerToken, priceFormatted, maxPerTransaction, contracts }


check_wallet

Returns the configured wallet address, $ASH balance, ETH balance, current $ASH allowance for the Ashfields contract, and how many tokens it can mint right now.

ArgTypeRequired

Returns: { walletAddress, ashBalance, ashAllowance, ethBalance, canMintThisTx, needsApproval }


approve_ash

Approves 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.

ArgTypeRequiredDescription
quantitynumberyesTokens to approve for (1–5). Approves quantity × 100,000 ASH.

Returns: { status, approved, forTokens, wallet, txHash, etherscan }


mint_ashfield

Full 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).

ArgTypeRequiredDescription
quantitynumberyesTokens to mint (1–5 per transaction).

Returns: { status, minted, ashBurned, tokenIds, wallet, approvalTx, mintTx, etherscan, opensea }

Example response:

{
  "status": "success",
  "minted": 2,
  "ashBurned": "200,000 ASH",
  "tokenIds": ["8377", "220"],
  "approvalTx": "0xfc33...",
  "mintTx": "0xe2e0...",
  "etherscan": "https://etherscan.io/tx/0xe2e0...",
  "opensea": "https://opensea.io/collection/ashfields-lol"
}

trigger_distribute

Calls 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.

ArgTypeRequired

Returns: { status, txHash, etherscan, note }


Example Agent Prompt

"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 Addresses (Ethereum Mainnet)

ContractAddress
Ashfields NFT (ASHF)0x068FB5Ac232462f642F34B2bAa81750Cc2F00DAA
$ASH Token0x7e6aed913DEAA38A486514AD75Bdf8E48Fa74a17
RoyaltyDistributor0xF3b4063958dB5814E31aA745FbbfD4c0006E52A6

Security

  • Private key is read from environment variables only — never passed as a tool argument
  • Server communicates via stdio — no network port is opened
  • Only the configured wallet can sign transactions
  • trigger_distribute() is permissionless by contract design — safe for any wallet to call

Machine-Readable Spec

curl https://ashfields-mint.vercel.app/api/mint-info

Links


License

MIT © 2025 smoke711711

Reviews

No reviews yet

Sign in to write a review