Binary Ninja MCP
Двоичный ниндзя MCP
Этот репозиторий содержит плагин Binary Ninja, сервер MCP и мост, который обеспечивает бесшовную интеграцию возможностей Binary Ninja с вашим любимым клиентом LLM.
Функции
Простая интеграция в реальном времени между клиентами Binary Ninja и MCP
Улучшенный процесс обратного проектирования с помощью ИИ
Основная поддержка Claude Desktop как клиента MCP, но расширяемая для других интеграций
Related MCP server: GhidraMCP
Примеры
Создание отчета по двоичному анализу

Переименование функций

Компоненты
Этот репозиторий содержит два отдельных компонента:
Плагин Binary Ninja, который предоставляет сервер MCP, раскрывающий возможности Binary Ninja через конечные точки HTTP. Его можно использовать с любым клиентом, реализующим протокол MCP.
Отдельный компонент моста MCP, который соединяет ваш любимый клиент MCP с сервером Binary Ninja MCP. Хотя Claude Desktop является основным путем интеграции, сервер MCP может использоваться с другими клиентами.
Поддерживаемые интеграции
В следующей таблице указано, какие интеграции с Binary Ninja поддерживаются в настоящее время.
Функция | Описание |
| Получить текущий статус загруженного двоичного файла. |
| Перечислите все имена пространств имен/классов в программе. |
| Перечислите определенные метки данных и их значения. |
| Список экспортированных функций/символов. |
| Список импортированных символов в программе. |
| Перечислите все имена функций в программе. |
| Перечислите все неглобальные пространства имен в программе. |
| Перечислите все сегменты памяти в программе. |
| Переименовать метку данных по указанному адресу. |
| Переименовать функцию, присвоив ей новое имя, определенное пользователем. |
| Поиск функций, имя которых содержит заданную подстроку. |
| Декомпилировать определенную функцию по имени и вернуть декомпилированный код C. |
| Оставьте комментарий по определенному адресу. |
| Установить комментарий для функции. |
| Получите комментарий по определенному адресу. |
| Получить комментарий к функции. |
| Удалить комментарий по указанному адресу. |
| Удалить комментарий к функции. |
| Получить ассемблерное представление функции по имени или адресу. |
| Получите имя функции, которой принадлежит адрес. |
| Получить имена и адреса функций, которые вызывают заданную функцию. |
| Извлечь определение пользовательского типа (структура, перечисление, typedef, объединение). |
| Переименовать переменную внутри заданной функции. |
| Перепечатайте переменную внутри заданной функции. |
| Добавьте определения типов из определения типа строки C. |
| Изменить сигнатуру данной функции, заданную как строковый тип. |
Предпосылки
Питон 3.12+
Claude Desktop (или предпочтительная интеграция)
Установка
Плагин Binary Ninja
Вы можете установить плагин через менеджер плагинов Binary Ninja ( Plugins > Manage Plugins ).

Чтобы вручную настроить плагин, этот репозиторий можно скопировать в папку плагинов Binary Ninja.
Claude Desktop Bridge (опционально)
Это необходимо только в том случае, если вы хотите использовать Claude Desktop в качестве клиента MCP. Сначала убедитесь, что у вас настроена виртуальная среда:
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.txtАвтоматическая конфигурация (Mac)
На Mac вы можете автоматизировать настройку, выполнив:
./scripts/setup_claude_desktop.pyРучная настройка
В других операционных системах или для ручной настройки интеграции Claude Desktop:
Перейдите в
Settings > Developer > Edit ConfigДобавьте следующую конфигурацию:
{
"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"
]
}
}
}Примечание: замените /ABSOLUTE/PATH/TO на фактический абсолютный путь к каталогу вашего проекта. Для доступа к установленным зависимостям необходимо использовать интерпретатор Python виртуальной среды.
Использование
Клод Десктоп
Откройте Binary Ninja и установите плагин
Binary Ninja MCPПерезапустите Binary Ninja, а затем откройте двоичный файл.
Запустите сервер MCP (
Plugins > MCP Server > Start MCP Server)Запустить Claude Desktop
Интеграция будет автоматически доступна после открытия Claude Desktop.

Теперь вы можете начать подсказывать Клоду о текущем открытом бинарнике. Примеры подсказок:
«Создать отчет по бинарному анализу для текущего двоичного файла».
«Переименовать функцию X в Y в текущем двоичном файле».
«Перечислить все функции в текущем двоичном файле».
«Каков статус загруженного двоичного файла?»
Другие интеграции MCP-клиента
Мост можно использовать с другими клиентами MCP, реализовав соответствующий уровень интеграции.
Разработка
Структура проекта организована следующим образом:
binary_ninja_mcp/
├── bridge/ # MCP client integration
├── plugin/ # Binary Ninja plugin
├── scripts/
│ └── setup_claude_desktop.py # Setup script for Claude DesktopВнося вклад
Вклады приветствуются. Пожалуйста, не стесняйтесь отправлять запрос на включение.
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