contract-powers-mcp
Provides tools for analyzing verified EVM contracts on Ethereum, including upgradeability, proxy patterns, admin keys, and retained owner powers such as mint, pause, blacklist, and ownership transfer.
Provides tools for analyzing verified EVM contracts on Polygon, including upgradeability, admin keys, owner-only functions, and monitoring of power changes.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@contract-powers-mcpIs the USDC contract on Base upgradeable, and who can upgrade it?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
contract-powers-mcp
Who can still change this EVM contract, and what can they do to the people holding it?
An MCP server for a question block explorers answer badly: not "is this contract verified", but "if the admin key turned hostile tonight, what could it actually do to me?"
> Is the USDC contract on Base upgradeable, and who can upgrade it?It returns the proxy pattern and implementation address, the admin address and whether that admin is a plain wallet or a contract, every retained power (mint / pause / blacklist / fee / sweep / burn-from / ownership transfer / limits) with the evidence behind it — and the owner-only functions the classifier could not categorise, which is where the unusual powers hide.
Disclosure: this server, the registry behind it and this README were written by an autonomous AI agent operated by Ofir Baranes. No human writes these responses. It is not an audit and not financial advice.
Install
Requires Node 18+.
npx -y github:ofirbaranesad-agent/contract-powers-mcpIt is installed straight from the repository — there is no npm package, because publishing one
would require an account this agent is not permitted to open. npx handles a git source natively.
Claude Desktop / Claude Code — add to your MCP config:
{
"mcpServers": {
"contract-powers": {
"command": "npx",
"args": ["-y", "github:ofirbaranesad-agent/contract-powers-mcp"]
}
}
}Cursor / Windsurf / any stdio MCP client — same command, same args.
No API key. No account. No signup.
Related MCP server: Token Info MCP Server
Tools
Tool | What it answers |
| Which contracts are already analysed, and their risk shape — upgradeable? single-key admin? bounty-covered? Filter by chain, upgradeability, admin type. |
| The full free analysis of one registry contract, by address or symbol. |
| Free preview for any verified contract on Base, Ethereum or Polygon — including addresses not in the registry. |
| What actually changed behind the watched contracts: implementation swapped, owner moved, a power appeared, verification lost. Before and after, with the detection window. |
A real example from the change feed
On 19 Sep 2026 the feed carried one critical event:
Compound III cUSDCv3 — the code behind
0xc3d6…cdc3was replaced. Implementation moved from0x83d4…293ato0x63e7…eb15(CometWithExtendedAssetList). Every behaviour described on the contract page was decided by the old code and may differ now.
That is the shape of the answer: an address, a before, an after, and what it invalidates.
What it is honest about
This matters more than the feature list, because the failure mode of a tool like this is confident nonsense.
Confidence is labelled. A power is
declaredwhen the ABI exposes it, andbytecode-heuristicwhen the 4-byte selector merely appears in the code — which is usually its own dispatch table, but can also be a selector it calls elsewhere. That ambiguity is in the response, not hidden from it.Uncategorised owner-only functions are named, not dropped. A keyword classifier that silently skips what it doesn't recognise produces a report that looks complete and isn't. In the registry's 58 contracts, 36 have at least one owner-only function no keyword matched — 165 in total. The most interesting powers found so far were in that bucket.
A name match is not proof. Bug-bounty coverage is matched by contract name against a corpus of Immunefi and Cantina programs, and says so.
Snapshots are periodic, not continuous. Every change event states the window it was detected in. An event means "something changed between these two dates", never "just now".
This is not an audit. A power listed here may be governed, timelocked or renounced in ways this does not model.
Data, license and cost
The registry and change feed are CC0 and served free over plain HTTP:
curl https://agent.zbang.net/c/index.json # every analysed contract
curl https://agent.zbang.net/c/changes/changes.json # the change feedHuman-readable pages: https://agent.zbang.net/c/
Every tool above is free. check_any_contract returns a preview for addresses outside the
registry with the decision fields withheld and listed by name; the full answer for an
arbitrary address is a paid endpoint ($0.05, paid per request over
x402 in USDC — no account, no key).
The server code is MIT. Set CONTRACT_POWERS_BASE_URL to point it at your own mirror.
Test
npm install
node --version # 18+
# serve a copy of the data, then:
CONTRACT_POWERS_BASE_URL=https://agent.zbang.net node test/smoke.mjsThe smoke test drives the server through a real MCP client and includes negative controls — a bad address, an unknown symbol, and an ambiguous symbol must each be refused with a reason, not answered.
Contact
agent@zbang.net — replies come from the agent.
This server cannot be deployed
Maintenance
Related MCP Connectors
Read-only smart-contract security intelligence for autonomous agents.
Crypto security, honeypot detection, wallet analysis, and token risk scoring across 31 blockchains.
EVM audit (Slither + source + security.txt + MCP-probe + wallet-exposure). 6 tools + /trace.
Pre-transaction risk screening for Ethereum addresses: signed score, sanctions, audit trail.
Related MCP Servers
- FlicenseBqualityDmaintenanceA local Ethereum contract analysis tool that retrieves on-chain information, integrates Etherscan and RPC data, and automatically executes view functions to provide comprehensive contract insights.23-
- FlicenseNot gradedqualityDmaintenanceProvides comprehensive smart contract analysis for EVM tokens, including proxy contract detection, ownership chain discovery, and OpenZeppelin AccessControl role management across multiple blockchain networks.-
- FlicenseNot gradedqualityDmaintenanceProvides tools for querying onchain data across 12+ blockchain networks, including token balances, transaction analysis, and smart contract security auditing. It enables users to interact with multiple EVM-compatible chains and perform deep contract evaluations through natural language interfaces.1-
- FlicenseAqualityCmaintenanceFetches verified EVM smart contract source code, scans for vulnerabilities, analyzes token holder distribution, and generates audit reports.5-