AIBTC Bitcoin Wallet
by @whoabuddy
Bitcoin L1 wallet for agents - check balances, send BTC, manage UTXOs. Extends to Stacks L2 (STX, DeFi) and Pillar smart wallets (sBTC yield).
clawhub install aibtc-bitcoin-walletπ About This Skill
name: aibtc-bitcoin-wallet description: Bitcoin L1 wallet for agents - check balances, send BTC, manage UTXOs. Extends to Stacks L2 (STX, DeFi) and Pillar smart wallets (sBTC yield). license: MIT metadata: author: aibtcdev version: 1.14.2 npm: "@aibtc/mcp-server" github: https://github.com/aibtcdev/aibtc-mcp-server
AIBTC Bitcoin Wallet
A skill for managing Bitcoin L1 wallets with optional Pillar smart wallet and Stacks L2 DeFi capabilities.
Install
One-command installation:
npx @aibtc/mcp-server@latest --install
For testnet:
npx @aibtc/mcp-server@latest --install --testnet
Quick Start
Check Balance
Get your Bitcoin balance:
"What's my BTC balance?"
Uses get_btc_balance - returns total, confirmed, and unconfirmed balances.
Check Fees
Get current network fee estimates:
"What are the current Bitcoin fees?"
Uses get_btc_fees - returns fast (~10 min), medium (~30 min), and slow (~1 hr) rates in sat/vB.
Send BTC
Transfer Bitcoin to an address:
"Send 50000 sats to bc1q..."
"Transfer 0.001 BTC with fast fees to bc1q..."
Uses transfer_btc - requires an unlocked wallet.
Wallet Setup
Before sending transactions, set up a wallet:
1. Create new wallet: wallet_create - generates encrypted BIP39 mnemonic
2. Import existing: wallet_import - import from mnemonic phrase
3. Unlock for use: wallet_unlock - required before transactions
Wallets are stored encrypted at ~/.aibtc/.
Tool Reference
Read Operations
| Tool | Description | Parameters |
|------|-------------|------------|
| get_btc_balance | Get BTC balance | address (optional; requires unlocked wallet if omitted) |
| get_btc_fees | Get fee estimates | None |
| get_btc_utxos | List UTXOs | address (optional; requires unlocked wallet if omitted), confirmedOnly |
Write Operations (Wallet Required)
| Tool | Description | Parameters |
|------|-------------|------------|
| transfer_btc | Send BTC | recipient, amount (sats), feeRate |
Wallet Management
| Tool | Description |
|------|-------------|
| wallet_create | Generate new encrypted wallet |
| wallet_import | Import wallet from mnemonic |
| wallet_unlock | Unlock wallet for transactions |
| wallet_lock | Lock wallet (clear from memory) |
| wallet_list | List available wallets |
| wallet_switch | Switch active wallet |
| wallet_status | Get wallet/session status |
Units and Addresses
Amounts: Always in satoshis (1 BTC = 100,000,000 satoshis)
Addresses:
bc1... (native SegWit)tb1...Fee Rates: "fast", "medium", "slow", or custom sat/vB number
Example Workflows
Daily Balance Check
1. "What's my BTC balance?"
2. "Show my recent UTXOs"
3. "What are current fees?"
Send Payment
1. "Unlock my wallet" (provide password)
2. "Send 100000 sats to bc1qxyz... with medium fees"
3. "Lock my wallet"
Multi-Wallet Management
1. "List my wallets"
2. "Switch to trading wallet"
3. "Unlock it"
4. "Check balance"
Progressive Layers
This skill focuses on Bitcoin L1. Additional capabilities are organized by layer:
Stacks L2 (Layer 2)
Bitcoin L2 with smart contracts and DeFi:
See: references/stacks-defi.md
Pillar Smart Wallet (Layer 3)
sBTC smart wallet with yield automation:
See: references/pillar-wallet.md
Bitcoin Inscriptions
Inscribe and retrieve digital artifacts on Bitcoin:
See: references/inscription-workflow.md
x402 Paid APIs
Pay-per-use APIs with automatic micropayments on Stacks L2:
list_x402_endpointsprobe_x402_endpointexecute_x402_endpoint (safe-by-default β probes first)send_inbox_message (use this instead of execute_x402_endpoint for inbox)scaffold_x402_endpoint and scaffold_x402_ai_endpointAlways probe before executing paid endpoints. Never call execute_x402_endpoint with autoApprove: true without checking cost first.
send_inbox_message β dedicated tool for aibtc.com inbox messages:
recipientBtcAddress (bc1...), recipientStxAddress (SP...), content (max 500 chars), paymentTxid (optional)See: references/stacks-defi.md for endpoint catalog See: references/x402-inbox.md for inbox-specific flow details
Genesis Lifecycle
Agent identity and reputation on Bitcoin and Stacks:
See: references/genesis-lifecycle.md
Troubleshooting
"Wallet not unlocked"
Run wallet_unlock with your password before sending transactions.
"Insufficient balance"
Check get_btc_balance - you need enough BTC for amount + fees.
"Invalid address"
Ensure address matches network:
bc1tb1See: references/troubleshooting.md
More Information
*This skill follows the Agent Skills open specification.*
π‘ Examples
Check Balance
Get your Bitcoin balance:
"What's my BTC balance?"
Uses get_btc_balance - returns total, confirmed, and unconfirmed balances.
Check Fees
Get current network fee estimates:
"What are the current Bitcoin fees?"
Uses get_btc_fees - returns fast (~10 min), medium (~30 min), and slow (~1 hr) rates in sat/vB.
Send BTC
Transfer Bitcoin to an address:
"Send 50000 sats to bc1q..."
"Transfer 0.001 BTC with fast fees to bc1q..."
Uses transfer_btc - requires an unlocked wallet.
π Tips & Best Practices
"Wallet not unlocked"
Run wallet_unlock with your password before sending transactions.
"Insufficient balance"
Check get_btc_balance - you need enough BTC for amount + fees.
"Invalid address"
Ensure address matches network:
bc1tb1