使用说明
项目简介
Radare2 MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,旨在将强大的逆向工程工具 radare2 的能力集成到 AI 助手(如 Claude)中。通过该服务器,AI 助手可以利用 radare2 分析二进制文件,获取文件信息、执行命令、进行反汇编等操作,从而扩展 AI 在安全分析、漏洞挖掘等领域的应用能力。
主要功能点
- radare2 集成: 直接将 radare2 的核心功能暴露给 AI 助手,无需复杂配置。
- 资源访问: 提供多种预定义的资源,例如:
- 当前文件信息
- 函数列表
- 导入表和导出表
- 字符串
- 内存数据
- 反汇编代码
- 工具调用: 支持通过工具调用执行 radare2 命令,例如:
- 打开和关闭文件
- 运行任意 radare2 命令
- 执行代码分析
- 反汇编指定地址的代码
安装步骤
-
环境准备: 确保已安装以下依赖:
- radare2 (需包含开发头文件)
- pkg-config
- gcc 或兼容的 C 编译器
-
克隆仓库:
git clone https://github.com/dnakov/radare2-mcp.git cd radare2-mcp -
编译服务器:
make -
安装服务器: (可能需要 sudo 权限)
make install安装后,'r2_mcp' 可执行文件通常位于 '/usr/local/bin' 目录。
服务器配置
MCP 服务器是为 MCP 客户端设计的。要将 Radare2 MCP Server 与 MCP 客户端(例如 Claude Desktop)连接,您需要在 MCP 客户端的配置文件中指定服务器的启动命令。
对于 Claude Desktop,您需要编辑 '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'
在 'mcpServers' 字段下添加 Radare2 MCP Server 的配置:
{ "mcpServers": { "radare2": { "command": "/path/to/r2_mcp" } } }
将 '/path/to/r2_mcp' 替换为 'r2_mcp' 可执行文件的实际安装路径 (例如 '/usr/local/bin/r2_mcp')。
基本使用方法
启动 Radare2 MCP Server 后,它将作为 MCP 客户端的后端服务运行。客户端通过 JSON-RPC 协议与服务器通信,发送请求以访问资源或调用工具。
例如,在 Claude 中,您可以指示 Claude 使用 "radare2" 服务器来分析二进制文件。Claude 将根据您的指令,调用 Radare2 MCP Server 提供的工具和资源,并将分析结果返回给您。
注意: Radare2 MCP Server 通过标准输入/输出 (stdin/stdout) 进行通信,并以命令行程序的方式运行。
信息
分类
开发者工具