binary_ninja_cline_mcp

binary_ninja_cline_mcp

site icon
2025.04.04 4
Python二进制分析工具链集成开发效率
bn_cline_mcp是一个与Binary Ninja(个人许可证)配合使用的MCP服务器,允许Cline通过Binary Ninja进行二进制文件分析。该服务器通过插件和HTTP服务器桥接实现功能,支持在Cline环境中调用Binary Ninja的分析能力。
View on GitHub

Overview

基本能力

产品定位

bn_cline_mcp是一个桥接工具,旨在将Binary Ninja的二进制分析能力集成到Cline环境中。

核心功能

  1. 提供MCP服务器,支持Cline通过Binary Ninja分析二进制文件。
  2. 支持HTTP服务器桥接,实现与Binary Ninja的通信。
  3. 允许通过配置文件自定义MCP服务器参数。

适用场景

  1. 在Cline环境中需要调用Binary Ninja进行二进制分析的场景。
  2. 开发者需要将Binary Ninja的功能集成到其他工具链中。

工具列表

  1. binary_ninja_mcp_http_server.py:HTTP服务器脚本,用于与Binary Ninja通信。
  2. binaryninja-mcp-bridge.js:Node.js桥接脚本,用于在Cline中启动MCP服务器。

常见问题解答

  1. 许可证限制:由于使用的是Binary Ninja个人许可证,无法测试无头模式(headless mode)。
  2. 文件使用:并非所有文件都会被使用,部分文件为原型代码。

使用教程

使用依赖

  1. 安装Binary Ninja MCP插件: bash git clone https://github.com/fosdickio/binary_ninja_mcp

安装教程

  1. 在Binary Ninja中打开二进制文件并启动MCP服务器。
  2. 在终端中运行HTTP服务器: bash python binary_ninja_mcp_http_server.py --port 8088
  3. 在另一个终端中启动Node.js桥接: bash npm start
  4. 在Cline中添加MCP服务器配置(示例见输入数据中的JSON配置)。

调试方式

  1. 检查HTTP服务器是否正常运行: bash curl http://localhost:8088
  2. 检查Node.js桥接是否正常运行: bash ps aux | grep node
  3. 查看Cline日志以确认MCP服务器是否成功连接。

许可证

该项目遵循 GPL-3.0 开源许可条款,请参阅 GPL-3.0 了解完整条款。