项目简介
Radare2 MCP Server 是一个专门为AI助手设计的MCP服务器,它桥接了强大的逆向工程工具 Radare2 与支持 Model Context Protocol (MCP) 的AI客户端,例如 Claude。通过这个服务器,AI助手可以利用 Radare2 的功能来分析二进制文件,执行各种安全分析和逆向工程任务。
主要功能点:
- 二进制文件分析: 利用 Radare2 强大的分析能力,包括反汇编、反编译、调试、数据提取等。
- 工具化操作: 将 Radare2 的常用功能封装为一系列工具,例如打开文件、关闭文件、执行 Radare2 命令、代码分析和反汇编等,方便AI助手调用。
- 标准MCP协议: 遵循 MCP 协议标准,通过 JSON-RPC 与客户端通信,易于集成到任何支持 MCP 的 AI 平台。
- stdin/stdout 通信: 采用简单的标准输入/输出流进行通信,部署和配置简单。
安装步骤:
- 安装 Radare2 包管理器 (r2pm): 如果您的系统中没有 r2pm,请先安装它。通常 Radare2 自带 r2pm,或者您可以参考 Radare2 官方文档安装。
- 使用 r2pm 安装 r2mcp: 打开终端,运行以下命令即可安装 'r2mcp' 包:
安装完成后,'r2mcp' 可执行文件将被安装到 r2pm 的 bin 目录下。r2pm -Uci r2mcp
服务器配置:
Radare2 MCP Server 旨在与支持 MCP 协议的客户端协同工作。以 Claude Desktop 为例,您需要配置 Claude 客户端,使其能够连接到 Radare2 MCP Server。
-
打开 Claude Desktop 开发者设置: 在 Claude Desktop 应用中,按下 'CMD + ,' (macOS) 或 'Ctrl + ,' (Windows/Linux) 打开开发者设置。
-
编辑配置文件: 找到并编辑 Claude 的配置文件 'claude_desktop_config.json'。该文件通常位于以下路径:
- macOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
- Windows: '%APPDATA%\Claude\claude_desktop_config.json'
- Linux: '~/.config/Claude/claude_desktop_config.json'
-
添加 MCP 服务器配置: 在 'claude_desktop_config.json' 文件中的 '"mcpServers"' 字段下,添加 Radare2 MCP Server 的配置信息。如果 'mcpServers' 字段不存在,请创建它。
{ "mcpServers": { "radare2": { // 服务器名称,可以自定义 "command": "r2pm", // 启动服务器的命令,这里使用 r2pm 启动器 "args": ["-r", "r2mcp"] // 命令参数,指定 r2pm 运行 r2mcp 包 } } }配置参数说明:
- '"radare2"': 服务器名称,您可以自定义,用于在 Claude 客户端中标识该服务器。
- '"command": "r2pm"': 指定用于启动服务器的命令。这里 'r2pm' 是 Radare2 的包管理器,用于运行已安装的 'r2mcp' 包。
- '"args": ["-r", "r2mcp"]': 传递给 'r2pm' 命令的参数。'-r r2mcp' 告诉 'r2pm' 运行名为 'r2mcp' 的包。
-
重启 Claude 客户端: 保存配置文件后,重启 Claude Desktop 客户端,配置即可生效。
基本使用方法:
配置完成后,在 Claude 等 AI 客户端中,您可以通过自然语言指令来调用 Radare2 MCP Server 提供的工具,进行二进制文件分析。
例如,您可以指示 AI 助手:
- "打开文件 '/bin/ls' 并分析它的功能"
- "反汇编地址 '0x404890' 处的代码"
- "运行 Radare2 命令 'pdf @main' 查看 main 函数的反汇编"
AI 助手会将这些指令转换为对 Radare2 MCP Server 工具的调用,服务器会使用 Radare2 执行相应的操作,并将结果返回给 AI 助手。
注意:
- Radare2 MCP Server 依赖于 Radare2 工具套件,请确保您的系统中已正确安装 Radare2。
- 该服务器设计为通过 MCP 客户端(如 Claude)调用,不建议直接在终端运行 'r2mcp' 可执行文件。
信息
分类
开发者工具