LABSCO SUMMARY
The unverified case is the reason to use it.
Reading a verified contract is easy enough anywhere; the value here is that an address with no published source still produces something to read, because the server falls back to decompilation. Treat recovered source as a lead rather than ground truth — it is reconstructed, not the original — and keep the analysis as one input into a review rather than the review itself.
What it is
A Node MCP server that interacts with the Monad blockchain to retrieve smart contract source code and analyse it for functionality and security.
What you get
- Contract source fetched by address from the configured BlockVision endpoint
- A decompilation fallback for unverified contracts, so an address without published source is still reviewable
- Analysis covering both what the contract does and where it is risky, rather than only a listing
- Setup paths for both Cursor and Claude Desktop, with the same environment block
Requirements
Node.js v16 or later, npm install and npm run build. Three environment variables in the client: API_URL for the contract source endpoint, API_KEY for it, and DECOMPILE_URL for the decompiler used on unverified contracts.
Setup effort
Build from source — git clone https://github.com/rockyuan/mcp-contract-analyst.git
USE CASES
Vetting a contract before interacting with it
Hand over the address and ask what the contract does and where its risks are.
Reading an unverified contract
Let the decompilation fallback recover source, then review the reconstructed logic.
Comparing two deployments
Fetch both addresses and ask which behaviours differ.
BEFORE YOU INSTALL
What to know first
Requires
- Node.js
- API_KEY in your environment
Where it runs
Both documented clients run the server on your machine.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/rockyuan/mcp-contract-analyst.git
cd mcp-contract-analyst
npm install
npm run buildMCP Clients
Cursor, Claude Desktop
{
"mcpServers": {
"mcp-contract-analyst": {
"command": "node",
"args": [
"/<YOUR_PATH_TO_PROJECT>/build/index.js"
],
"env": {
"API_URL": "https://api.blockvision.org/v2/monad/contract/source/code?address=",
"API_KEY": "<YOUR_API_KEY>",
"DECOMPILE_URL": "https://www.ethervm.io/decompile"
}
}
}
}