返回 MCP 目录
public公开dns本地运行

binja-lattice-mcp

BinjaLattice是一个为Binary Ninja设计的安全通信协议,支持与外部MCP服务器和工具交互,提供二进制分析数据的获取和修改功能。

article

README

🚀 BinjaLattice 标签协议

BinjaLattice 是专为 Binary Ninja 设计的安全通信协议,可与外部模型上下文协议(MCP)服务器及工具进行交互。它能以结构化方式获取 Binary Ninja 的信息,还可通过 HTTP REST API 修改活动的 Binary Ninja 数据库。

🚀 快速开始

演示

点击下方图片可查看 BinjaLattice 的演示视频: BinjaLattice 演示

✨ 主要特性

  • 安全认证:采用基于令牌的认证系统。
  • 加密通信:支持可选的 SSL/TLS 加密。
  • 二进制分析上下文:可导出伪代码、反汇编、变量名、二进制信息等。
  • 二进制修改:能更新函数名称、添加注释、重命名变量。
  • 令牌管理:可自动过期和续订认证令牌。

📦 安装指南

  1. lattice_server_plugin.py 复制到 Binary Ninja 插件目录:
    • Linux: ~/.binaryninja/plugins/
    • macOS: ~/Library/Application Support/Binary Ninja/plugins/
    • Windows: %APPDATA%\Binary Ninja\plugins\
  2. 创建一个虚拟环境 pip -m venv venv-test(也可使用您喜欢的依赖管理工具)。
  3. 启用您的虚拟环境并安装所需的 Python 依赖项,使用以下命令安装:pip install -r requirements.txt(或采用其他方法)。

📚 详细文档

开发

  • 主服务器实现位于 plugin/lattice_server_plugin.py
  • MCP 服务器实现位于 mcp_server.py
  • 客户端库实现位于 lib/lattice.py

添加新功能

若要添加新的功能,可按以下步骤操作:

  1. LatticeRequestHandler 类(位于 lattice_server_plugin.py)中添加新的端点处理程序。
  2. Lattice 类(位于 lib/lattice.py)中添加相应的客户端方法。
  3. mcp_server.py 中添加新的 MCP 工具。

📄 许可证

本项目采用 MIT License

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端