MCP区块链扫描器
用于鲸鱼检测和区块链分析的多链MCP服务器。使用 克劳德代码, 克劳德桌面版, GPT法典,以及任何兼容MCP的客户端。
支撑链
| 链 | 符号 | 链ID | API | 自由层 |
|---|---|---|---|---|
| 以太坊 | ETH | 1 | Etherscan V2 | 是 |
| BNB智能链 | BNB | 56 | Etherscan V2 | 仅限付费计划 |
扩展就绪
该架构支持添加任何EVM链。这些是预先配置的,但在中被注释掉了 src/core/chains.py:
| 链 | 符号 | 链ID | 需要API密钥 |
|---|---|---|---|
| 多边形 | MATIC | 137 | POLYGONSCAN_API_KEY |
| Arbitrum One | 以太坊 | 42161 | ARBISCAN_API_KEY |
| 基础 | 以太坊 | 8453 | BASESCAN_API_KEY |
要启用,请取消注释中的链配置 chains.py 并将API密钥添加到 .env.
快速开始
# 1. Setup
make setup
cp .env.example .env
# Edit .env with your API keys
# 2. Configure MCP client
make config-claude # For Claude Desktop
make config-codex # For GPT Codex
# 3. Restart your MCP client可用工具
| 工具 | 说明 |
|---|---|
check_balance | 获取本地代币余额 |
get_transactions | 交易历史 |
get_token_transfers | ERC20/BEP20转账 |
get_contract_abi | 已验证合约ABI |
get_gas_prices | 当前天然气价格 |
get_native_price | ETH/BNB价格(美元和BTC) |
analyze_whale | 带指标的完整鲸鱼分析 |
detect_whale_class | 鲸鱼快速分类 |
compare_whales | 比较多个地址 |
discover_whale_movements | 追踪大动作 |
discover_top_whales | 通过网络分析找到鲸鱼 |
track_exchange_whales | 监控外汇存款/取款 |
list_supported_chains | 显示可用链 |
所有工具都接受 chain 参数: ethereum (默认)或 bsc.
例子
Check balance on Ethereum: 0xbe0eb53f46cd790cd13851d5eff43d12404d33e8
Analyze whale on BSC: 0xf977814e90da44bfa03b6295a0616a897441acec
Track whale movements above 1000 BNB on BSC
Compare whales: 0xde0b295669a9fd93d5f28d9ec85e40f4cb697bae, 0xbe0eb53f46cd790cd13851d5eff43d12404d33e8鲸鱼分类
| 类别 | 余额 | 描述 |
|---|---|---|
| MEGA WHALE | >=10000个代币 | 机构级持有 |
| 大型商场 | 1000-10000 | 主要市场参与者 |
| 中等价位 | 100-1000 | 重要持股人 |
| 小码头 | 10-100 | 位置显著 |
| SHRIMP | \<10 | 零售持有者 |
建筑
┌─────────────────────────────────────────────────────┐
│ MCP Server (FastMCP) - 13 Tools │
└──────────────────────┬──────────────────────────────┘
│
┌──────────────┴──────────────┐
│ │
BlockchainService WhaleDetector
(multi-chain API) (analysis engine)
│ │
│ async httpx (timeout=30s) │ classify, score,
│ rate-limited (5 req/s) │ discover, track
│ │
└──────────────┬──────────────┘
│
Etherscan V2 API
(chainid routing)src/core/
├── server.py # MCP tool definitions (13 tools)
├── blockchain_service.py # Multi-chain API client
├── whale_detector.py # Whale analysis engine
├── chains.py # Chain registry + known addresses
├── validators.py # Input validation
└── __init__.py # Public API exports添加新链
编辑 src/core/chains.py 并添加到 CHAIN_REGISTRY:
CHAIN_REGISTRY["polygon"] = ChainConfig(
name="Polygon",
symbol="MATIC",
api_url="https://api.polygonscan.com/api",
api_key_env="POLYGONSCAN_API_KEY",
explorer_url="https://polygonscan.com",
chain_id=137,
)使用Etherscan V2 API的链(api.etherscan.io/v2/api)共享相同的API密钥,并使用 chainid 参数。具有自己的API(Polygonscan、Arbiscan、Basescan)的链需要单独的API密钥。
可选择添加已知的whale并交换地址 KNOWN_WHALES 和 EXCHANGE_ADDRESSES 对新链进行更丰富的分析。
发出命令
make setup # Create venv, install deps
make run # Start MCP server
make test # Run pytest suite
make lint # Check code style (ruff)
make format # Auto-format + fix
make check # Verify config
make clean # Remove venv
make config-claude # Show Claude Desktop config
make config-codex # Show Codex config配置
# .env
ETHERSCAN_API_KEY=your_key # from etherscan.io/myapikey
RATE_LIMIT=5 # requests/sec (optional, default: 5)获取免费的API密钥:https://etherscan.io/myapikey
需求
- Python 3.10+
- Etherscan API密钥(免费层:仅限以太坊)
- MCP兼容客户端(克劳德桌面、克劳德代码、GPT Codex等)
故障排除
| 问题 | 解决方案 |
|---|---|
| 未找到模块 | make setup |
| API密钥错误 | 检查 .env 文件 |
| 达到速率限制 | 更低 RATE_LIMIT 在 .env |
| 未知链 | 运行 list_supported_chains() |
| 请求超时 | 默认30s-检查网络/API状态 |
| BSC不工作 | BSC需要Etherscan付费计划 |
许可证
麻省理工学院
