📋 Help shape our upcoming AI Agents course! Take our 3-minute survey and get 20% off when we launch.

Take Survey →

web3-mcp

web3-mcp MCP server

by tumf
2 stars
1 forks
Available MCP Tools 0 tools

Model Context Protocol tools provided by this server

No tools information available for this server.

Check the GitHub repository or documentation for more details.

README

Tests codecov PyPI version License: MIT

An MCP server implementation wrapping Ankr Advanced API.

Overview

FastMCP is a Model Context Protocol (MCP) 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

{
  "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

git clone https://github.com/tumf/web3-mcp.git
cd web3-mcp

uv pip install -e .

Configuration

Set the following environment variables:

export ANKR_ENDPOINT="your_ankr_rpc_endpoint"

export ANKR_PRIVATE_KEY="your_private_key"

Usage

Running the server

from web3_mcp.server import init_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
)

mcp.run()

Using with FastMCP CLI

export ANKR_ENDPOINT="your_ankr_endpoint"
export ANKR_PRIVATE_KEY="your_private_key"

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

Details
Category Version Control
Scope cloud
Language Python
License MIT License
OS Support
linux macos windows