# FtmScan (Fantom Network Explorer) MCP

> FtmScan (Fantom Network Explorer) lets your agent query live blockchain state data directly. Check wallet balances for FTM, track ERC-20 and NFT transfers, inspect smart contract source code, and view historical transaction activity—all from natural language. It acts as a full-stack explorer for the Fantom network.

## Overview
- **Category:** developer-tools
- **Price:** Free
- **Tags:** fantom, ftmscan, smart-contracts, web3, blockchain-explorer

## Description

Need to know what's happening on the Fantom blockchain? This MCP connects your AI client directly to real-time on-chain data. Instead of jumping between multiple web explorers and manually checking different contract addresses, you just ask your agent a question in plain English. It finds the answer by querying balances for specific accounts, listing all token transfers across standards like ERC-20 and NFTs, or fetching the verified source code and logic for any smart contract. Whether you're tracking whale movements or validating complex DeFi interactions, this MCP gives you direct access to core network metrics, transaction statuses, and historical data. When you connect it via Vinkius, your agent gains a single point of truth for all things Fantom.

## Tools

### get_block_countdown
Retrieves the estimated time until the next block is created on the Fantom network.

### get_block_reward
Gets the amount of FTM tokens rewarded for successfully mining a new block.

### get_contract_abi
Retrieves the Application Binary Interface (ABI) that defines how to interact with a specific contract.

### get_contract_source_code
Fetches the verified source code used for a deployed smart contract.

### get_erc20_token_balance
Checks the current balance of any specified ERC-20 token for an address.

### get_erc20_token_supply
Determines the total circulating supply amount for a specific ERC-20 token.

### get_erc20_transfers
Lists all recent transfer events for a given ERC-20 token on the network.

### get_erc721_transfers
Retrieves a record of ownership transfers for specific Non-Fungible Tokens (NFTs).

### get_eth_block_number
Gets the latest block number on the proxy network.

### get_eth_transaction_by_hash
Retrieves details for a specific transaction using its unique hash identifier (proxy).

### get_ftm_balance_multi
Retrieves the FTM balances for a list of multiple addresses simultaneously.

### get_ftm_balance
Checks the current FTM balance held by a single blockchain address.

### get_ftm_last_price
Provides the most recent market trading price for FTM tokens.

### get_ftm_total_supply
Shows the total available supply of FTM tokens in circulation.

### get_internal_transactions
Lists background or internal transactions that occur between contract functions.

### get_logs
Fetches specific event logs emitted by a smart contract during execution.

### get_normal_transactions
Retrieves a list of standard, user-initiated transactions affecting the network.

### get_transaction_receipt_status
Checks if a specific transaction has completed and provides its execution receipt status.

### get_transaction_status
Determines the current processing state of any given transaction hash.

## Prompt Examples

**Prompt:** 
```
What is the current FTM balance of address 0xbbbb6a3601eeed31c8245938021fb3d10e7c51e2?
```

**Response:** 
```
I've checked the balance for that address. It currently holds 1,250.45 FTM.
```

**Prompt:** 
```
Show me the last 5 normal transactions for 0xbbbb6a3601eeed31c8245938021fb3d10e7c51e2 sorted by newest.
```

**Response:** 
```
I've retrieved the 5 most recent normal transactions for that address. They include several transfers and contract interactions from the last few hours.
```

**Prompt:** 
```
Get the verified source code for the contract at 0x04068da6a83afcfa0e13ba15a6696662335d5b75.
```

**Response:** 
```
I have successfully retrieved the verified source code for the contract. It appears to be a SpookySwap LP token contract written in Solidity.
```

## Capabilities

### Check Wallet Holdings
Retrieve the current FTM balance for one or multiple addresses.

### Track Token Movements
Get a list of all ERC-20 and ERC-721 (NFT) token transfers across any address pair.

### Audit Contract Logic
Fetch the verified source code and ABI for any deployed smart contract to understand its function.

### Review Transaction History
View a list of normal or internal transactions, along with their execution status and receipt details.

### Get Core Network Metrics
Access real-time data like the current FTM price, total supply, block number, and rewards.

## Use Cases

### Auditing a recent NFT sale
A user needs to confirm that an NFT transfer was legitimate. They ask their agent, 'Show the transfers for this specific NFT.' The agent calls `get_erc721_transfers` and provides the full history, including timestamps and destination wallets.

### Investigating a suspicious token burn
A researcher wants to know if a project burned tokens correctly. They ask the agent to check all ERC-20 transfers for that contract's address; the agent uses `get_erc20_transfers` and presents only the relevant burning events.

### Verifying DeFi collateral contracts
A developer needs to ensure a lending protocol is using safe code. They ask the agent, 'Give me the source code for this contract.' The agent uses `get_contract_source_code` and returns the Solidity file directly.

### Tracking an initial deposit
A user wants to see if funds deposited into a wallet were processed. They ask, 'What are the normal transactions for this address?' The agent uses `get_normal_transactions` and lists all incoming transfers.

## Benefits

- Instant Balance Checks: Instead of manually calling tools like `get_ftm_balance` or `get_erc20_token_balance`, your agent simply knows the address and token to check. It's immediate.
- Code Inspection on Demand: You don't need to leave your IDE. Your agent fetches contract logic using `get_contract_source_code` so you can validate smart contracts instantly, just by asking.
- Complete Asset Tracking: By combining calls like `get_erc20_transfers` and `get_erc721_transfers`, the system gives a full picture of all token movement in one go. No more cross-referencing multiple tabs.
- Transaction Status Clarity: You can ask for transaction status using `get_transaction_status`. It tells you if a transfer is pending, failed, or confirmed without needing to check five different explorer pages.
- Network Health Overview: Quickly gauge market context by requesting the FTM last price (`get_ftm_last_price`) and total supply in one conversational step.

## How It Works

The bottom line is, your AI agent translates complex blockchain queries into simple answers without you having to write any code or navigate multiple websites.

1. Subscribe to this MCP and enter your unique FtmScan API Key into Vinkius.
2. Your AI client sends a natural language request (e.g., 'What was the last transaction for 0x...')
3. The agent calls the specific underlying tool, retrieves the raw blockchain data, and formats it into an easy-to-read answer.

## Frequently Asked Questions

**Can I check the balance of multiple wallets at once?**
Yes, use the `get_ftm_balance_multi` tool with a comma-separated list of addresses. The agent will return the FTM balance for each address in the list.

**How do I see the source code of a smart contract?**
Use the `get_contract_source_code` tool with the contract's address. If the contract is verified on FtmScan, the agent will retrieve the source code and metadata.

**How can I verify if a transaction was successful?**
Use the `get_transaction_status` tool with the transaction hash. It will return the execution status code directly from the Fantom network.

**How do I track NFT ownership changes using the `get_erc721_transfers` tool?**
The tool retrieves a list of ERC-721 transfer events. You must provide the contract address and time range to filter for specific NFTs or movements across the Fantom network.

**What is an internal transaction, and how do I use `get_internal_transactions`?**
Internal transactions are actions that happen behind the scenes, often initiated by smart contracts. Using this tool gives you visibility into activity that wouldn't appear in a simple list of normal transfers.

**How do I authenticate my requests when connecting to FtmScan data via MCP?**
You must provide your unique FtmScan API Key when setting up the connection. Vinkius manages this key securely, allowing your agent to make authenticated calls to the blockchain.

**If I request a large list of transfers (e.g., `get_erc20_transfers`), how do I ensure I get all records?**
The tool supports pagination parameters, meaning you can't pull everything in one go. You need to pass the appropriate limit or page offset parameters to retrieve comprehensive data sets.

**How does `get_block_reward` help me monitor network incentives?**
This tool reports the current expected reward associated with a block creation. It helps analysts track the native token's economic value and rewards structure separate from user activity.