Bitcoin UTXO MCP
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
An MCP server that tracks Bitcoin's Unspent Transaction Outputs (UTXO) and block statistics, giving AI agents direct access to essential on-chain data.
Features
- **Tools**:
- get_utxo: Retrieves UTXO details for a given Bitcoin address, including the number of UTXOs, total value in BTC, and transaction details.
- get_block_stats: Fetches transaction statistics for a specific Bitcoin block, including block hash, transaction count, total value, and block time.
- **Prompt**:
- analyze_bitcoin_flow: A reusable prompt template for LLMs to analyze Bitcoin funds flow, network health, and potential market impacts based on UTXO and block data.
Installation
Prerequisites
- **Python**: Version 3.10 or higher
- **uv**: A fast and modern Python package manager (installation instructions)
Setup
1. **Clone the Repository**:
2. **Install dependencies**:
3. **Install to Claude Desktop**:
Install the server as a Claude Desktop application:
Configuration file as a reference:
Replace /path/to/bitcoin-utxo-mcp with your actual installation path.
Usage
Available Tools and Prompts
- **Tools**:
- get_utxo(address: str): Returns UTXO details for a Bitcoin address, e.g., "Address 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa: 50 UTXOs, Total Value: 50.00000000 BTC, UTXO Details: ...".
- get_block_stats(block_height: int): Returns block statistics, e.g., "Block Height: 0, Block Hash: 000000000019d668..., Transactions: 1, Total Value: 50.00000000 BTC, Block Time: 1231006505".
- **Prompt**:
- analyze_bitcoin_flow(): Generates a prompt for LLMs to analyze UTXO and block data, e.g., "Analyze the provided Bitcoin UTXO and block data: What do the UTXO distributions indicate about funds flow? ...".
Example Interaction
Below are examples of natural language prompts you might use in an MCP-compatible client (e.g., Claude Desktop) and the corresponding outputs from the server, based on hypothetical Blockchain.com API responses.
1. **Get UTXO for a Bitcoin Address**:
- **Prompt**: "Show me the UTXO details for the Bitcoin genesis address."
- **Command**: get_utxo("1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa")
- **Output**:
2. **Get Block Statistics**:
- **Prompt**: "What's the transaction data for the Bitcoin genesis block?"