Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.aibtcdev/mcp-server

NPM · @AIBTC/MCP-SERVER · SCANNED SEP 21

Bitcoin-native MCP server for AI agents: BTC/STX wallets, DeFi yield, sBTC peg, NFTs, x402 payments.

Available components

+1 this week 83 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security99
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 56 of 196 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency48
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 4 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability81
  • AI-judged instruction clarity (excellent).Pass
  • Tool/resource definitions use about 11838 tokens (~85/item across 138 items; 138 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management87
  • Stability observed for 26 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 13 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "transfer_btc" implies "transfer" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 138 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the io.github.aibtcdev/mcp-server server?

io.github.aibtcdev/mcp-server runs locally as an npm package, launched with npx -y @aibtc/mcp-server. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · @aibtc/mcp-server

# add to Claude Code
claude mcp add aibtcdev-mcp-server -- npx -y @aibtc/mcp-server
// .cursor/mcp.json
{
  "mcpServers": {
    "aibtcdev-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@aibtc/mcp-server"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "aibtcdev-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@aibtc/mcp-server"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add aibtcdev-mcp-server -- npx -y @aibtc/mcp-server
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "aibtcdev-mcp-server": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@aibtc/mcp-server"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add aibtcdev-mcp-server --command npx --arg -y --arg @aibtc/mcp-server
# ~/.hermes/config.yaml
mcp_servers:
  aibtcdev-mcp-server:
    command: "npx"
    args: ["-y", "@aibtc/mcp-server"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "aibtcdev-mcp-server": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@aibtc/mcp-server"
      ]
    }
  }
}
# add to Vellum
assistant mcp add aibtcdev-mcp-server -t stdio -c npx -a -y @aibtc/mcp-server
// mcp.json
{
  "mcpServers": {
    "aibtcdev-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@aibtc/mcp-server"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 21 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 19 Sept 26 −2
    • Stability: pass → 0.80 functional
  • 18 Sept 26 0
    • Stability: 0.97 → pass security
  • 17 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.

  • 15 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 87 to 90. That category is still filling its 30-day observation window: 26 days of observed history at the previous scan, 27 at this one. The score rises as the window fills, whether or not the server changes.

  • 13 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.

  • 12 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 11 Sept 26 0
    • Stability: 0.97 → pass security
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 21 Sept 2026 · Analysed npm/@aibtc/mcp-server@1.17.0

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Dependencies 196 packages
Packages resolved 196
Stale 54
No linked repository 2
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 138 exposed · ~11,838 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
sbtc_get_balance ~38

Get the sBTC balance for a wallet address.

NameTypeReqDescription
addressstringWallet address to check. Uses configured wallet if not provided.

No output schema declared.

No examples provided.

sbtc_get_deposit_info ~24

Get information about how to deposit BTC to receive sBTC.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

sbtc_get_peg_info ~24

Get sBTC peg information including total supply and peg ratio.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

sbtc_transfer ~142

Transfer sBTC tokens to a recipient address. sBTC uses 8 decimals (same as Bitcoin). Example: To send 0.001 sBTC, use amount "100000" (satoshis).

NameTypeReqDescription
amountstringyesAmount in satoshis (0.00000001 sBTC). Example: '100000' for 0.001 sBTC
feestringOptional fee: 'low' | 'medium' | 'high' preset or micro-STX amount. If omitted, auto-estimated.
memostringOptional memo message
recipientstringyesThe recipient's Stacks address

No output schema declared.

No examples provided.

scaffold_x402_ai_endpoint ~430

Create a complete x402 paid AI API project with OpenRouter integration. This creates a NEW PROJECT FOLDER with everything needed to deploy a pay-per-use AI API: - Full Hono.js application with x402 payment middleware - OpenRouter integration for Claude, GPT-4, Llama, etc. - Ready for deployment to Cloudflare Workers ## What Gets Created A folder named `{projectName}` containing: - src/index.ts - Hono app with your x402-protected AI endpoints - src/x402-middleware.ts - Payment verification (uses x402-stacks library) - src/openrouter.ts - OpenRouter API client - wrangler.jsonc - Cloudflare Worker config - .dev.vars - Local dev variables (needs OPENROUTER_API_KEY) - README.md - Documentation ## AI Types - **chat**: General chat/Q&A - **completion**: Text completion - **summarize**: Summarize text - **translate**: Translate text - **custom**: Custom system prompt ## Quick Start After Generation ``` cd {projectName} npm install # Edit .dev.vars with RECIPIENT_ADDRESS and OPENROUTER_API_KEY npm run dev ```

NameTypeReqDescription
defaultModelstringDefault OpenRouter model for all endpoints (default: anthropic/claude-3-haiku)
endpointsarrayyesArray of AI endpoint configurations
facilitatorUrlstringCustom facilitator URL (default: https://facilitator.x402stacks.xyz)
networkstringNetwork for payments (default: mainnet)
outputDirstringyesDirectory where the project folder will be created (e.g., '/Users/me/projects' or '.')
projectNamestringyesProject name - a folder with this name will be created (e.g., 'my-ai-api')
recipientAddressstringStacks address to receive payments. If not provided, uses your configured wallet address or must be set in .dev.vars

No output schema declared.

No examples provided.

scaffold_x402_endpoint ~414

Create a complete x402 paid API project as a Cloudflare Worker. This creates a NEW PROJECT FOLDER with everything needed to deploy a pay-per-use API: - Full Hono.js application with x402 payment middleware - Ready for deployment to Cloudflare Workers - Based on production patterns from x402-api and stx402 ## What Gets Created A folder named `{projectName}` containing: - src/index.ts - Hono app with your x402-protected endpoints - src/x402-middleware.ts - Payment verification (uses x402-stacks library) - wrangler.jsonc - Cloudflare Worker config with staging/production envs - package.json - Dependencies including hono and x402-stacks - .dev.vars - Local dev variables (pre-filled if you have a wallet) - README.md - Documentation ## Pricing Tiers Use tiers for consistent pricing: - **simple/standard**: 0.001 STX - **ai**: 0.003 STX - **heavy_ai**: 0.01 STX - **storage_read**: 0.0005 STX - **storage_write**: 0.001 STX ## Quick Start After Generation ``` cd {projectName} npm install npm run dev ```

NameTypeReqDescription
endpointsarrayyesArray of endpoint configurations
facilitatorUrlstringCustom facilitator URL (default: https://facilitator.x402stacks.xyz)
networkstringNetwork for payments (default: mainnet)
outputDirstringyesDirectory where the project folder will be created (e.g., '/Users/me/projects' or '.')
projectNamestringyesProject name - a folder with this name will be created (e.g., 'my-x402-api')
recipientAddressstringStacks address to receive payments. If not provided, uses your configured wallet address or must be set in .dev.vars

No output schema declared.

No examples provided.

sip018_hash ~111

Compute the SIP-018 message hash without signing. Returns the full encoded hash, domain hash, and message hash. Useful for preparing data for on-chain verification or multi-sig coordination. Does not require an unlocked wallet.

NameTypeReqDescription
domainobjectyesDomain binding for the hash
messageobjectyesThe structured data as a JSON object. Use type hints for explicit types: {type: 'uint', value: 100}, {type: 'principal', value: 'SP...'}, etc.

No output schema declared.

No examples provided.

sip018_sign ~147

Sign structured Clarity data using SIP-018 standard. Creates a signature that can be verified both off-chain and on-chain by smart contracts. Use cases: meta-transactions, off-chain voting, permits, proving address control. Requires an unlocked wallet.

NameTypeReqDescription
domainobjectyesDomain binding for the signature. Prevents cross-app and cross-version replay.
messageobjectyesThe structured data to sign as a JSON object. Use type hints for explicit types: {type: 'uint', value: 100}, {type: 'principal', value: 'SP...'}, etc. Implicit conversion: strings->utf8, numbers->int…

No output schema declared.

No examples provided.

sip018_verify ~147

Verify a SIP-018 signature and recover the signer's address. Takes the verification hash (from sip018_sign or sip018_hash 'verification' field) and the signature, then recovers the public key and derives the signer's Stacks address.

NameTypeReqDescription
expectedSignerstringOptional: expected signer address to verify against. If provided, returns whether the signature is valid for this signer.
messageHashstringyesThe SIP-018 verification hash (from sip018_sign/sip018_hash 'verification' field). This is sha256(prefix || domainHash || messageHash).
signaturestringyesThe signature in RSV format (65 bytes hex from sip018_sign)

No output schema declared.

No examples provided.

stack_stx ~127

Lock STX for stacking to earn BTC rewards. Requires a Bitcoin address (hash) for receiving rewards.

NameTypeReqDescription
amountstringyesAmount of STX to stack (in micro-STX)
lockPeriodnumberyesNumber of reward cycles to lock (1-12)
poxAddressHashbytesstringyesBitcoin address hash (hex string)
poxAddressVersionnumberyesBitcoin address version (0 for P2PKH, 1 for P2SH, etc.)
startBurnHeightnumberyesBitcoin block height to start stacking

No output schema declared.

No examples provided.

stacks_sign_message ~87

Sign a plain text message using the Stacks message signing format. The message is prefixed with '\x17Stacks Signed Message:\n' before hashing (SIWS-compatible). Use cases: proving address ownership, authentication, sign-in flows. Requires an unlocked wallet.

NameTypeReqDescription
messagestringyesThe plain text message to sign. Will be prefixed with Stacks message prefix before signing.

No output schema declared.

No examples provided.

stacks_verify_message ~119

Verify a Stacks message signature and recover the signer's address. Takes the original message and signature, applies the Stacks prefix, and verifies. Compatible with SIWS (Sign In With Stacks) authentication flows.

NameTypeReqDescription
expectedSignerstringOptional: expected signer address to verify against. If provided, returns whether the signature is valid for this signer.
messagestringyesThe original plain text message that was signed.
signaturestringyesThe signature in RSV format (65 bytes hex from stacks_sign_message or wallet signature).

No output schema declared.

No examples provided.

transfer_btc ~193

Transfer BTC to a recipient address. Builds, signs, and broadcasts a Bitcoin transaction. Requires an unlocked wallet with BTC balance. By default, only uses cardinal UTXOs (safe to spend - no inscriptions). Set includeOrdinals=true to allow spending ordinal UTXOs (advanced users only).

NameTypeReqDescription
amountintegeryesAmount to send in satoshis (1 BTC = 100,000,000 satoshis)
feeRateFee rate: 'fast' (~10 min), 'medium' (~30 min), 'slow' (~1 hr), or number in sat/vB
includeOrdinalsbooleanInclude ordinal UTXOs (contains inscriptions). Default: false (cardinal only). WARNING: Setting this to true may destroy valuable inscriptions!
recipientstringyesBitcoin address to send to (bc1... for mainnet, tb1... for testnet)

No output schema declared.

No examples provided.

transfer_nft ~97

Transfer an NFT (SIP-009) to a recipient address.

NameTypeReqDescription
contractIdstringyesNFT collection contract ID
feestringOptional fee: 'low' | 'medium' | 'high' preset or micro-STX amount. If omitted, auto-estimated.
recipientstringyesThe recipient's Stacks address
tokenIdnumberyesToken ID of the NFT to transfer

No output schema declared.

No examples provided.

transfer_stx ~166

Transfer STX tokens to a recipient address. Signs and broadcasts the transaction. Example: To send 2 STX, use amount "2000000" (micro-STX). 1 STX = 1,000,000 micro-STX

NameTypeReqDescription
amountstringyesAmount in micro-STX (1 STX = 1,000,000 micro-STX). Example: '2000000' for 2 STX
feestringOptional fee: 'low' | 'medium' | 'high' preset or micro-STX amount. If omitted, auto-estimated.
memostringOptional memo message to include with the transfer
recipientstringyesThe recipient's Stacks address (starts with SP or ST)

No output schema declared.

No examples provided.

transfer_token ~145

Transfer any SIP-010 token to a recipient address. Supports well-known tokens by symbol: sBTC, USDCx, ALEX, DIKO Or use the full contract ID.

NameTypeReqDescription
amountstringyesAmount in smallest unit (depends on token decimals)
feestringOptional fee: 'low' | 'medium' | 'high' preset or micro-STX amount. If omitted, auto-estimated.
memostringOptional memo message (max 34 bytes)
recipientstringyesThe recipient's Stacks address
tokenstringyesToken symbol (e.g., 'USDCx') or contract ID

No output schema declared.

No examples provided.

wallet_create ~113

Create a new wallet for the agent with a generated BIP39 24-word mnemonic. The wallet is encrypted locally and stored in ~/.aibtc/. IMPORTANT: Save the mnemonic securely - it will only be shown once!

NameTypeReqDescription
namestringyesName for the wallet (e.g., 'main', 'trading')
networkstringNetwork for the wallet (default: current network)
passwordstringyesPassword to protect the wallet (minimum 8 characters) - WARNING: sensitive value

No output schema declared.

No examples provided.

wallet_delete ~72

Permanently delete a wallet. WARNING: This cannot be undone! Make sure you have backed up your mnemonic.

NameTypeReqDescription
confirmstringyesType 'DELETE' to confirm deletion
passwordstringyesWallet password for confirmation - WARNING: sensitive value
walletIdstringyesWallet ID to delete

No output schema declared.

No examples provided.

wallet_export ~89

Export the mnemonic phrase for a wallet. WARNING: Only use this in a secure environment! Anyone with the mnemonic can access your funds.

NameTypeReqDescription
confirmstringyesType 'I_UNDERSTAND_THE_RISKS' to confirm
passwordstringyesWallet password - WARNING: sensitive value
walletIdstringWallet ID to export (uses active wallet if not specified)

No output schema declared.

No examples provided.

wallet_import ~106

Import an existing wallet for the agent using a BIP39 mnemonic phrase. The wallet is encrypted locally and stored in ~/.aibtc/.

NameTypeReqDescription
mnemonicstringyes24-word BIP39 mnemonic phrase - WARNING: sensitive value
namestringyesName for the wallet
networkstringNetwork for the wallet (default: current network)
passwordstringyesPassword to protect the wallet (minimum 8 characters) - WARNING: sensitive value

No output schema declared.

No examples provided.

wallet_list ~18

List all wallets available for the agent to use.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

wallet_lock ~20

Lock the agent's wallet, clearing sensitive data from memory.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

wallet_rotate_password ~141

Change the password for a wallet's encrypted keystore. Performs an atomic operation: backs up the keystore, re-encrypts with the new password, verifies the round-trip, then cleans up. If anything fails, the original keystore is restored. If the wallet is currently unlocked, it will be locked after rotation (requires re-unlock with new password).

NameTypeReqDescription
newPasswordstringyesNew password (minimum 8 characters) - WARNING: sensitive value
oldPasswordstringyesCurrent wallet password - WARNING: sensitive value
walletIdstringWallet ID to rotate password for (uses active wallet if not specified)

No output schema declared.

No examples provided.

wallet_set_timeout ~48

Set how long the agent's wallet stays unlocked before automatically locking. Set to 0 to disable auto-lock.

NameTypeReqDescription
minutesnumberyesMinutes until auto-lock (0 = never auto-lock)

No output schema declared.

No examples provided.

wallet_status ~31

Get the agent's wallet status - whether it has a wallet, if it's unlocked, and what it can do.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

wallet_switch ~40

Switch to a different wallet. Note: The new wallet will need to be unlocked before use.

NameTypeReqDescription
walletIdstringyesWallet ID to switch to

No output schema declared.

No examples provided.

wallet_unlock ~63

Unlock the agent's wallet to enable transactions. If no wallet ID is provided, unlocks the active wallet.

NameTypeReqDescription
passwordstringyesWallet password - WARNING: sensitive value
walletIdstringWallet ID to unlock (uses active wallet if not specified)

No output schema declared.

No examples provided.

yield_hunter_configure ~83

Configure yield hunter settings. Adjust the deposit threshold, reserve, or check interval. Changes take effect on the next check cycle.

NameTypeReqDescription
intervalnumberCheck interval in seconds
reservestringsBTC (in sats) to keep liquid, never deposited
thresholdstringMinimum sBTC balance (in sats) before depositing

No output schema declared.

No examples provided.

yield_hunter_start ~237

Start autonomous yield hunting. This will: 1. Monitor your wallet for sBTC 2. Automatically deposit sBTC to Zest Protocol when balance exceeds threshold 3. Keep a configurable reserve (default: 0, deposits all sBTC) 4. Wait for transaction confirmations before proceeding 5. Retry failed transactions with exponential backoff 6. Run continuously until stopped Requires an unlocked wallet (use wallet_unlock first). Only works on mainnet (Zest Protocol is mainnet-only). Note: Stacks transaction fees are paid in STX, not sBTC. Default settings: - Deposit threshold: 10,000 sats (0.0001 sBTC) - Reserve: 0 sats (deposit all sBTC to maximize yield) - Check interval: 10 minutes

NameTypeReqDescription
intervalnumberCheck interval in seconds. Default: 600 (10 minutes)
reservestringsBTC (in sats) to keep liquid, never deposited. Default: 0 (deposit all)
thresholdstringMinimum sBTC balance (in sats) before depositing. Default: 10000

No output schema declared.

No examples provided.

yield_hunter_status ~49

Get current yield hunter status. Shows: - Whether yield hunting is active - Current configuration - Statistics (checks run, deposits made) - Recent activity logs - Current Zest position

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

yield_hunter_stop ~34

Stop autonomous yield hunting. Stops the background process that monitors and deposits sBTC. Your existing Zest positions remain untouched.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

zest_borrow ~108

Borrow assets from Zest Protocol. Borrows assets against your supplied collateral. Ensure you have sufficient collateral to maintain a healthy position. You can use the asset symbol (e.g., 'aeUSDC') or full contract ID. Note: Zest Protocol is only available on mainnet.

NameTypeReqDescription
amountstringyesAmount to borrow (in smallest units)
assetstringyesAsset symbol (e.g., 'stSTX', 'aeUSDC') or full contract ID

No output schema declared.

No examples provided.

zest_claim_rewards ~94

Claim accumulated rewards from Zest Protocol incentives program. Currently, sBTC suppliers earn wSTX rewards. This function claims any accumulated rewards and sends them to your wallet. You can use the asset symbol (e.g., 'sBTC') or full contract ID. Note: Zest Protocol is only available on mainnet.

NameTypeReqDescription
assetstringAsset you supplied to earn rewards (default: sBTC)

No output schema declared.

No examples provided.

zest_get_position ~102

Get user's lending position on Zest Protocol. Returns supplied and borrowed amounts for a specific asset. You can use the asset symbol (e.g., 'stSTX') or full contract ID. Note: Zest Protocol is only available on mainnet.

NameTypeReqDescription
addressstringUser address (uses wallet if not specified)
assetstringyesAsset symbol (e.g., 'stSTX', 'aeUSDC') or full contract ID

No output schema declared.

No examples provided.

zest_list_assets ~70

List all supported assets on Zest Protocol. Returns the list of assets that can be supplied, borrowed, or used as collateral. Each asset includes its symbol, name, and contract ID. Use this to discover available assets before supplying or borrowing. Note: Zest Protocol is only available on mainnet.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

zest_repay ~117

Repay borrowed assets to Zest Protocol. Repays borrowed assets plus accrued interest. You can use the asset symbol (e.g., 'aeUSDC') or full contract ID. Note: Zest Protocol is only available on mainnet.

NameTypeReqDescription
amountstringyesAmount to repay (in smallest units)
assetstringyesAsset symbol (e.g., 'stSTX', 'aeUSDC') or full contract ID
onBehalfOfstringOptional: repay on behalf of another address

No output schema declared.

No examples provided.

zest_supply ~117

Supply assets to Zest Protocol lending pool. Deposits assets to earn interest from borrowers. You can use the asset symbol (e.g., 'stSTX') or full contract ID. Note: Zest Protocol is only available on mainnet.

NameTypeReqDescription
amountstringyesAmount to supply (in smallest units)
assetstringyesAsset symbol (e.g., 'stSTX', 'aeUSDC') or full contract ID
onBehalfOfstringOptional: supply on behalf of another address

No output schema declared.

No examples provided.

zest_withdraw ~99

Withdraw assets from Zest Protocol lending pool. Redeems supplied assets plus earned interest. You can use the asset symbol (e.g., 'stSTX') or full contract ID. Note: Zest Protocol is only available on mainnet.

NameTypeReqDescription
amountstringyesAmount to withdraw (in smallest units)
assetstringyesAsset symbol (e.g., 'stSTX', 'aeUSDC') or full contract ID

No output schema declared.

No examples provided.

Common questions

What is the io.github.aibtcdev/mcp-server server?

io.github.aibtcdev/mcp-server is listed in the public MCP registry as io.github.aibtcdev/mcp-server. Bitcoin-native MCP server for AI agents: BTC/STX wallets, DeFi yield, sBTC peg, NFTs, x402 payments. This page covers its npm package (@aibtc/mcp-server).

Is the io.github.aibtcdev/mcp-server server safe to use?

io.github.aibtcdev/mcp-server scores 83 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 21 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.aibtcdev/mcp-server server expose?

io.github.aibtcdev/mcp-server exposes 138 tools: get_btc_balance, get_btc_fees, get_btc_utxos, transfer_btc, get_cardinal_utxos, and 133 more. Their descriptions and schemas cost roughly 11,838 tokens of context every time the server is loaded.

Is the io.github.aibtcdev/mcp-server server still maintained?

io.github.aibtcdev/mcp-server is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the io.github.aibtcdev/mcp-server server under?

io.github.aibtcdev/mcp-server declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.