Server data from the Official MCP Registry
49 Bitcoin tools for AI agents: fees, mempool, blocks, mining, price. Zero config.
About
49 Bitcoin tools for AI agents: fees, mempool, blocks, mining, price. Zero config.
Security Report
Valid MCP server (1 strong, 3 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry.
5 files analyzed · 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
What You'll Need
Set these up before or after installing:
Environment variable: BITCOIN_RPC_HOST
Environment variable: BITCOIN_RPC_PORT
Environment variable: BITCOIN_NETWORK
Environment variable: SATOSHI_API_URL
Environment variable: SATOSHI_API_KEY
How to Install
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-bortlesboat-bitcoin-mcp": {
"env": {
"BITCOIN_RPC_HOST": "your-bitcoin-rpc-host-here",
"BITCOIN_RPC_PORT": "your-bitcoin-rpc-port-here"
},
"args": [
"bitcoin-mcp"
],
"command": "uvx"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
bitcoin-mcp
Give any AI agent Bitcoin superpowers — fee intelligence, mempool analysis, and 50 tools backed by your Bitcoin node or compatible API.
50 standard tools · 6 prompts · 8 resources · Bitcoin Core or compatible API backend · MIT licensed
If bitcoin-mcp is useful to you, consider giving it a star — it helps others discover the project.
pip install bitcoin-mcp
bitcoin-mcp needs a Bitcoin data backend. It auto-detects a local Bitcoin Core/Knots node from its cookie or RPC settings. Without a local node, set SATOSHI_API_URL to a compatible deployment.
Service status: the public Satoshi API previously hosted at
bitcoinsapi.comis paused and should not be treated as a working default. Use a local node or an explicitly configured compatible API.
Quick Start
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"bitcoin": {
"command": "uvx",
"args": ["bitcoin-mcp"]
}
}
}
Claude Code
claude mcp add bitcoin -- uvx bitcoin-mcp
Cursor
Add to .cursor/mcp.json:
{
"mcpServers": {
"bitcoin": {
"command": "uvx",
"args": ["bitcoin-mcp"]
}
}
}
VS Code
Add to .vscode/mcp.json:
{
"servers": {
"bitcoin": {
"command": "uvx",
"args": ["bitcoin-mcp"]
}
}
}
Zed
Add to your Zed settings.json under context_servers:
{
"context_servers": {
"bitcoin": {
"command": "uvx",
"args": ["bitcoin-mcp"]
}
}
}
See the Zed MCP docs for the current settings location and custom server flow.
Docker
docker build -t bitcoin-mcp .
docker run -i bitcoin-mcp
Or with docker compose:
docker compose up
Pass environment variables to connect to a local Bitcoin Core node or a compatible API:
docker run -i -e BITCOIN_RPC_HOST=host.docker.internal -e BITCOIN_RPC_PORT=8332 bitcoin-mcp
# or
docker run -i -e SATOSHI_API_URL=https://your-api.example bitcoin-mcp
Ask whether to send Bitcoin now
Use this as the first useful activation path after install:
"I need to send a Bitcoin transaction today. Use bitcoin-mcp to decide whether to send now or wait, and show the fee rate you used."
Expected path:
- The agent calls
get_fee_recommendation. - The answer gives a clear send now or wait recommendation with fee rates in sat/vB.
- If the backend is unavailable, configure a local node or set
SATOSHI_API_URLbefore retrying.
After it works, Star this repo and share a short showcase with the prompt, tool call, and outcome so other Bitcoin agent builders can see the path.
Agent Integration
For repos that need Bitcoin tools, add bitcoin-mcp to the agent's MCP config and configure one of its supported backends:
- Local Bitcoin Core/Knots RPC settings:
BITCOIN_RPC_HOST,BITCOIN_RPC_PORT, and optional credentials or datadir - Compatible remote API:
SATOSHI_API_URLand, when required,SATOSHI_API_KEY - Satoshi API source and integration reference: https://github.com/Bortlesboat/bitcoin-api/blob/main/docs/AGENT_INTEGRATION.md
Generated HTTP examples should use canonical Satoshi API /api/v1 paths.
Why bitcoin-mcp?
- Fee intelligence that saves real money — know the cheapest time to send, compare fee tiers, estimate exact costs before broadcasting
- Backend choice — use your own Bitcoin Core/Knots node or an explicitly configured compatible API
- First Bitcoin MCP server on the Anthropic Registry
Top Use Cases
Ask your AI agent:
| Prompt | What it does |
|---|---|
| "What's the cheapest time to send Bitcoin today?" | Fee recommendation with savings breakdown |
| "Analyze the current mempool congestion" | Real-time mempool depth, fee tiers, pending tx count |
| "How much would I save waiting 6 blocks vs next block?" | Side-by-side fee comparison across confirmation targets |
| "Search for this transaction: abc123..." | Full transaction decode with inscription detection |
| "Give me a situation summary of Bitcoin right now" | Price, fees, mempool, mining, difficulty — one call |
Full Tool Reference
Fee Intelligence
| Tool | Description |
|---|---|
get_fee_recommendation | Optimal fee rate with urgency tiers and savings tips |
get_fee_estimates | Fee estimates across all confirmation targets |
estimate_smart_fee | Fee estimate for a specific confirmation target |
compare_fee_estimates | Side-by-side comparison of fee sources |
estimate_transaction_cost | Exact cost estimate for a transaction before sending |
Blocks & Transactions
| Tool | Description |
|---|---|
analyze_block | Deep analysis of any block by height or hash |
get_block_stats | Statistical breakdown of a block |
get_block_count | Current chain height |
compare_blocks | Compare two blocks side by side |
search_blocks | Search a range of blocks |
analyze_transaction | Full transaction analysis with inscription detection |
decode_raw_transaction | Decode a raw transaction hex |
send_raw_transaction | Broadcast a signed transaction |
check_utxo | Check if a UTXO is spent or unspent |
Mempool
| Tool | Description |
|---|---|
analyze_mempool | Full mempool analysis — depth, fees, congestion |
get_mempool_info | Mempool size, bytes, fee floor |
get_mempool_entry | Details for a specific unconfirmed transaction |
get_mempool_ancestors | Ancestor chain for a mempool transaction |
Mining
| Tool | Description |
|---|---|
get_mining_info | Current mining difficulty, hashrate, block reward |
analyze_next_block | Preview of the next block template |
get_mining_pool_rankings | Top mining pools by recent blocks |
get_difficulty_adjustment | Time and percentage of next difficulty change |
get_halving_countdown | Blocks and estimated time until next halving |
Network & Status
| Tool | Description |
|---|---|
get_blockchain_info | Chain state, verification progress, softfork status |
get_network_info | Node version, connections, relay info |
get_node_status | Connection status and node health |
get_peer_info | Connected peer details |
get_chain_tips | Active and stale chain tips |
get_chain_tx_stats | Transaction throughput over N blocks |
get_utxo_set_info | UTXO set size and total supply |
get_supply_info | Circulating supply, inflation rate, percent mined |
get_situation_summary | Aggregated overview — price, fees, mempool, mining |
get_btc_price | Current BTC/USD price |
get_market_sentiment | Fear/greed index and market indicators |
Address & UTXO
| Tool | Description |
|---|---|
get_address_utxos | UTXOs for an address |
validate_address | Validate and classify a Bitcoin address |
Indexed Address (requires blockchain indexer)
| Tool | Description |
|---|---|
get_address_balance | Total received/sent/balance, tx count, first/last seen |
get_address_history | Paginated transaction history with net value change |
get_address_transactions | Transaction history with per-transaction value details |
get_indexed_transaction | Enriched tx with resolved input addresses + spent status |
get_indexer_status | Sync progress, ETA, blocks/sec |
Security
| Tool | Description |
|---|---|
analyze_psbt_security | Security analysis of a Partially Signed Bitcoin Transaction |
explain_inscription_listing_security | Security guide for ordinal inscription listings |
Utility
| Tool | Description |
|---|---|
search_blockchain | Universal search — address, txid, block hash, or height |
generate_keypair | Generate a new Bitcoin keypair |
explain_script | Decode and explain a Bitcoin script |
decode_bolt11_invoice | Decode a Lightning Network BOLT11 invoice |
describe_rpc_command | Help text for any Bitcoin Core RPC command |
list_rpc_commands | List all available RPC commands |
decode_xpub | Decode and inspect an extended public key |
Optional Remote API Tool
query_remote_api is registered only when SATOSHI_API_URL is set and the l402 extra is installed. It queries canonical /api/v1 routes on that explicitly configured endpoint.
Configuration
Configure either a local Bitcoin Core/Knots node or a compatible remote API. If neither is available, bitcoin-mcp exits its connection check with a setup error instead of silently selecting an unavailable public service.
CLI Flags
bitcoin-mcp supports the following runtime flags:
| Flag | Values | Default | Description |
|---|---|---|---|
--transport | stdio, sse, streamable-http | stdio | MCP transport to run |
--host | hostname / IP | 127.0.0.1 for HTTP transports | Bind host for sse and streamable-http |
--port | integer | 8000 for HTTP transports | Bind port for sse and streamable-http |
--log-level | DEBUG, INFO, WARNING, ERROR | INFO | Server log verbosity |
Example:
bitcoin-mcp --transport sse --host 127.0.0.1 --port 8000 --log-level DEBUG
| Variable | Description | Default |
|---|---|---|
BITCOIN_RPC_HOST | Bitcoin Core RPC host | 127.0.0.1 |
BITCOIN_RPC_PORT | Bitcoin Core RPC port | Auto by network |
BITCOIN_NETWORK | mainnet, testnet, signet, or regtest | mainnet |
SATOSHI_API_URL | Compatible Satoshi API base URL | None |
SATOSHI_API_KEY | API key for authenticated access | None |
To connect to a local Bitcoin Core node:
{
"mcpServers": {
"bitcoin": {
"command": "uvx",
"args": ["bitcoin-mcp"],
"env": {
"BITCOIN_RPC_HOST": "127.0.0.1",
"BITCOIN_RPC_PORT": "8332"
}
}
}
}
Prompts & Resources
6 built-in prompts for common workflows:
analyze_fee_environment, investigate_transaction, monitor_mempool_fees, taproot_adoption_report, network_health_report, track_transaction
8 resources for context injection:
bitcoin://connection/status, bitcoin://node/status, bitcoin://fees/current, bitcoin://fees/history, bitcoin://mempool/snapshot, bitcoin://protocol/script-opcodes, bitcoin://protocol/address-types, bitcoin://protocol/sighash-types
Links
- Satoshi API source — optional compatible backend implementation (public hosted service currently paused)
- Anthropic MCP Registry —
io.github.Bortlesboat/bitcoin-mcp - PyPI
- GitHub
- Full tool documentation
Examples
See the examples/ folder for documented usage patterns:
- Fee Analysis — find optimal send timing
- Mempool Monitor — track congestion
- Transaction Investigation — decode and analyze transactions
- Block Analysis — inspect and compare blocks
Support This Project
bitcoin-mcp is free, open-source Bitcoin infrastructure. Support development through OpenSats.
Contributing
Contributions are welcome. See CONTRIBUTING.md for guidelines, including how to add new tools and the PR checklist.
Please report security vulnerabilities privately — see SECURITY.md.
About
bitcoin-mcp is created and maintained by Andrew Barnes, bridging AI agents and Bitcoin infrastructure through the Model Context Protocol.
Related projects:
- Satoshi API — Bitcoin fee intelligence API, 108 endpoints, usable as a self-hosted compatible backend
- ChainPulse — AI-powered Bitcoin network intelligence CLI
- BAIP-1 — Bitcoin Agent Identity Protocol
- bitcoin-fee-observatory — Fee market analytics dashboard
License
Reviews
No reviews yet
Be the first to review this server!
More Finance MCP Servers
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
MarkItDown
Freeby Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption
FinAgent
Freeby mcp-marketplace · Finance
Free stock data and market news for any MCP-compatible AI assistant.
Google Workspace MCP
Freeby Taylorwilsdon · Productivity
Control Gmail, Calendar, Docs, Sheets, Drive, and more from your AI
