ContractInfoLABSCO SUMMARY
One call, the whole readable surface.
Inspecting a contract usually means reading the ABI, picking the getters, and calling them one by one. Sweeping every no-argument view function collapses that into a single request, and running them concurrently keeps it fast on contracts with dozens of them. The lighter summary exists for when you only need to know what a contract is — worth using first, since the full sweep costs RPC calls.
What it is
A local MCP service for inspecting EVM contracts, combining Etherscan metadata with direct RPC calls. Its distinguishing move is calling every view function that takes no parameters, so a contract's readable state comes back in one request rather than one call at a time.
What you get
- Full contract information: every parameterless view function invoked, with results returned as structured JSON —
ContractInfo - A lighter summary that reads basic contract information without invoking any functions —
ContractSummary - Concurrent execution across those calls, so a contract with many getters does not take proportionally longer
Requirements
Two credentials in a .env file: RPC_URL for an Ethereum node such as Infura or Alchemy, and ETHERSCAN_API_KEY. Python 3.10 or higher plus uv; run uv sync and configure the client to launch the interpreter from the project's virtual environment with the project directory as cwd. It is a local server — the client starts and stops it, and there is nothing to run by hand.
Setup effort
Build from source
USE CASES
Sizing up an unfamiliar contract
Run the full read and get name, symbol, supply, owner and every other parameterless getter back in one JSON response.
Checking a token address before interacting with it
Pull the basic summary first, without spending calls on the full function sweep.
Comparing two deployments
Read the full state of each address and set the returned values side by side.
2 tools
Listed in project docs. Your client may show a different list.
ContractSummaryBEFORE YOU INSTALL
What to know first
Tools you get
2 tools named in the project's documentation.
Requires
- Python 3.10+
- ETHERSCAN_API_KEY in your environment
- RPC_URL in your environment
Where it runs
Both documented setups run the server on your machine.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/ACaiSec/ContractInfoMCPSet up the project
cd ContractInfoMCP
uv syncConfigure the environment
cp env.example .envMCP Clients
Cursor — macOS/Linux
{
"mcpServers": {
"contract-inspector": {
"command": "<YOUR_PROJECT_PATH>/.venv/bin/python",
"args": [
"-m",
"contract_inspector.main"
],
"cwd": "<YOUR_PROJECT_PATH>"
}
}
}The configuration on this page does not set ETHERSCAN_API_KEY and RPC_URL; the project's instructions put them in a .env file. Check which folder the server reads that file from before you rely on it.
Cursor — Windows
{
"mcpServers": {
"contract-inspector": {
"command": "<YOUR_PROJECT_PATH>/.venv/Scripts/python.exe",
"args": [
"-m",
"contract_inspector.main"
],
"cwd": "<YOUR_PROJECT_PATH>"
}
}
}The configuration on this page does not set ETHERSCAN_API_KEY and RPC_URL; the project's instructions put them in a .env file. Check which folder the server reads that file from before you rely on it.