A Binary Ninja plugin containing an MCP server that enables seamless integration with your favorite LLM/MCP client.
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"binary-ninja-mcp": {
"args": [
"-y",
"binary-ninja-mcp",
"--host",
"localhost",
"--port",
"9009"
],
"command": "npx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
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.
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
npx -y 'binary-ninja-mcp' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked binary-ninja-mcp against OSV.dev.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in security / developer-tools
A Model Context Protocol (MCP) server and CLI that provides tools for agent use when working on iOS and macOS projects.
XcodeBuildMCP provides tools for Xcode project management, simulator management, and app utilities.
Manage Supabase projects — databases, auth, storage, and edge functions
MCP server for using the GitLab API
MCP Security Weekly
Get CVE alerts and security updates for Binary_ninja_mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
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.

Check out this demo video on YouTube that uses the extension to solve a CTF challenge.
This repository contains two separate components:
Please install the MCP client before you install Binary Ninja MCP so that the MCP clients can be auto-setup. We currently support auto-setup for these MCP clients:
1. Cline (recommended)
2. Roo Code
3. Claude Desktop (recommended)
4. Cursor
5. Windsurf
6. Claude Code
7. LM Studio
After the MCP client is installed, you can install the MCP server using the Binary Ninja Plugin Manager or manually. Both methods support auto-setup of MCP clients.
If your MCP client is not set, you should install it first then try to reinstall the extension.
You may install the extension through Binary Ninja's Plugin Manager (Plugins > Manage Plugins).

To manually install the extension, this repository can be copied into the Binary Ninja plugins folder.
You do NOT need to set this up manually if you use a supported MCP client and follow the installation steps before.
You can also manage MCP client entries from the command line:
python scripts/mcp_client_installer.py --install # auto setup supported MCP clients
python scripts/mcp_client_installer.py --uninstall # remove entries and delete `.mcp_auto_setup_done`
python scripts/mcp_client_installer.py --config # print a generic JSON config snippet
The recommended way to set up the MCP client is using the official npm package:
npx -y binary-ninja-mcp
For MCP clients, use this configuration:
{
"mcpServers": {
"binary-ninja-mcp": {
"command": "npx",
"args": ["-y", "binary-ninja-mcp", "--host", "localhost", "--port", "9009"]
}
}
}
Or if installed globally:
{
"mcpServers": {
"binary-ninja-mcp": {
"command": "binary-ninja-mcp",
"args": ["--host", "localhost", "--port", "9009"]
}
}
}
For other MCP clients, use the Python bridge directly:
{
"mcpServers": {
"binary_ninja_mcp": {
"command": "/ABSOLUTE/PATH/TO/Binary Ninja/plugins/repositories/community/plugins/fosdickio_binary_ninja_mcp/.venv/bin/python",
"args": [
"/ABSOLUTE/PATH/TO/Binary Ninja/plugins/repositories/community/plugins/fosdickio_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.