
Bitcoin MCP
A Model Context Protocol (MCP) server that provides Bitcoin tools for AI applications like Claude Desktop and Cursor, allowing them to interact with the Bitcoin Network and manage wallet operations.
what is Bitcoin MCP?
Bitcoin MCP is a Model Context Protocol (MCP) server that provides Bitcoin tools for AI applications, enabling them to interact with the Bitcoin Network and manage wallet operations.
how to use Bitcoin MCP?
To use Bitcoin MCP, set up a wallet using the setup_wallet
tool, and then utilize other tools like get_balance
and send_bitcoin
to manage your Bitcoin transactions and wallet status.
key features of Bitcoin MCP?
- Create and restore Bitcoin wallets
- Send Bitcoin transactions
- Retrieve wallet balances (onchain and offchain)
- Real-time Bitcoin price conversion
- Strongly typed wallet operations with comprehensive error handling
- Integration with @arklabs/wallet-sdk
use cases of Bitcoin MCP?
- Managing Bitcoin wallets for AI applications
- Sending and receiving Bitcoin transactions programmatically
- Real-time price conversion for Bitcoin in various applications
FAQ from Bitcoin MCP?
- Can Bitcoin MCP be used with any AI application?
Yes! Bitcoin MCP is designed to integrate with various AI applications that require Bitcoin functionalities.
- Is there a limit on the number of wallets I can create?
No, you can create as many wallets as needed, subject to the constraints of the Bitcoin network.
- What programming languages are supported?
Bitcoin MCP is built using TypeScript, but it can be integrated with any language that can make HTTP requests.
Bitcoin MCP
A Model Context Protocol (MCP) server that provides Bitcoin tools for AI applications like Claude Desktop and Cursor, allowing them to interact with the Bitcoin Network and manage wallet operations.
Overview
The Bitcoin MCP server extends any MCP client's capabilities by providing tools to do anything with Bitcoin:
- Create and restore Bitcoin and Ark wallets
- Send Bitcoin and Ark transactions
- Retrieve Bitcoin and Ark wallet balances
- Real-time Bitcoin price conversion
- Cache-optimized price fetching via blockchain.info
- Strongly typed wallet operations
- Comprehensive error handling and fallbacks
- Schema validation with Zod
- Integration with
@arklabs/wallet-sdk
Available Tools
setup_wallet
Create or restore a Bitcoin wallet:
{
action: "create" | "restore",
privateKey?: string,
network?: "bitcoin" | "testnet" | "signet" | "mutinynet",
arkServerUrl?: string,
esploraUrl?: string
}
get_wallet_status
Get the current wallet status and initialization state.
get_addresses
Get all wallet addresses.
get_balance
Get wallet balance with optional fiat conversion.
send_bitcoin
Send Bitcoin to an address:
{
address: string,
amount: number, // in satoshis
feeRate?: number // optional fee rate
}
Development
This project uses:
- pnpm - Package manager
- Vite - Build system
- Vitest - Testing framework
- TypeScript - Language
- Zod - Schema validation
Getting Started
- Install dependencies:
pnpm install
- Run tests:
pnpm test
- Build the project:
pnpm build
License
MIT License