Binary Ninja MCP
Binärer Ninja MCP
Dieses Repository enthält ein Binary Ninja-Plugin, einen MCP-Server und eine Bridge, die eine nahtlose Integration der Funktionen von Binary Ninja in Ihren bevorzugten LLM-Client ermöglicht.
Merkmale
Nahtlose Echtzeitintegration zwischen Binary Ninja und MCP-Clients
Verbesserter Reverse-Engineering-Workflow mit KI-Unterstützung
Primäre Unterstützung für Claude Desktop als MCP-Client, aber erweiterbar für andere Integrationen
Related MCP server: GhidraMCP
Beispiele
Generieren eines Binäranalyseberichts

Umbenennen von Funktionen

Komponenten
Dieses Repository enthält zwei separate Komponenten:
Ein Binary Ninja-Plugin, das einen MCP-Server bereitstellt, der die Funktionen von Binary Ninja über HTTP-Endpunkte bereitstellt. Dies kann mit jedem Client verwendet werden, der das MCP-Protokoll implementiert.
Eine separate MCP-Bridge-Komponente, die Ihren bevorzugten MCP-Client mit dem Binary Ninja MCP-Server verbindet. Während Claude Desktop der primäre Integrationspfad ist, kann der MCP-Server auch mit anderen Clients verwendet werden.
Unterstützte Integrationen
In der folgenden Tabelle ist aufgeführt, welche Integrationen mit Binary Ninja derzeit unterstützt werden.
Funktion | Beschreibung |
| Rufen Sie den aktuellen Status der geladenen Binärdatei ab. |
| Listet alle Namespace-/Klassennamen im Programm auf. |
| Listen Sie definierte Datenbeschriftungen und ihre Werte auf. |
| Listet exportierte Funktionen/Symbole auf. |
| Listet importierte Symbole im Programm auf. |
| Listen Sie alle Funktionsnamen im Programm auf. |
| Listet alle nicht globalen Namespaces im Programm auf. |
| Listet alle Speichersegmente im Programm auf. |
| Benennen Sie ein Datenlabel an der angegebenen Adresse um. |
| Benennen Sie eine Funktion von ihrem aktuellen Namen in einen neuen benutzerdefinierten Namen um. |
| Suche nach Funktionen, deren Name die angegebene Teilzeichenfolge enthält. |
| Dekompilieren Sie eine bestimmte Funktion nach Namen und geben Sie den dekompilierten C-Code zurück. |
| Setzen Sie einen Kommentar an eine bestimmte Adresse. |
| Legen Sie einen Kommentar für eine Funktion fest. |
| Erhalten Sie den Kommentar an einer bestimmten Adresse. |
| Holen Sie sich den Kommentar für eine Funktion. |
| Löschen Sie den Kommentar an einer bestimmten Adresse. |
| Löschen Sie den Kommentar für eine Funktion. |
| Rufen Sie die Assemblydarstellung einer Funktion nach Name oder Adresse ab. |
| Rufen Sie den Namen der Funktion ab, zu der die Adresse gehört. |
| Ruft Namen und Adressen von Funktionen ab, die die angegebene Funktion aufrufen. |
| Rufen Sie die Definition eines benutzerdefinierten Typs (Struktur, Aufzählung, Typdefinition, Vereinigung) ab. |
| Variable innerhalb einer gegebenen Funktion umbenennen. |
| Geben Sie die Variable innerhalb einer gegebenen Funktion neu ein. |
| Fügen Sie Typdefinitionen aus einer C-String-Typdefinition hinzu. |
| Bearbeiten Sie die Signatur einer bestimmten Funktion, angegeben als Typzeichenfolge. |
Voraussetzungen
Python 3.12+
Claude Desktop (oder Ihre bevorzugte Integration)
Installation
Binary Ninja Plugin
Sie können das Plugin über den Plugin-Manager von Binary Ninja ( Plugins > Manage Plugins ) installieren.

Um das Plugin manuell zu konfigurieren, kann dieses Repository in den Plugin-Ordner von Binary Ninja kopiert werden.
Claude Desktop Bridge (optional)
Dies ist nur erforderlich, wenn Sie Claude Desktop als MCP-Client verwenden möchten. Stellen Sie sicher, dass Sie zuerst Ihre virtuelle Umgebung konfiguriert haben:
git clone git@github.com:fosdickio/binary_ninja_mcp.git
cd binary_ninja_mcp
python3 -m venv .venv
source .venv/bin/activate # On macOS/Linux
pip install -r bridge/requirements.txtAutomatisierte Konfiguration (Mac)
Auf einem Mac können Sie die Einrichtung automatisieren, indem Sie Folgendes ausführen:
./scripts/setup_claude_desktop.pyManuelle Konfiguration
Auf anderen Betriebssystemen oder um die Claude Desktop-Integration manuell zu konfigurieren:
Navigieren Sie zu
Settings > Developer > Edit ConfigFügen Sie die folgende Konfiguration hinzu:
{
"mcpServers": {
"binary_ninja_mcp": {
"command": "/ABSOLUTE/PATH/TO/binary_ninja_mcp/.venv/bin/python",
"args": [
"/ABSOLUTE/PATH/TO/binary_ninja_mcp/bridge/binja_mcp_bridge.py"
]
}
}
}Hinweis: Ersetzen Sie /ABSOLUTE/PATH/TO durch den tatsächlichen absoluten Pfad zu Ihrem Projektverzeichnis. Für den Zugriff auf die installierten Abhängigkeiten muss der Python-Interpreter der virtuellen Umgebung verwendet werden.
Verwendung
Claude Desktop
Öffnen Sie Binary Ninja und installieren Sie das
Binary Ninja MCPPluginStarten Sie Binary Ninja neu und öffnen Sie dann eine Binärdatei
Starten Sie den MCP-Server (
Plugins > MCP Server > Start MCP Server)Starten Sie Claude Desktop
Die Integration ist automatisch verfügbar, nachdem Sie Claude Desktop geöffnet haben.

Sie können Claude nun nach der aktuell geöffneten Binärdatei fragen. Beispiel-Eingabeaufforderungen:
"Erstellen Sie einen Binäranalysebericht für die aktuelle Binärdatei."
"Benennen Sie die Funktion X in der aktuellen Binärdatei in Y um."
"Listet alle Funktionen in der aktuellen Binärdatei auf."
„Wie ist der Status der geladenen Binärdatei?“
Andere MCP-Client-Integrationen
Die Bridge kann mit anderen MCP-Clients verwendet werden, indem die entsprechende Integrationsschicht implementiert wird.
Entwicklung
Die Projektstruktur ist wie folgt organisiert:
binary_ninja_mcp/
├── bridge/ # MCP client integration
├── plugin/ # Binary Ninja plugin
├── scripts/
│ └── setup_claude_desktop.py # Setup script for Claude DesktopBeitragen
Beiträge sind willkommen. Senden Sie gerne einen Pull Request.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
The Remote MCP server acts as a standardized bridge between LLM applications (like Claude, ChatGPT, and Cursor) and external services, enabling AI agents to access external tools and resources. Its primary capability is providing a centralized search tool to discover other MCP servers and their respective tools. Unlike local implementations, it runs remotely with OAuth authentication and permission controls for security.
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables Large Language Models to interact with Binary Ninja for reverse engineering tasks like viewing assembly code, decompiled code, renaming functions, and adding comments.3MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that allows LLMs to autonomously reverse engineer applications by exposing Ghidra's functionality, including decompiling binaries, analyzing code, and renaming methods and data.Apache 2.0
- AlicenseNot gradedqualityAmaintenanceEnables AI-assisted reverse engineering by bridging Binary Ninja with Large Language Models through 40+ analysis tools. Provides comprehensive binary analysis capabilities including decompilation, symbol management, type analysis, and documentation generation through natural language interactions.49MIT
- AlicenseNot gradedqualityBmaintenanceA multi-backend MCP server that exposes binary analysis capabilities from IDA Pro and Ghidra, allowing LLMs to directly drive reverse-engineering tools via natural language.151Apache 2.0
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/fosdickio/binary_ninja_mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server