3xpl-mcp
The 3xpl API MCP server allows integration with 48 blockchains, providing tools for resolving ENS domains, detecting blockchains, and retrieving block information. It serves as a practical example of how to use the 3xpl JSON API for extensive blockchain data analysis.
3xpl.com JSON API MCP server
Overview
3xpl API in form of a Model Context Protocol (MCP) server.
Allows LLMs to interact with data on 48 blockchains.
This repository can also be an example of 3xpl JSON API usage, see details in the code.
List of available tools
name | description | status |
---|---|---|
resolve_ens_domain | resolves an ENS domain to a regular address | ✅ |
detect_blockchains | retrieve a list of blockchains on which a transaction/address is present | ✅ |
get_latest_block | get latest block height in specified blockchain | ✅ |
get_average_fee_24h_usd | retrieves average transaction fee for last 24 hours in specified blockchain in US dollars. | ✅ |
get_mempool_events_count | get the number of unconfirmed events(transfers, inputs/outputs, not transactions) at the moment in the memory pool of provided blockchain | ✅ |
get_events_count_24h | retrieve number of events(transfers, inputs/outputs, not whole transactions) in last 24h for provided blockchain | ✅ |
get_block_overview | extract short summary about a block in provided blockchain | ✅ |
get_address_overview | extract short summary about an address in provided blockchain | ✅ |
get_transaction_overview | extract short summary about a transaction in provided blockchain(to be improved) | ✅ |
list_blockchains_and_modules | get a list of blockchains and their modules with module descriptions | ✅ |
aggregate_block_transactions | aggregate transactions in a block | ✅ |
aggregate_transaction_transfers | aggregate individual transfers in a transactions | ✅ |
aggregate_address_balances | aggregate balances for an address with | ✅ |
aggregate_address_transactions | aggregate confirmed transactions for an address | ✅ |
aggregate_address_mempool | aggregate pending transactions for an address | ✅ |
List of available prompts
name | description |
---|---|
get_blockchain_info | makes LLM dig deeper into data for providing the most fulfilled response. |
Installation
# get the repository
git clone https://github.com/exekerey/3xpl-mcp.git
cd 3xpl-mcp
# create and activate virtual environment
uv venv
source .venv/bin/activate
# install dependencies
uv pip install -e .
MCP configuration:
{
"mcpServers": {
"3xpl_API": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"{:path_to_cloned}/3xpl_mcp/main.py"
],
"env": {
"THREEXPL_API_KEY": ""
}
}
}
}
*Note: Set your API key from 3xpl to use the main API.
If the THREEXPL_API_KEY
field in the config file is left blank,
the MCP server will use the sandbox API, which has rate limits.
*Note 2: if MCP server doesn't start you might need to provide full path to uv in the command
field.
Contribution
Feel free to open issues for bugs or suggestions.
Pull requests are also welcome – just make sure to provide description of your changes.