バイナリ忍者MCPサーバー
Binary Ninjaとの連携と自動化のためのモデルコンテキストプロトコルサーバー。このサーバーは、大規模言語モデルを介してBinary Ninjaと連携するためのツールを提供します。
概要
Binary Ninja MCPサーバーは、大規模言語モデルがモデルコンテキストプロトコル(MCP)を介してBinary Ninjaとやり取りできるようにするプラグインおよびサーバー実装です。以下の機能を提供します。
関数のアセンブリコードを取得する
関数のデコンパイルされたコード(HLIL)を取得する
関数と変数の名前を変更する
コメントを追加する
Related MCP server: Jira MCP Server
インストール
uvの使用(推奨)
uvを使用する場合、特別なインストールは必要ありません。 binja_mcp を直接実行するためにuvxを使用します。
PIPの使用
あるいは、pip 経由でbinja-mcpをインストールすることもできます。
インストール後、次のコマンドを使用してスクリプトとして実行できます。
Binary Ninjaプラグインのインストール
このリポジトリをクローンするか、クローンしたリポジトリを Binary Ninja のプラグイン ディレクトリにリンクします。
Linux:
~/.binaryninja/plugins/macOS:
~/Library/Application Support/Binary Ninja/plugins/Windows:
%APPDATA%\Binary Ninja\plugins\
構成
Claude Desktop/Cursor での使用
これをclaude_desktop_config.jsonまたは Cursor MCP サーバーに追加します。
使用法
Binary Ninjaを開いてバイナリをロードする
ツールメニューまたはキーボードショートカットを使用してMCPサーバーを起動します。
Claude Desktop、Cursor、またはお好みのMCPクライアントを使用してバイナリと対話します。
利用可能なコマンド
MCP インターフェイスを通じて次のコマンドが使用できます。
binja_get_function_assembly: 名前付き関数のアセンブリコードを取得するbinja_get_function_decompiled: 名前付き関数のデコンパイルされたコードを取得するbinja_get_global_variable: グローバル変数に関する情報を取得するbinja_get_current_function_assembly: 現在の関数のアセンブリを取得するbinja_get_current_function_decompiled: 現在の関数のデコンパイルされたコードを取得する
発達
ローカル開発を行っている場合、変更をテストする方法は 2 つあります。
MCP インスペクターを実行して変更をテストします。
claude_desktop_config.jsonに次のコードを追加して、Claude デスクトップ アプリの使用をテストします。
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。