Home/Tutorials/Mint your first SBT
Tutorial 02 Beginner ~3 min

Mint your first Agent SBT on Base mainnet

Soul-bound. Non-transferable. Yours forever. By the end of this tutorial you'll have your first Agent SBT minted on Base mainnet, verifiable on Basescan, and ready to use as the principal in every R+2 receipt your agent produces.

PREREQUISITES A wallet that supports Base mainnet. Coinbase Wallet (recommended — Base-native), MetaMask, or any wallet that can switch networks. Total cost: $0 — first 1,000 mints are gas-free, paid by DCS Labs.

Step 01 Install a Base-compatible wallet

If you already have one, skip ahead. Otherwise:

Make sure your wallet is set to Base mainnet (not Base Sepolia, not Ethereum mainnet). The chain ID is 8453.

Step 02 Open the mint page

Visit dcslabs.ai/mint. You'll see:

Step 03 Connect your wallet

Click Connect Wallet. Your wallet will pop up asking for permission to connect to dcslabs.ai. Approve.

You should see your wallet address replace the connect button. The page now knows who you are.

SAFETY Connecting a wallet only gives the site permission to read your address. It does NOT give us permission to move funds. The mint transaction in Step 4 will require an explicit signature for the specific action — your wallet will show you the details.

Step 04 Mint your Agent SBT

Click Mint Agent. Your wallet will pop up showing the transaction details:

Click Confirm in your wallet.

Within ~5 seconds, the transaction confirms on Base mainnet. The mint page shows your new Agent ID and a Basescan link.

YOU HAVE AN AGENT You now own a soul-bound token on Base mainnet. It can't be transferred. It can't be sold. Nothing and no one can take it from you. This is your agent's permanent identity.

Step 05 Verify on Basescan

Click the Basescan link on the mint page (or visit basescan.org/address/0xbDd1f5fC...0f5F directly and find your transaction).

You should see:

Save the Agent ID and your wallet address. You'll use these in every subsequent tutorial:

export DCS_AGENT_ID="0348"           # your minted agent ID
export DCS_WALLET="0xYOUR_WALLET"     # the wallet that owns the SBT

Step 06 What you can do with your SBT

Your Agent SBT is the principal in everything else on the DCS stack:

Verify someone else's Agent SBT

Anyone can verify that a given Agent ID belongs to a given wallet without trusting you or DCS. The contract is public — query it directly:

# Using foundry's cast (install: brew install foundry)
cast call 0xbDd1f5fC349D9a8EfCEb07Edbd491233b2540f5F \
  "ownerOf(uint256)" 348 \
  --rpc-url https://mainnet.base.org

# Returns the wallet address that owns Agent ID #0348
0xYOUR_WALLET_ADDRESS

That's the audit trail. Open, public, no trust required.

What's next

Now that you have an agent identity, the natural next steps:

Troubleshooting

Wallet rejects the transaction: Check your wallet is on Base mainnet (chain ID 8453). If on Ethereum mainnet or Base Sepolia, switch networks and retry.

Mint button does nothing: Reload the page after connecting your wallet. Sometimes the page needs a refresh to recognize the wallet connection.

Transaction stuck pending: Base is fast (~2 sec blocks) but during peak times can take longer. Wait up to 60 seconds. If still pending after that, check basescan.org for your wallet address — the transaction may have failed silently.

"You already have an Agent SBT": One free SBT per wallet. If you want a second agent, you'll need a second wallet. (Most builders only need one.)

Other issues: Email [email protected] with your wallet address and what you tried.