mcpField
C
Chimera Scaffold

Chimera Scaffold

本地服务
github.com/Recon-Fuzz开发工具028 周前更新

关于 Chimera Scaffold

Chimera Scaffold 是面向 Solidity 开发者的本地 MCP 服务,用于构建 Chimera 模糊测试套件。它为六类协议生成可编译的项目文件、不变量属性和模糊测试器配置。

主要功能

  1. 01搭建完整 Chimera 项目
  2. 02生成不变量属性框架
  3. 03提供协议专用模板
  4. 04解释 Solidity 测试模式
  5. 05生成模糊测试器配置文件

适用场景

  1. 01为 Solidity 合约创建模糊测试套件
  2. 02为金库或借贷协议启动不变量测试
  3. 03了解 actors、ghosts 或跨合约模式

MCP 相关

MCP 服务提供搭建项目、生成属性、获取模板和解释模式的工具。服务在本地运行,不进行网络调用。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"recon-mcp-chimera": {
"command": "npx",
"args": [
"-y",
"@recon-fuzz-mcp/chimera"
]
}
}
}
启动命令npx -y @recon-fuzz-mcp/chimera

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@recon-fuzz-mcp/chimera

工具

4

收录的工具列表 · 更新于 2 周前

参数类型必填说明
functionsarray是函数签名数组,例如 ["deposit(uint256)", "withdraw(uint256)"]
contract_namestring是要为其搭建测试的合约名称

详细介绍

@recon-fuzz-mcp/chimera

npm License: MIT Node 18+

用于为 Solidity 智能合约搭建 Chimera 模糊测试套件的 MCP 服务。可生成包含属性、处理器和模糊测试器配置的即用型可编译项目。

工具

工具输入返回内容
scaffold_projectcontract_name, functions[]完整的 Chimera 项目(Setup、Properties、TargetFunctions、BeforeAfter、CryticTester 及配置)
generate_propertiescontract_source, protocol_type8-15 个精选不变量属性及 Solidity 框架代码
get_templatetemplate_name适用于标准协议类型的完整即用型可编译 Chimera 项目
explain_patternpattern_name详细说明及代码示例
协议类型

erc20、vault、lending、amm、governance、staking

模式

actors、ghosts、cross-contract、setup-layering

安装

Claude Code
claude mcp add chimera-scaffold -- npx @recon-fuzz-mcp/chimera
Claude Desktop

添加到 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "chimera-scaffold": {
      "command": "npx",
      "args": ["@recon-fuzz-mcp/chimera"]
    }
  }
}
Cursor

添加到项目中的 .cursor/mcp.json:

{
  "mcpServers": {
    "chimera-scaffold": {
      "command": "npx",
      "args": ["@recon-fuzz-mcp/chimera"]
    }
  }
}

无需 API 密钥。此服务完全在本地运行,不会发起网络请求。

本地开发

git clone https://github.com/Recon-Fuzz/recon-mcp-chimera.git
cd recon-mcp-chimera
npm install
npm run build
测试是否正常运行
# List tools
echo '{"jsonrpc":"2.0","method":"tools/list","id":1}' | node dist/index.js

# Scaffold a vault project
echo '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"scaffold_project","arguments":{"contract_name":"SimpleVault","functions":["deposit(uint256)","withdraw(uint256)"]}},"id":2}' | node dist/index.js

# Get a lending template
echo '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"get_template","arguments":{"template_name":"lending"}},"id":3}' | node dist/index.js

架构

  • 不会发起网络请求——所有内容都由内存中的模板和字符串生成完成
  • src/templates/base.ts — Solidity 文件生成器(Setup、BeforeAfter、Properties、TargetFunctions、CryticTester)
  • src/templates/configs.ts — 模糊测试器配置生成器(foundry.toml、echidna.yaml、medusa.json)
  • src/properties/ — 按协议类型整理的精选属性目录(每种类型包含 8-15 个属性)
  • src/patterns/ — 模式说明及完整 Solidity 代码示例
  • src/tools/ — MCP 工具实现

隐私

此服务完全离线运行。不会发起网络请求,不会读取环境变量,不会向磁盘写入数据,也不会收集遥测数据。所有模板均在进程内生成。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。