01
Deposit
Send ETH to the vault. It covers up to the future mints you approve.
vault.deposit(value: 0.0111 ether)
/\/\/\
/######\
_|########|_
| [] [] |
| __ |
| _/ \_ |
|___________|
/| |||\
/_|__|||_\
/ | ||| \
/___|__|||___\
shipped from the on-chain swamp / drip 003
Claude-native fair launch. Deposit ETH, sign one EIP-712 permit, then say “mint 10 Punk” in Claude. Open the confirm link and your wallet sends the transaction.
total cap
420.69B
PUNK forever
mint pool
21,034
public slots
per slot
10,000,000
PUNK / mint
mint price
0.00111 ETH
vault spend
permit mode
active
until revoke / expire
// how it works
01
Send ETH to the vault. It covers up to the future mints you approve.
vault.deposit(value: 0.0111 ether)
02
Sign one EIP-712 typed message. The encrypted signature stays server-side.
wallet.signTypedData({ maxSlots })// connect
The ChatGPT app, Claude connector, and Responses API all create the same kind of confirm link. None can submit the wallet transaction.
// wallet arming station
Ethereum Mainnet01 / connect wallet
not connected
02 / deposit & sign permit
mint price
0.0111 ETH
03 / add claude connector
Add this Remote MCP server to Claude. After that, ask Claude to mint Punk and it will create a wallet confirm link.
PunkShitRemote URLhttps://punkshit.fun/api/mcp04 / claude > mint 10 punk
mint 10 punkconnect wallet, deposit the calculated mint price, then sign the encrypted permit
// withdraw & revoke
Vault balance: -- · Permit: none
pull unused ETH back or revoke the active permit nonce
// proof not trust
01
Mint authorization is a normal typed signature. No account delegation.
domain.name = PunkVault
02
Claude creates an intent. Your wallet opens the confirm page and sends the transaction.
mintWithPermit(...args)
03
No private key storage. Stored permits are encrypted and confirm tokens are hashed.
AES-GCM + SHA-256
// mcp tools exposed
// contracts
PUNK TOKEN
0x190a351b061218C557077f13F0b6ed2b419173f2
loaded from env · Ethereum Mainnet
PUNKVAULT
0xb4eE491aF6C9ba6E2e16E5A1940432a0f8c621Da
loaded from env · Ethereum Mainnet
RELAYER EOA
0x0000...pending
not configured
LP NFT LOCK
0x0000...pending
not configured
// safety
A
Anytime, no ask. Pull ETH back to your wallet with withdraw.
vault.withdraw(amount)
B
Bump nonce on-chain. Old signatures become unusable.
vault.revokePermit()
C
Remove the Claude connector. It stops seeing your prompt context.
Claude Settings > Connectors