ContractLens
EVM token risk checks, x402 payability check for sellers, address classifier and live gas.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"contractlens": {
"url": "https://contractlens-api.appin60.com/mcp"
}
}
}Remote endpoints
https://contractlens-api.appin60.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (5)
⚪scan_contract(chainId, address)
Security scan of a verified EVM smart contract: who controls it now (owner / proxy admin: renounced, single-key EOA or Safe multisig), every owner/role-gated function (mint, pause, blacklist, upgrade, fees), proxy status, and Slither static-analysis findings ranked by impact. Use before approving, depositing into or buying a token. Chains: 1 Ethereum, 8453 Base, 42161 Arbitrum, 10 Optimism, 137 Polygon, 56 BNB.
Input Schema
{
"type": "object",
"properties": {
"chainId": {
"type": "string",
"description": "EVM chain id, e.g. 8453 for Base"
},
"address": {
"type": "string",
"description": "0x contract address (must be verified on Sourcify)"
}
},
"required": [
"chainId",
"address"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢check_token(chainId, address)
Fast (1-3 s) risk verdict for an ERC-20 token before buying it: LOW/MEDIUM/HIGH with reasons. Who controls it (renounced, single key, Safe multisig, timelock), upgradeable proxy, admin powers in the bytecode (mint, blacklist, pause, adjustable tax, trading switch), source verification, DEX liquidity and pair age. Chains: 1 Ethereum, 8453 Base, 42161 Arbitrum, 10 Optimism, 137 Polygon, 56 BNB.
Input Schema
{
"type": "object",
"properties": {
"chainId": {
"type": "string",
"description": "EVM chain id, e.g. 8453 for Base"
},
"address": {
"type": "string",
"description": "0x token address"
}
},
"required": [
"chainId",
"address"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪gas_now(chainId)
Live EIP-1559 gas for a chain: base fee, slow/standard/fast tips, maxFeePerGas values and the cost of common actions. Chains: 1, 8453, 42161, 10, 137, 56.
Input Schema
{
"type": "object",
"properties": {
"chainId": {
"type": "string",
"description": "EVM chain id, e.g. 8453 for Base"
}
},
"required": [
"chainId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪address_info(chainId, address)
What is this address? EOA, EIP-7702 delegated EOA, Safe multisig (threshold, owners), timelock, ERC-20 token, proxy or contract, with native balance. Use before sending funds to or trusting an address.
Input Schema
{
"type": "object",
"properties": {
"chainId": {
"type": "string",
"description": "EVM chain id"
},
"address": {
"type": "string",
"description": "0x address"
}
},
"required": [
"chainId",
"address"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢check_x402_payability(url)
For x402 sellers: can a real buyer actually pay this endpoint? Sends one payment signed by a fresh unfunded key through the endpoint's server and facilitator. Payable endpoints fail only on balance; anything else is reported with the exact reason (schema, description over 500 chars, EIP-712 domain, price over the $1 default client cap, paywall not enforcing).
Input Schema
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Full https URL of the x402 endpoint, with any query params it needs"
}
},
"required": [
"url"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Evidence