EVMole logo

EVMole

Locally analyzes deployed EVM runtime bytecode for selectors, arguments, mutability, storage layouts, and metadata.

Install EVMole

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "evmole": {
      "command": "npx",
      "args": [
        "-y",
        "evmole"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

EVMole MCP server exposes local analysis of deployed EVM runtime bytecode through a typed MCP tool. It can inspect function selectors, argument types, state mutability, storage layouts, dispatch behavior, and terminal CBOR metadata without requiring verified source code. Use it when an agent needs structured bytecode analysis while keeping the input local.

Use cases

  • Inspect unverified contract bytecode
  • Identify selectors and argument types
  • Classify function state mutability
  • Review persistent and transient storage layouts
  • Extract terminal CBOR metadata

Key features

  • Local typed MCP bytecode analysis
  • Function selector and argument inference
  • State mutability detection
  • Persistent and transient storage analysis
  • Fallback dispatch classification
  • CBOR metadata extraction

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

4/4 checks healthy over the last 14d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 15d ago via OSV.dev · evmole (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars472Stargazers on the source repository.
npm downloads535kPackage downloads in the last 30 days.
Last commit9d agoMost recent push to the default branch.

How EVMole works

What EVMole MCP server does

EVMole MCP server gives an MCP-compatible agent access to structured analysis of deployed or runtime EVM bytecode. It is intended for bytecode inspection rather than transaction execution, source-code compilation, or blockchain data retrieval. The integration accepts bytecode as its input and returns discovered contract details.

Analysis can include function selectors, inferred argument types, state mutability, persistent storage layout, transient storage layout, and string-keyed values from terminal CBOR metadata. It also classifies whether selector handling follows ordinary ABI dispatch or is handled through fallback logic. The library is tested with contracts compiled by Solidity and Vyper, and it can inspect unverified contracts because it works from bytecode.

How it works

The MCP integration runs the EVMole analysis implementation locally. Install and start it with:

Terminal
npx -y evmole-mcp

An agent sends deployed/runtime bytecode to the local MCP server, which analyzes the bytecode and returns typed structured results. This makes the MCP option suitable for agent workflows where bytecode should remain on the local machine.

The underlying project also provides JavaScript, Rust, Python, and Go bindings, plus a JSON CLI and an agent skill. Those alternatives are better suited to application code, scripts, or agents that do not use MCP; the MCP package is the local typed-tool option.

Setup and configuration

Install Node.js package execution support, then launch the server with npx -y evmole-mcp. The server expects runtime bytecode supplied by the calling agent.

For a one-off command or script rather than an MCP client, the project documents npx -y evmole analyze --bytecode 0x.... That CLI is separate from the MCP server but uses the same local analysis approach.

Tools and capabilities

The EVMole MCP server supports agent-driven inspection of:

  • Function selectors and their bytecode offsets
  • ABI-style argument type inference
  • State mutability classification
  • Normal ABI dispatch versus fallback-based selector handling
  • Persistent and transient storage layouts
  • String-keyed values in terminal, length-suffixed CBOR metadata
  • Runtime bytecode from unverified Solidity or Vyper contracts

Limitations and notes

Results are inferred from bytecode, so the integration should not be treated as a substitute for verified source or a full symbolic execution system.

CBOR extraction targets string-keyed values in a terminal length-suffixed map and does not assume a particular compiler. The project describes broad compatibility with Solidity and Vyper, but no guarantee is stated for every compiler version, proxy pattern, or custom bytecode design.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about EVMole

EVMole is an MCP server that connects AI agents to local EVMole analysis of deployed or runtime EVM bytecode. Its main analysis tools report function selectors, argument types, state mutability, storage layouts, dispatch behavior, and CBOR metadata, including for unverified contracts. Bytecode is processed locally rather than sent to an EVMole-operated service.

Run `npx -y evmole-mcp` to launch the local server.

Yes, it can analyze unverified contracts when their deployed or runtime bytecode is supplied. Its results are inferred from bytecode and can include selectors, arguments, mutability, storage layouts, dispatch classification, and CBOR metadata.

Yes, the MCP integration runs locally and does not send bytecode to an EVMole-operated service. The agent provides deployed/runtime bytecode to the locally launched `evmole-mcp` process.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewEVMole AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/evmole?style=directory)](https://allmcps.com/mcp/evmole)
HTML Embed
<a href="https://allmcps.com/mcp/evmole"><img src="https://allmcps.com/api/badge/evmole?style=directory" alt="EVMole on AllMCPs" /></a>