3xpl.com JSON API MCP server
About
A Model Context Protocol (MCP) server for querying data from 48 blockchains using 3xpl.com blockchain explorer JSON API
Details
- Author
- exekerey
- GitHub stars
- 5
- Downloads
- 577
- Categories
- Developer Tools, API, AI
Jump to
- Provides 13 tools for querying 48 blockchains.
- Includes a prompt for deeper blockchain data exploration.
- Allows ENS domain resolution and blockchain detection.
- Fetches latest blocks, fees, and mempool events.
- Aggregates transactions, transfers, and address balances.
- Supports both production (API key) and sandbox (rate‑limited) modes.
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
3xpl.com JSON API MCP serverCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Clone the repository, create a virtual environment with uv, install dependencies, then configure the MCP client with the provided JSON config, setting your THREEXPL_API_KEY (leave blank for sandbox mode with rate limits). Run the server using uv run --with mcp[cli] mcp run path/to/3xpl_mcp/main.py.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"3xpl.com json api mcp server": {
"3xpl-mcp": {
"command": "uv",
"args": [
"venv"
]
}
}
}
}
McpServers
{
"3xpl-mcp": {
"command": "uv",
"args": [
"venv"
]
}
}
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.
[//]: # (demo video from Claude)
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. |
[//]: # (might be inaccurate, see the API docs and policy for details.)
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.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




