MCP Contract Auditor
Fetches verified EVM smart contract source code, scans for vulnerabilities, analyzes token holder distribution, and generates audit reports.
README
š MCP Contract Auditor
Smart Contract Security Audit MCP Server ā Fetch, analyze, and generate audit reports for EVM smart contracts.
Built for CyOps Arena Hackathon by Carlys17.
Features
| Tool | Description |
|---|---|
audit_contract |
š Full audit ā fetch source, scan vulns, analyze holders, generate report |
fetch_contract |
Fetch verified contract source code & ABI from Blockscout |
scan_vulns |
Scan Solidity source for 15+ vulnerability patterns |
check_holders |
Analyze token holder distribution & centralization risk |
list_chains |
List all supported EVM chains |
Supported Chains
Ethereum, Base, Arbitrum, Optimism, Polygon, BNB Chain, Gnosis, Avalanche, zkSync Era, Celo ā all via Blockscout API (no API key required).
Vulnerability Detection
| Category | Patterns Detected |
|---|---|
| š“ Reentrancy | Classic reentrancy, cross-function reentrancy |
| š Access Control | Missing modifiers, tx.origin auth |
| š External Calls | Unchecked low-level calls, delegatecall, selfdestruct |
| š” Integer | Overflow/underflow (pre-0.8), unchecked arithmetic |
| š” Denial of Service | Unbounded loops, forced ether |
| š” ERC-20 | Missing return values, approve race condition |
| šµ Informational | Floating pragma, inline assembly, timestamp dependence |
Installation
# Clone
git clone https://github.com/Carlys17/mcp-contract-auditor.git
cd mcp-contract-auditor
# Install dependencies
npm install
# Build
npm run build
# Run
npm start
Usage with Claude Desktop
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"contract-auditor": {
"command": "node",
"args": ["/path/to/mcp-contract-auditor/dist/index.js"]
}
}
}
Example Usage
Full Audit
audit_contract(
address: "0x1234...abcd",
chain: "ethereum",
include_holder_analysis: true
)
Quick Vulnerability Scan
scan_vulns(
source_code: "pragma solidity ^0.8.0; contract Foo { ... }",
contract_name: "Foo"
)
Check Token Holders
check_holders(
address: "0x1234...abcd",
chain: "base"
)
Architecture
mcp-contract-auditor/
āāā src/
ā āāā index.ts # MCP server entry (5 tools)
ā āāā types.ts # Type definitions
ā āāā tools/
ā ā āāā analyze-vulnerabilities.ts # 15+ vuln detectors
ā ā āāā holder-analysis.ts # Token holder analysis
ā ā āāā generate-report.ts # Markdown report generator
ā āāā utils/
ā āāā blockscout.ts # Blockscout API client
ā āāā chains.ts # EVM chain configs
āāā package.json
āāā tsconfig.json
How It Works
- Fetch ā Retrieves verified contract source code from Blockscout API
- Analyze ā Runs 15+ pattern-based vulnerability detectors on the source
- Holder Check ā Fetches token holder data and calculates Gini coefficient
- Report ā Generates a structured markdown audit report with severity ratings
Disclaimer
This is an automated static analysis tool. It uses pattern matching and heuristics ā it is NOT a substitute for a professional manual security audit. Always conduct thorough manual review before deploying contracts with real funds.
License
MIT
Built with ā¤ļø for CyOps Arena Ć MiniMax M3 Hackathon
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.