Eth Security Mcp

Eth Security Mcp

🚀 ETH 安全 MCP

ETH 安全 MCP 是一个为安全分析师、审计员和事件响应人员收集的 MCP 服务器,可助力相关人员更高效地开展工作。

🚀 快速开始

📦 安装指南

依赖项

eth-security-mcp 需要以下依赖项已安装:

环境变量设置

eth-security-mcp 中的 MCP 服务器可能会使用环境变量来传递信息,例如 API 密钥。.env.example 列出了运行所有 MCP 服务器所需的相关值。要设置 .env 文件,请运行 cp .env.example .env 并填写相关信息。

工作区

此仓库使用 npm 工作区将每个操作分开。要与特定的工作区交互,请使用 npm -w src/

构建和调试

此 repo 使用 justfile 来自动化构建和调试,使用的是 MCP Inspector。例如,要构建并调试 dune MCP 服务器,可以运行以下命令:

$ just -l
Available recipes:
build workspace
debug workspace

$ just debug dune

将 MCP 服务器安装到 Claude Desktop

要将此仓库中的 MCP 服务器安装到 Claude Desktop 中:

  1. 运行 just setup- ,其中 要么是 linux 要么是 macos,而 是包含 MCP 服务器的目录名称。
  2. 此 just 命令将在 MCP 服务器目录中生成一个文件 claude.config.tmp.json,可以将其复制粘贴到以下文件中的 mcpServers 下:
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • linux: ~/.config/Claude/claude_desktop_config.json
  3. 添加配置信息后,重启 Claude Desktop 以使更改生效。

💻 使用示例

Dune MCP 服务器

基础用法
# 示例命令,使用 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 服务器

基础用法
# 示例命令,使用 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 参数
# 这里只是示意,具体调用方式可能因环境而异

📚 详细文档

MCP 服务器

Dune

Dune MCP 服务器提供对 Dune API 端点的访问,返回结构化的交易结果。

可用工具
get_transactions_by_address
  • 概述:使用 Dune 的 Echo 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

Cast MCP 服务器提供对 Foundry 的 cast 命令行工具的访问,允许与 Ethereum 节点和智能合约交互。

可用工具
run_transaction
  • 概述:使用 Foundry 的 cast 运行命令模拟事务。
  • 参数
    • transactionHash (必填):要模拟的事务哈希。
    • rpcUrl (必填):用于模拟的 Ethereum 节点的 RPC URL。
    • quick (可选):是否使用快速模式以加快模拟(默认:false)。
  • 返回 返回模拟结果作为字符串,包括:
    • 事务执行详细信息。
    • 状态更改。
    • 气体使用情况。
    • 任何重置原因(如果有)。
  • 0 关注
  • 0 收藏,9 浏览
  • system 提出于 2025-09-30 11:42

相似服务问题