AB

akrutsinger/binja-codemode-mcp

Developer tools

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る

13 stars 5 forks 品質 69 トレンド 17MIT

Code Execution MCP Server for Binary Ninja

概要

A Model Context Protocol (MCP) server for Binary Ninja that enables LLM-assisted reverse engineering through code execution. This plugin implements Anthropic's Code Execution pattern. Instead of accessing the typical MCP "tools", the LLM writes Python code that executes directly against Binary Ninja's API. This approach (described by Cloudflare as "Code Mode") is more token-efficient and enables more complex multi-step analyses in a single execution. - Write Python that runs directly against Binary Ninja's API - Query and mutate the binary database - Checkpoint/rollback, persistent workspace files, and reusable analysis patterns - The API reference is generated from the code and rides in the tool description, so the model always has it and it can never drift from what the plugin actually exposes - search_api() and describe() read Binary Ninja's own API across 31 types, so anything the wrapper does not cover is something the model looks up rather than a dead end 1.

README

以下は原文 README の抜粋です。原文を見る。

Binary Ninja Code Mode MCP

A Model Context Protocol (MCP) server for Binary Ninja that enables LLM-assisted reverse engineering through code execution.

Overview

This plugin implements Anthropic’s Code Execution pattern. Instead of accessing the typical MCP “tools”, the LLM writes Python code that executes directly against Binary Ninja’s API. This approach (described by Cloudflare as “Code Mode”) is more token-efficient and enables more complex multi-step analyses in a single execution.

Key Features

  • Write Python that runs directly against Binary Ninja’s API
  • Query and mutate the binary database
  • Checkpoint/rollback, persistent workspace files, and reusable analysis patterns
  • The API reference is generated from the code and rides in the tool description, so the model always has it and it can never drift from what the plugin actually exposes
  • search_api() and describe() read Binary Ninja’s own API across 31 types, so anything the wrapper does not cover is something the model looks up rather than a dead end

Installation

  1. In Binary Ninja, open the Plugin Manager (Plugins > Manage Plugins)
  2. Search for Code Mode MCP or binja_codemode_mcp
  3. Click Install
  4. Restart Binary Ninja

After installation, the plugin will be located in the community plugins folder:

# Linux
~/.binaryninja/repositories/community/plugins/akrutsinger_binja_codemode_mcp/

# macOS
~/Library/Application Support/Binary Ninja/repositories/community/plugins/akrutsinger_binja_codemode_mcp/

# Windows
%APPDATA%\Binary Ninja\repositories\community\plugins\akrutsinger_binja_codemode_mcp\

Method 2: Manual Installation

Clone or download this repository and copy to your Binary Ninja plugins folder:

# Linux
cp -r . ~/.binaryninja/plugins/binja_codemode_mcp/

# macOS
cp -r . ~/Library/Application\ Support/Binary\ Ninja/plugins/binja_codemode_mcp/

# Windows
xcopy /E /I . "%APPDATA%\Binary Ninja\plugins\binja_codemode_mcp"

Copy the whole repository, not just plugin/: plugin/ is a subpackage and imports config.py and plugin.json from the directory above it.

MCP Client Configuration

The plugin serves MCP over HTTP at http://127.0.0.1:42069/mcp, authenticated with a bearer token. There is no bridge script to launch, so the configuration no longer depends on where the plugin was installed: point your client at the URL.

Claude Code — one command, no config file to edit:

claude mcp add binja-codemode-mcp -s user --transport http \
  http://127.0.0.1:42069/mcp \
  --header "Authorization: Bearer binja-codemode-local"
GitHub で README 全文を見る

インストール

npx -y mcp-remote http://127.0.0.1:42069/mcp --header Authorization: Bearer binja-codemode-local
MCP 初心者?mcpskill.org のガイドから始めましょう →

設定

{ "mcpServers": { "binja-codemode-mcp": { "type": "http", "url": "http://127.0.0.1:42069/mcp", "headers": { "Authorization": "Bearer binja-codemode-local" } } } }