# Blockchair MCP

> Blockchair gives you a universal search engine across 20+ blockchains, letting your agent query data from Bitcoin, Ethereum, Litecoin, and dozens more networks using natural language. You can inspect entire wallet histories, track specific token balances (like ERC-20), or filter massive datasets of transactions and blocks using SQL-like criteria.

## Overview
- **Category:** developer-tools
- **Price:** Free
- **Tags:** bitcoin, ethereum, blockchain-explorer, crypto-api, transaction-tracking

## Description

Need to check what's happening across multiple blockchains? This MCP connects your AI client directly to Blockchair, a universal search engine that treats every major chain—from Bitcoin to Ethereum—the same way. Instead of jumping between explorer websites, you just talk to it. Your agent retrieves real-time network stats, lets you inspect the full history and balance of any wallet address, or tracks specific token movements. You can even use advanced filters to pinpoint transactions based on fees or time ranges. By connecting Blockchair through Vinkius, you get access to this massive dataset from one place in your workflow. This capability means web3 developers can debug contract states without leaving their IDE, and data analysts can pull highly specific blockchain records for research instantly.

## Tools

### filter_blocks
Queries blocks based on detailed criteria, such as time ranges or minimum transaction counts.

### filter_transactions
Searches for transactions using advanced filters like fee amount or sort order.

### get_address
Retrieves the balance, transaction history, and UTXO set for a given wallet address.

### get_block
Fetches all specific details associated with one particular block hash.

### get_contract_calls
Inspects internal transactions that occurred within Ethereum smart contracts.

### get_erc20_token_address
Determines the specific balance of a named ERC-20 token for an address.

### get_blockchain_stats
Pulls general, real-time information about a specified blockchain network.

### get_transaction
Gathers all details for one specific transaction hash.

### get_xpub
Analyzes data associated with an entire HD wallet using its extended public key.

### push_transaction
Broadcasts a raw hex-encoded transaction directly onto the blockchain network.

### validate_address
Checks if an entered address format is valid for a given blockchain chain.

## Prompt Examples

**Prompt:** 
```
Show me the current stats for the Bitcoin network.
```

**Response:** 
```
I've retrieved the latest Bitcoin stats. The current block height is 834,291, with a difficulty of 79.35T. There have been over 980 million transactions recorded on the network to date.
```

**Prompt:** 
```
What is the balance and transaction history for Ethereum address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e?
```

**Response:** 
```
The address currently holds 12.5 ETH. I found 45 transactions in its history. The most recent transaction was a transfer of 1.2 ETH on 2024-03-15. Would you like to see the details of the last 5 transactions?
```

**Prompt:** 
```
Find Bitcoin transactions with a fee higher than 50,000 satoshis from the last 24 hours.
```

**Response:** 
```
I've filtered the Bitcoin transactions. I found 12 transactions matching your criteria. The highest fee observed was 120,500 satoshis for transaction hash 4a5e... Would you like the full list of hashes?
```

## Capabilities

### Analyze network health across chains
Retrieve live statistics like block height and difficulty for any supported blockchain.

### Inspect wallet balances and history
Get a comprehensive view of an address's current balance, full transaction record, and Unspent Transaction Outputs (UTXOs).

### Filter massive transaction datasets
Query millions of transactions or blocks using advanced criteria like minimum fee amount or time range.

### Trace specific token holdings
Determine the balance of a particular ERC-20 token associated with an address.

### Analyze full wallet keys
Retrieve data for an entire HD wallet using its extended public key (xpub).

## Use Cases

### Investigating a suspicious transfer
A researcher wants to know if a specific wallet address was used for multiple transfers. They use `get_address` and review the full transaction history, cross-referencing it with `filter_transactions` to find all movement over the last month.

### Debugging smart contract calls
A developer needs to see exactly how funds moved within a complex DeFi protocol. They use `get_contract_calls` and then verify the original sender's holdings using `get_xpub` on the involved keys.

### Building custom reporting dashboards
An analyst needs to report on network activity during a specific period. They use `filter_blocks` with time range parameters and then use `get_blockchain_stats` to provide context for the overall market health.

### Validating incoming addresses
A system needs to confirm if a user inputting an address is correct before sending funds. It runs `validate_address` first, and only proceeds with using `get_transaction` once the format passes.

## Benefits

- Get instant network health reports. Use `get_blockchain_stats` to check the difficulty and current block height for Bitcoin, Ethereum, or any supported chain, all in one prompt.
- Deep dive into wallets using `get_address`. You instantly see a wallet's balance, its entire transaction history, and even its UTXO set without clicking through multiple pages.
- Analyze complex asset movements. Use `get_erc20_token_address` to isolate the specific balance of a token (like USDC) attached to an address, rather than just seeing the native coin total.
- Filter massive data sets efficiently. Don't scroll endlessly; use `filter_transactions` or `filter_blocks` to query only the transactions that meet your criteria, like fees above 10k satoshis.
- Trace contract logic with precision. Use `get_contract_calls` to inspect what happens *inside* an Ethereum smart contract—seeing the internal calls is critical for debugging.

## How It Works

The bottom line is that your AI client handles all the complex querying across dozens of chains so you just get clean, actionable data in your chat window.

1. First, subscribe to this MCP and provide your private Blockchair API Key.
2. Next, prompt your AI client with a natural language query, such as asking for the current stats of Ethereum or finding transactions over a specific fee limit.
3. Your agent sends the request, and you get back structured data detailing block information, address balances, or transaction lists.

## Frequently Asked Questions

**How does Blockchair (Universal Blockchain Search Engine & API) MCP handle different chains?**
It treats them universally. You don't need separate tools for Bitcoin, Ethereum, or Litecoin; you just ask your agent what you want across the supported networks.

**Can I use Blockchair (Universal Blockchain Search Engine & API) MCP to check token balances?**
Yes. Use `get_erc20_token_address` to find a specific token's balance for an address, regardless of what native currency the blockchain uses.

**What if I need data from a very old block? Does Blockchair (Universal Blockchain Search Engine & API) MCP support it?**
The tool can query historical data. You use `filter_blocks` and provide the specific time range or transaction count you want to inspect.

**Is there a way to check if an address is real before querying it with Blockchair (Universal Blockchain Search Engine & API) MCP?**
Absolutely. Use `validate_address` first. This checks the format and validity of an address for a specific blockchain, preventing bad queries.

**Can I broadcast transactions using this MCP?**
Yes. If you have the raw hex-encoded data, use `push_transaction` to send it directly to the network.