https://github.com/tumf/web3-mcp
https://github.com/tumf/web3-mcp
Last synced: 7 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/tumf/web3-mcp
- Owner: tumf
- License: mit
- Created: 2025-04-16T04:11:09.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2025-04-18T15:26:54.000Z (7 months ago)
- Last Synced: 2025-04-18T23:03:54.795Z (7 months ago)
- Language: Python
- Size: 312 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-mcp-servers - web3-mcp - An MCP server implementation that wraps the Ankr Advanced API, providing access to blockchain data (NFTs, tokens) across multiple chains including Ethereum, BSC, Polygon, and Avalanche. ([Read more](/details/web3-mcp.md)) `blockchain` `web3` `nft` `multi-chain` `mcp` (Blockchain & Crypto MCP Servers)
- awesome-mcp-servers - tumf/web3-mcp - Ankr Advanced APIをラップするMCPサーバー実装。イーサリアム、BSC、ポリゴン、アバランチなど複数のブロックチェーンにわたるNFT、トークン、ブロックチェーンデータにアクセスできます。 (サーバー実装 / 🛠️ <a name="other-tools-and-integrations"></a>その他のツールと統合)
- awesome-mcp-servers - **tumf/web3-mcp 🐍 ☁️** - An MCP server implementation wrapping Ankr Advanced API. Access to NFT, token, and blockchain data across multiple chains including Ethereum, BSC, Polygon, Avalanche, and more. `api` `web` `http` `ai` `git` (📦 Other)
README
# Web3 MCP
[](https://github.com/tumf/web3-mcp/actions/workflows/test.yml)
[](https://codecov.io/gh/tumf/web3-mcp)
[](https://badge.fury.io/py/web3-mcp)
[](https://opensource.org/licenses/MIT)
An MCP server implementation wrapping Ankr Advanced API.
## Overview
FastMCP is a [Model Context Protocol (MCP)](https://modelcontextprotocol.io) server that provides access to Ankr's Advanced API for blockchain data. It allows LLMs to interact with blockchain data across multiple chains including Ethereum, BSC, Polygon, Avalanche, and more.
## MCP Client Setting
```json
{
"mcpServers": {
"web3": {
"command": "uvx",
"args": [
"web3-mcp"
],
"env": {
"ANKR_ENDPOINT": "https://rpc.ankr.com/...",
}
}
}
}
```
## Features
- Complete wrapper for all Ankr Advanced API endpoints
- NFT API: Get NFT metadata, holders, transfers, and ownership information
- Query API: Access blockchain statistics, blocks, logs, and transaction data
- Token API: Get token balances, prices, holders, and transfer history
- Support for multiple blockchain networks
## Installation
```bash
# Clone the repository
git clone https://github.com/tumf/web3-mcp.git
cd web3-mcp
# Install with uv
uv pip install -e .
```
## Configuration
Set the following environment variables:
```bash
# Required
export ANKR_ENDPOINT="your_ankr_rpc_endpoint"
# Optional but recommended for authenticated requests
export ANKR_PRIVATE_KEY="your_private_key"
```
## Usage
### Running the server
```python
from web3_mcp.server import init_server
# Initialize MCP server
mcp = init_server(
name="Ankr MCP",
endpoint="your_ankr_endpoint", # Optional, defaults to ANKR_ENDPOINT env var
private_key="your_private_key" # Optional, defaults to ANKR_PRIVATE_KEY env var
)
# Run server
mcp.run()
```
### Using with FastMCP CLI
```bash
# Set environment variables first
export ANKR_ENDPOINT="your_ankr_endpoint"
export ANKR_PRIVATE_KEY="your_private_key"
# Run the server
python -m web3_mcp
```
## API Categories
### NFT API
- `get_nfts_by_owner`: Get NFTs owned by a wallet address
- `get_nft_metadata`: Get metadata for a specific NFT
- `get_nft_holders`: Get holders of a specific NFT collection
- `get_nft_transfers`: Get transfer history for NFTs
### Query API
- `get_blockchain_stats`: Get blockchain statistics
- `get_blocks`: Get blocks information
- `get_logs`: Get blockchain logs
- `get_transactions_by_hash`: Get transactions by hash
- `get_transactions_by_address`: Get transactions by address
- `get_interactions`: Get wallet interactions with contracts
### Token API
- `get_account_balance`: Get token balances for a wallet
- `get_currencies`: Get available currencies
- `get_token_price`: Get token price information
- `get_token_holders`: Get token holders
- `get_token_holders_count`: Get token holders count
- `get_token_transfers`: Get token transfer history
## License
MIT