ETH 安全 MCP 是一个为安全分析师、审计员和事件响应人员收集的 MCP 服务器,可助力相关人员更高效地开展工作。
eth-security-mcp
需要以下依赖项已安装:
eth-security-mcp
中的 MCP 服务器可能会使用环境变量来传递信息,例如 API 密钥。.env.example
列出了运行所有 MCP 服务器所需的相关值。要设置 .env
文件,请运行 cp .env.example .env
并填写相关信息。
此仓库使用 npm 工作区将每个操作分开。要与特定的工作区交互,请使用 npm
。
此 repo 使用 justfile 来自动化构建和调试,使用的是 MCP Inspector。例如,要构建并调试 dune
MCP 服务器,可以运行以下命令:
$ just -l
Available recipes:
build workspace
debug workspace
$ just debug dune
要将此仓库中的 MCP 服务器安装到 Claude Desktop 中:
just setup-
,其中
要么是 linux
要么是 macos
,而
是包含 MCP 服务器的目录名称。claude.config.tmp.json
,可以将其复制粘贴到以下文件中的 mcpServers
下:
~/Library/Application Support/Claude/claude_desktop_config.json
~/.config/Claude/claude_desktop_config.json
# 示例命令,使用 Dune MCP 服务器获取地址的交易
# 这里假设要获取地址为 0xabc123 的交易
$ just debug dune
# 调用 get_transactions_by_address 工具
# 假设使用默认参数,仅传入必填的 address 参数
# 实际使用时根据需要添加可选参数
# 这里只是示意,具体调用方式可能因环境而异
# 高级场景:获取地址为 0xabc123 的交易,同时筛选链 ID 为 1、2,限制返回交易数量为 10
# 调用 get_transactions_by_address 工具并传入相关参数
# 这里只是示意,具体调用方式可能因环境而异
$ just debug dune
# 调用 get_transactions_by_address 工具
# 传入 address、chain_ids 和 limit 参数
# 实际使用时根据需要添加其他可选参数
# 示例命令,使用 Cast MCP 服务器模拟事务
# 假设要模拟事务哈希为 0xdef456 的事务
# 假设使用的 Ethereum 节点的 RPC URL 为 http://example.com/rpc
$ just debug cast
# 调用 run_transaction 工具
# 传入 transactionHash 和 rpcUrl 参数
# 这里只是示意,具体调用方式可能因环境而异
# 高级场景:使用快速模式模拟事务哈希为 0xdef456 的事务
# 假设使用的 Ethereum 节点的 RPC URL 为 http://example.com/rpc
$ just debug cast
# 调用 run_transaction 工具
# 传入 transactionHash、rpcUrl 和 quick 参数
# 这里只是示意,具体调用方式可能因环境而异
Dune MCP 服务器提供对 Dune API 端点的访问,返回结构化的交易结果。
address
(必填):要获取交易的地址。chain_ids
(可选):逗号分隔的链 ID 列表,用于筛选交易。method_id
(可选):过滤交易以返回具有提供的方法 ID(函数选择器)的交易。log_address
(可选):过滤交易以返回日志中包含该地址的交易。topic0
(可选):过滤交易以返回具有提供的主要事件主题的交易。min_block_number
(可选):过滤交易以返回从该块编号开始及之后的交易。limit
(可选):限制返回的交易数量。is_sender
(可选):返回发送方为提供的地址的交易。is_receiver
(可选):返回接收方为提供地址的交易。address
:合约或账户涉及的地址。block_number
:包含交易的块编号。data
:事务数据。from
:事务发送方地址。gas_used
:使用的气数。to
:事务接收方地址(如果是合约创建,则为 null)。value
:转移的 ETH 数量,以 wei 为单位。receipt
:交易收据,包含 gas 使用情况、状态等信息。Cast MCP 服务器提供对 Foundry 的 cast 命令行工具的访问,允许与 Ethereum 节点和智能合约交互。
transactionHash
(必填):要模拟的事务哈希。rpcUrl
(必填):用于模拟的 Ethereum 节点的 RPC URL。quick
(可选):是否使用快速模式以加快模拟(默认:false)。