Related MCP Server Resources

Explore more AI models, providers, and integration options:

  • Explore AI Models
  • Explore AI Providers
  • Explore MCP Servers
  • LangDB Pricing
  • Documentation
  • AI Industry Blog
  • Neo N3 MCP Server
  • Gmail Plugin MCP Server
  • Jira MCP Server
  • MCP Server for ArangoDB
  • DaVinci Resolve MCP
Back to MCP Servers
Binary Ninja MCP

Binary Ninja MCP

Public
fosdickio/binary_ninja_mcp

A server that enables seamless integration of Binary Ninja's reverse engineering capabilities with LLM assistance, allowing AI tools like Claude to interact with binary analysis features in real-time.

Verified
python
0 tools
May 30, 2025
Updated May 30, 2025

Binary Ninja MCP

This repository contains a Binary Ninja plugin, MCP server, and bridge that enables seamless integration of Binary Ninja's capabilities with your favorite LLM client.

Features

  • Seamless, real-time integration between Binary Ninja and MCP clients
  • Enhanced reverse engineering workflow with AI assistance
  • Primary support for Claude Desktop as the MCP client, but extensible for other integrations

Examples

Generating a Binary Analysis Report

Binary Analysis Report Generation

Renaming Functions

Rename Function Demo

Components

This repository contains two separate components:

  1. A Binary Ninja plugin that provides an MCP server that exposes Binary Ninja's capabilities through HTTP endpoints. This can be used with any client that implements the MCP protocol.
  2. A separate MCP bridge component that connects your favorite MCP client to the Binary Ninja MCP server. While Claude Desktop is the primary integration path, the MCP server can be used with other clients.

Supported Integrations

The following table details which integrations with Binary Ninja are currently supported.

FunctionDescription
get_binary_statusGet the current status of the loaded binary.
list_classesList all namespace/class names in the program.
list_data_itemsList defined data labels and their values.
list_exportsList exported functions/symbols.
list_importsList imported symbols in the program.
list_methodsList all function names in the program.
list_namespacesList all non-global namespaces in the program.
list_segmentsList all memory segments in the program.
rename_dataRename a data label at the specified address.
rename_functionRename a function by its current name to a new user-defined name.
search_functions_by_nameSearch for functions whose name contains the given substring.
decompile_functionDecompile a specific function by name and return the decompiled C code.
set_commentSet a comment at a specific address.
set_function_commentSet a comment for a function.
get_commentGet the comment at a specific address.
get_function_commentGet the comment for a function.
delete_commentDelete the comment at a specific address.
delete_function_commentDelete the comment for a function.
get_assembly_functionGet the assembly representation of a function by name or address.
function_atRetrive the name of the function the address belongs to.
code_referencesRetrive names and addresses of functions that call the given function.
get_user_defined_typeRetrive definition of a user defined type (struct, enumeration, typedef, union).
rename_variableRename variable inside a given function.
retype_variableRetype variable inside a given function.
define_typesAdd type definitions from a C string type definition.
edit_function_signatureEdit signature of a given function, given as a type string.

Prerequisites

  • Binary Ninja
  • Python 3.12+
  • Claude Desktop (or your preferred integration)

Installation

Binary Ninja Plugin

You may install the plugin through Binary Ninja's Plugin Manager (Plugins > Manage Plugins).

Plugin Manager Listing

To manually configure the plugin, this repository can be copied into the Binary Ninja plugins folder.

Claude Desktop Bridge (Optional)

This is only needed if you want to use Claude Desktop as your MCP client. Make sure that you have your virtual environment configured first:

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

Automated Configuration (Mac)

On a Mac, you can automate the setup by running:

./scripts/setup_claude_desktop.py

Manual Configuration

On other operating systems or to manually configure the Claude Desktop integration:

  1. Navigate to Settings > Developer > Edit Config
  2. Add the following configuration:
{ "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" ] } } }

Note: Replace /ABSOLUTE/PATH/TO with the actual absolute path to your project directory. The virtual environment's Python interpreter must be used to access the installed dependencies.

Usage

Claude Desktop

  1. Open Binary Ninja and install the Binary Ninja MCP plugin
  2. Restart Binary Ninja and then open a binary
  3. Start the MCP server (Plugins > MCP Server > Start MCP Server)
  4. Launch Claude Desktop

The integration will be automatically available after you open Claude Desktop.

Claude Integration

You may now start prompting Claude about the currently open binary. Example prompts:

  • "Generate a binary analysis report for the current binary."
  • "Rename function X to Y in the current binary."
  • "List all functions in the current binary."
  • "What is the status of the loaded binary?"

Other MCP Client Integrations

The bridge can be used with other MCP clients by implementing the appropriate integration layer.

Development

The project structure is organized as follows:

binary_ninja_mcp/
├── bridge/                      # MCP client integration
├── plugin/                      # Binary Ninja plugin
├── scripts/
│   └── setup_claude_desktop.py  # Setup script for Claude Desktop

Contributing

Contributions are welcome. Please feel free to submit a pull request.

Publicly Shared Threads0

Discover shared experiences

Shared threads will appear here, showcasing real-world applications and insights from the community. Check back soon for updates!

Share your threads to help others
Related MCPs5
  • Neo N3 MCP Server
    Neo N3 MCP Server

    An MCP server that provides seamless integration with the Neo N3 blockchain, allowing Claude to inte...

    Added May 30, 2025
  • Gmail Plugin MCP Server
    Gmail Plugin MCP Server

    An MCP server that enables Gmail integration, allowing users to manage emails (send, receive, read, ...

    Added May 30, 2025
  • Jira MCP Server
    Jira MCP Server

    A Model Context Protocol server that enables AI assistants like Claude to interact with Jira, allowi...

    Added May 30, 2025
  • MCP Server for ArangoDB
    MCP Server for ArangoDB

    A TypeScript-based server to interact with ArangoDB using the Model Context Protocol, enabling datab...

    7 tools
    Added May 30, 2025
  • DaVinci Resolve MCP
    DaVinci Resolve MCP

    A server that enables LLM applications to interact directly with DaVinci Resolve video editing softw...

    Added May 30, 2025