Binary Ninja plugin to provide MCP functionality.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
tools
-
analyze_function
Comprehensive function analysis with control flow and complexity metrics
-
assemble_code
Assemble instruction text at an address and optionally patch it
-
batch_rename
Rename multiple symbols in one operation
-
bookmarks
Unified bookmark management - actions: list, set, remove
-
cancel_task
Cancel a running task
-
comments
Unified comment management - actions: get, set, list, remove, set_function
-
create_data_var
Define data variables at addresses
-
export_program
Export the patched binary or Binary Ninja database to disk
-
get_basic_blocks
Get basic block information for control flow analysis
-
get_binary_info
Check analysis status and metadata
-
get_classes
List all classes and structures
-
get_code
Unified code retrieval - supports formats: decompile, hlil, mlil, llil, disasm, pseudo_c
-
get_current_address
Get current cursor position with context
-
get_current_function
Identify function at current address
-
get_data_at
Read and analyze raw data
-
get_data_vars
List all defined data variables
-
get_entry_points
List all binary entry points
-
get_exports
Export table with symbol information
-
get_function_low_level_il
Get Low-Level IL for a function
-
get_function_stack_layout
Get stack frame layout with variable offsets
-
get_function_statistics
Comprehensive statistics for all functions
-
get_functions
List all functions with metadata (paginated)
-
get_functions_advanced
Advanced filtering by size, complexity, parameters
-
get_imports
Import table grouped by module
-
get_namespaces
List namespaces and symbol organization
-
get_sections
Binary section information
-
get_segments
Memory segment layout
-
get_strings
String extraction with filtering
-
get_task_status
Check status of async operations
-
list_binaries
List all loaded binary files
-
list_tasks
List all pending/running tasks
-
patch_bytes
Patch raw bytes in the binary at an address
-
rename_symbol
Rename functions and data variables
-
search_bytes
Search for byte patterns in binary
-
search_functions_advanced
Multi-target search (name, comments, calls, variables)
-
search_functions_by_name
Find functions by name pattern
-
search_strings
Search strings by pattern
-
start_task
Start an async background task
-
types
Unified type management - actions: create, create_enum, create_typedef, create_class, add_member, get_info, list
-
update_analysis_and_wait
Force analysis update and wait for completion
-
variables
Unified variable management - actions: list, create, rename, set_type; rename supports local/global via scope
-
xrefs
Unified cross-references - actions: refs_to, refs_from, call_graph
filesystem 4
- fs symgraph-BinAssistMCP-eceff82/src/binassist_mcp/config.py :9
from pathlib import Path - fs symgraph-BinAssistMCP-eceff82/src/binassist_mcp/context.py :12
from pathlib import Path - fs symgraph-BinAssistMCP-eceff82/src/binassist_mcp/tools.py :11
from pathlib import Path - fs symgraph-BinAssistMCP-eceff82/src/binassist_mcp/utils.py :7
from pathlib import Path
network 1
- net symgraph-BinAssistMCP-eceff82/src/binassist_mcp/plugin.py :240
import socket
tool registrations 44
- list_binaries symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :551
- get_binary_info symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :572
- open_binary symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :613
- rename_symbol symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :670
- get_functions symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :693
- search_functions_by_name symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :711
- get_imports symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :730
- get_exports symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :748
- get_strings symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :766
- get_segments symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :786
- get_sections symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :804
- update_analysis_and_wait symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :829
- get_classes symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :848
- get_namespaces symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :868
- create_data_var symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :887
- get_data_vars symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :908
- get_data_at symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :926
- analyze_function symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :953
- get_function_signature symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :972
- get_functions_advanced symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :989
- search_functions_advanced symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1025
- get_function_statistics symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1048
- get_current_address symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1067
- get_current_function symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1085
- get_code symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1106
- comments symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1130
- variables symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1154
- types symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1192
- xrefs symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1224
- get_function_low_level_il symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1248
- search_strings symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1267
- search_bytes symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1292
- patch_bytes symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1314
- assemble_code symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1333
- export_program symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1353
- get_basic_blocks symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1372
- get_function_stack_layout symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1391
- batch_rename symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1410
- get_entry_points symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1431
- bookmarks symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1463
- start_task symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1536
- get_task_status symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1551
- cancel_task symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1564
- list_tasks symgraph-BinAssistMCP-eceff82/src/binassist_mcp/server.py :1582
declared dependencies 5
- mcp@==1.23.3
- anyio@>=4.0.0
- hypercorn@>=0.16.0
- pydantic@>=2.0.0
- pydantic-settings@>=2.0.0