CLAWD Wallet
Provides domain registration, DNS management, and nameserver configuration through Porkbun's API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@CLAWD WalletCheck my wallet balance"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
CLAWD Wallet
Claude's Lightweight Autonomous Wallet for Developers
A unified MCP server providing x402 payments, TAP identity verification, referral onboarding, and domain registration for Claude Code and other MCP clients.
Quick Start (5 minutes)
1. Install
git clone https://github.com/csmoove530/unified-clawd-wallet-mcp.git
cd unified-clawd-wallet-mcp
npm install && npm run build2. Initialize your wallet
Create a new wallet (key in OS keychain, config at ~/.clawd/config.json):
# Option A: use the CLI (after npm link, see below)
clawd init
# Option B: run init via npm (no global install)
npm run initTo use the clawd command from any directory, run once from the project: npm link.
Initialization is idempotent: running clawd init again does nothing unless you pass --force (which overwrites the existing wallet).
3. Add to Claude Code
Add to ~/.claude.json:
{
"mcpServers": {
"clawd-wallet": {
"command": "node",
"args": ["/path/to/unified-clawd-wallet-mcp/dist/mcp-server/index.js"],
"env": {
"CLAWD_BACKEND_URL": "https://clawd-domain-backend-production.up.railway.app",
"CLAWD_TAP_MOCK_MODE": "true"
}
}
}
}Use the real path to dist/mcp-server/index.js. See Canton Network below for Canton setup.
4. Restart Claude Code and Try It
You: "Check my wallet balance"
Claude: [calls x402_check_balance]
{
"success": true,
"balance": {
"address": "0x742d35Cc6634C0532925a3b844Bc9e7595f...",
"amount": "25.50",
"currency": "USDC",
"decimals": 6
}
}You now have a working CLAWD Wallet.
Related MCP server: agent-discovery-mcp
What Can You Do?
Check Your Balance
You: "What's my USDC balance?"Returns:
{
"success": true,
"balance": {
"address": "0x742d35Cc6634C0532925a3b844Bc9e7595f...",
"amount": "25.50",
"currency": "USDC",
"decimals": 6
}
}Redeem a Referral Code (New Users)
You: "Redeem referral code CLAWD2024"Returns:
{
"success": true,
"code": "CLAWD2024",
"amount": 15,
"currency": "USDC",
"txHash": "0x1234...abcd",
"recipientAddress": "0x742d35Cc6634C0532925a3b844Bc9e7595f...",
"explorerUrl": "https://basescan.org/tx/0x1234...abcd",
"message": "Successfully redeemed $15 USDC! Check your balance with x402_check_balance."
}Search for a Domain
You: "Search for domains with 'myproject'"Returns:
{
"query": "myproject",
"results": [
{ "domain": "myproject.dev", "available": true, "first_year_price_usdc": "14.99" },
{ "domain": "myproject.xyz", "available": true, "first_year_price_usdc": "4.99" },
{ "domain": "myproject.com", "available": false }
]
}Purchase a Domain
You: "Buy myproject.xyz for John Doe, john@example.com"Claude will:
Call
clawd_domain_purchase→ Get payment detailsCall
x402_payment_request→ Execute USDC paymentCall
clawd_domain_confirm→ Register the domain
Returns:
{
"success": true,
"domain": "myproject.xyz",
"status": "registered",
"expires": "2027-02-01",
"nameservers": ["ns1.porkbun.com", "ns2.porkbun.com"]
}Verify Your Identity (TAP)
You: "Verify my identity for premium merchants"Returns:
{
"success": true,
"status": "verified",
"agentId": "agent_abc123",
"identityLevel": "kyc",
"reputationScore": 50.0,
"message": "Identity verified at KYC level. Premium merchants will now accept your payments."
}All 27 Tools
Wallet Tools (5)
Tool | Description | Example |
| Pay an x402-enabled service |
|
| Check USDC balance on Base |
|
| Get wallet address for funding |
|
| View recent payments |
|
| Find x402 services |
|
Spending Controls (2)
Tool | Description | Example |
| View current spend limits |
|
| Update per-transaction and daily limits |
|
Referral Tools (1)
Tool | Description | Example |
| Redeem code for free USDC |
|
TAP Identity Tools (4)
Tool | Description | Example |
| Register with TAP registry |
|
| Complete KYC/KYB verification |
|
| Check verification status |
|
| Remove TAP credentials |
|
Domain Tools (9)
Tool | Description | Example |
| Search available domains |
|
| Start domain purchase |
|
| Confirm after payment | (automatic after payment) |
| List your domains |
|
| List DNS records |
|
| Create DNS record |
|
| Delete DNS record |
|
| Update nameservers |
|
| Get transfer auth code |
|
Canton Network Tools (6)
See Canton Network for setup and usage.
Tool | Description | Example |
| Create a new party or set existing party ID |
|
| Check Canton Coin (CC) balance |
|
| List all CIP-56 token holdings (UTXOs) |
|
| Get party ID, validator URL, network |
|
| Send CC to another party (needs recipient + amount) |
|
| View send/receive history |
|
Common Workflows
New User Onboarding
1. "Redeem referral code CLAWD2024" → Get $15 USDC
2. "Check my balance" → Verify funds arrived
3. "Verify my identity" → Enable premium services
4. "Search for domains with 'myproject'" → Find a domain
5. "Buy myproject.xyz" → Purchase with USDCDomain + DNS Setup
1. "Search for coolapp domains" → Find available options
2. "Buy coolapp.dev for Jane Doe" → Purchase domain
3. "Point coolapp.dev to 192.0.2.1" → Create A record
4. "Add www.coolapp.dev as alias" → Create CNAME record
5. "Show DNS for coolapp.dev" → Verify configurationUsing x402 Services
1. "Find AI image services" → Discover services
2. "Generate an image of a sunset" → Pays automatically via x402
3. "Show my recent transactions" → Review paymentsCanton Network
Canton Network tools let you create parties, check balances, list token holdings, transfer Canton Coin (CC), and view transaction history.
Setup
Local (Splice LocalNet): See CANTON_LOCALNET.md for Docker setup, MCP env configuration, and troubleshooting.
DevNet (or other non-local): No extra setup. Omit the Canton env vars from your MCP config; the server uses public DevNet endpoints by default.
Canton env vars (only needed for LocalNet or custom deployments):
CANTON_USE_LOCALNET=true # Use local Splice; omit for DevNet
CANTON_VALIDATOR_URL=http://127.0.0.1:2903/api/validator # LocalNet default
CANTON_LEDGER_API_URL=http://127.0.0.1:2975 # LocalNet defaultUsage
1. Create a party (required first)
You: "Configure Canton: create a new party with display name test-wallet"Returns:
{
"success": true,
"partyId": "test-wallet::12205301d046...",
"network": "localnet",
"validatorUrl": "<validator API base, e.g. http://127.0.0.1:2903/api/validator (local) or https://canton-devnet.digitalasset.com/api/v1 (DevNet)>",
"ledgerApiUrl": "<ledger API URL, e.g. http://127.0.0.1:2975 (local) or https://canton-devnet.digitalasset.com/ledger/v1 (DevNet)>"
}2. Check balance
You: "Check my Canton balance"3. List holdings
You: "List my Canton holdings"4. Transfer
You: "Transfer 10 CC to <recipient-party-id>"Requires recipient (full party ID) and amount.
5. Transaction history
You: "Show my Canton transactions"Errors
Error | Cause | Fix |
| No party yet | Run |
| Validator URL wrong | Local: See CANTON_LOCALNET.md. Other: Set |
| Hitting HTML instead of API | Validator URL must be the API base, not the UI port (e.g. 2000). |
| Canton not running or wrong URL | Local: Start Splice LocalNet. Other: Check validator and ledger URLs. |
| Bad party ID | Use full party ID (e.g. |
| Not enough CC | Check balance with |
| No private key for transfers | Create party with |
Error Reference
Wallet Errors
Error | Cause | Fix |
| Wallet not initialized | Run |
| Wallet not initialized or keychain denied | Run |
| Not enough USDC | Fund wallet or redeem referral code |
| Network or gas issue | Retry; check Base network status |
Referral Errors
Error | Cause | Fix |
| Code doesn't exist | Check code spelling (case-insensitive) |
| Code used up | Request a new code |
| Past expiration date | Request a new code |
| One redemption per wallet | Cannot redeem again |
| Treasury empty | Contact support |
TAP Errors
Error | Cause | Fix |
| No TAP agent | Call |
| Already have verification | Use |
| KYC/KYB rejected | Contact TAP registry support |
Domain Errors
Error | Cause | Fix |
| Already registered | Try different TLD or name |
| Bad characters in name | Use only a-z, 0-9, hyphens |
| tx_hash invalid | Check transaction completed on Base |
| Wallet doesn't own domain | Use wallet that purchased domain |
| Backend unreachable | Check |
Configuration
Environment Variables
MCP Server:
# Required for domain features
CLAWD_BACKEND_URL=https://clawd-domain-backend-production.up.railway.app
# TAP configuration
CLAWD_TAP_REGISTRY=https://tap-registry.visa.com/v1 # Production
CLAWD_TAP_MOCK_MODE=true # Demo mode (no real registry)
# Referral system (operators only)
CLAWD_TREASURY_PRIVATE_KEY=0x... # Treasury wallet for payoutsBackend (Railway deployment):
PORKBUN_API_KEY=pk1_... # From porkbun.com/account/api
PORKBUN_SECRET=sk1_... # From porkbun.com/account/api
TREASURY_ADDRESS=0x... # Your wallet to receive domain payments
PUBLIC_URL=https://... # Your Railway deployment URL
DATABASE_URL=sqlite:////tmp/clawd_domains.db # Railway uses /tmp
ENVIRONMENT=productionFull MCP Configuration
{
"mcpServers": {
"clawd-wallet": {
"command": "node",
"args": ["/path/to/unified-clawd-wallet-mcp/dist/mcp-server/index.js"],
"env": {
"CLAWD_BACKEND_URL": "https://clawd-domain-backend-production.up.railway.app",
"CLAWD_TAP_MOCK_MODE": "true"
}
}
}
}For Canton env vars, see Canton Network.
Architecture
┌─────────────────────────────────────────────────────────────┐
│ Claude Code / MCP Client │
└─────────────────────────┬───────────────────────────────────┘
│ MCP Protocol (stdio)
▼
┌─────────────────────────────────────────────────────────────┐
│ CLAWD Wallet MCP Server (27 tools) │
│ ├─ Wallet: balance, payments, history │
│ ├─ Referral: code redemption │
│ ├─ TAP: identity verification │
│ ├─ Domains: search, purchase, DNS │
│ └─ Canton: balance, holdings, transfers │
└──────────┬──────────────────────┬──────────────┬────────────┘
│ │ │
│ USDC on Base │ HTTPS │ Canton Ledger API
▼ ▼ ▼
┌──────────────────┐ ┌────────────────┐ ┌────────────────┐
│ Base Network │ │ Domain Backend │ │ Canton DevNet │
│ (x402 services) │ │ (Railway) │ │ (CIP-56) │
└──────────────────┘ └───────┬────────┘ └────────────────┘
│
▼
┌────────────────────┐
│ Porkbun API │
└────────────────────┘Security
Private keys: Stored in OS keychain (macOS Keychain, Windows Credential Manager, Linux libsecret)
Spend limits: $10/transaction, $50/day (configurable)
TAP credentials: Stored in
~/.clawd/tap/with 0600 permissionsPayment approval: All payments require explicit user approval in Claude Code
No secrets in code: All credentials via environment variables or keychain
Development
# Build
npm run build
# Initialize wallet (creates key in keychain + ~/.clawd/config.json)
npm run init
# Or, after npm link: clawd init
# Use clawd init --force to overwrite an existing wallet
# Watch mode
npm run dev
# Run MCP server directly
node dist/mcp-server/index.js
# Run backend locally
cd backend
python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
uvicorn src.main:app --port 8402 --reloadAfter Making Code Changes
Any time you modify TypeScript source files, you must rebuild before the changes take effect:
npm run buildThen restart your MCP client (e.g. Claude Code) so it picks up the new server binary.
Tip: Use
npm run dev(watch mode) during development to rebuild automatically on save. You still need to restart the MCP client to load the new binary.
Deploy Backend to Railway
cd backend
railway login
railway init
railway up
# Set environment variables in Railway dashboard:
# PORKBUN_API_KEY, PORKBUN_SECRET, TREASURY_ADDRESS, PUBLIC_URL, DATABASE_URLTroubleshooting
"Command not found" when starting MCP server
# Rebuild the project
npm run build
# Check the path in your MCP config matches your actual install location
ls /path/to/clawd-wallet/dist/mcp-server/index.jsTools not appearing in Claude Code
Restart Claude Code completely (not just reload)
Check MCP config syntax in
~/.claude.jsonTest server manually:
node dist/mcp-server/index.js
Domain purchase stuck at "pending"
Check payment transaction completed on BaseScan
Verify
tx_hashformat:0x+ 64 hex charactersCheck backend logs for Porkbun API errors
"Treasury not configured" on referral
Referral redemption requires a treasury wallet. For operators:
export CLAWD_TREASURY_PRIVATE_KEY=0x...API Reference
See docs/API.md for complete tool input/output schemas.
License
Apache-2.0
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/csmoove530/unified-clawd-wallet-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server