Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
Tools/GitHubGitHub/symgraph/idassistmcp
Static AnalysisDynamic Analysis (Sandboxing)Vulnerability AnalysisCode AnalysisExploitationReverse EngineeringDebuggersMalware AnalysisPenetration TestingBinary AnalysisAI-Assisted ReversingFirmware Analysis
46103 months agoReviewed by Kitploit

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share
GitHubsymgraph/idassistmcp

IDAssistMCP

Standalone MCP server plugin for IDA Pro.

View Repository

IDAssistMCP

Standalone MCP (Model Context Protocol) server plugin for IDA Pro 9.x that exposes IDA's analysis capabilities to LLM clients like Claude Desktop.

Screenshot

Features

  • 41 MCP tools covering binary analysis, decompilation, cross-references, symbol management, type system, navigation, patching, export, and more
  • 6 consolidated tools with action/format/direction parameters for comments, variables, types, xrefs, bookmarks, and code
  • 8 MCP resources for browsable binary metadata (triage, functions, imports, exports, strings, info, segments, sections)
  • 7 guided prompts for common reverse engineering workflows (function analysis, vulnerability identification, documentation, data flow tracing, function comparison, struct recovery, network protocol analysis)
  • SSE and Streamable HTTP transports via Hypercorn ASGI server
  • Thread-safe IDB modifications via execute_on_main_thread() wrapper
  • LRU analysis cache for expensive operations like decompilation
  • Async task manager for long-running operations
  • Pydantic configuration with environment variable support (IDASSISTMCP_ prefix)

Installation

Prerequisites

  • IDA Pro 9.x with Python 3.10+
  • Hex-Rays decompiler (optional, for decompilation tools)

Option 1: IDA Plugin Manager (recommended)

root@kitploit:~
hcli plugin install idassistmcp

This automatically installs the plugin and its Python dependencies.

Option 2: Manual install (from release tarball)

Download the latest release zip from GitHub Releases and extract it into your IDA plugins directory:

Linux / macOS:

root@kitploit:~
unzip IDAssistMCP-*.zip -d ~/.idapro/plugins/

Windows: Extract the zip into %APPDATA%\Hex-Rays\IDA Pro\plugins\.

Then install dependencies using IDA's bundled Python (not your system Python):

Linux / macOS:

root@kitploit:~
<IDA_INSTALL_DIR>/python3/bin/pip3 install -r ~/.idapro/plugins/IDAssistMCP/requirements.txt

Windows:

root@kitploit:~
"<IDA_INSTALL_DIR>\python3\python.exe" -m pip install -r "%APPDATA%\Hex-Rays\IDA Pro\plugins\IDAssistMCP\requirements.txt"

Replace <IDA_INSTALL_DIR> with your IDA Pro installation path.

Tip: You can also use the IDAUSR environment variable to specify a custom plugins directory.

Usage

Starting the Server

  1. Open a binary in IDA Pro
  2. Press Ctrl+Shift+M or go to Edit > Plugins > IDAssistMCP
  3. The MCP server URL will be printed to IDA's output window
  4. Press Ctrl+Shift+M again to stop the server

Claude Desktop Configuration

Add to your Claude Desktop claude_desktop_config.json:

root@kitploit:~
{
  "mcpServers": {
    "idassistmcp": {
      "url": "http://localhost:9080/mcp"
    }
  }
}

Environment Variables

Configure via environment variables with the IDASSISTMCP_ prefix:

Tools Reference

Binary Management (2)

ToolDescription
list_binariesList the currently loaded binary
get_binary_infoDetailed binary metadata (arch, hashes, segments)

Code Analysis (4)

Cross-References (1 consolidated)

ToolActionsDescription
xrefsdirection: to/from/both, include_calls: boolXrefs and optional callers/callees for an address

Comments (1 consolidated)

ToolActionsDescription
commentsaction: get, set, list, removeManage comments (regular, repeatable, function)

Variables (1 consolidated)

ToolActionsDescription
variablesaction: list, renameList locals, or rename local/global variables with scope: auto, local, global

Types (2 — 1 consolidated + 1 standalone)

ToolActions / Description
typesaction: list, set, create_struct, create_enum — manage IDB types
get_classesList struct/class types from type library

Function Discovery (5)

Symbol Management (2)

ToolDescription
rename_symbolRename any symbol (function or data)
batch_renameBatch rename multiple symbols

Binary Info (5)

Data Analysis (6)

Patching (3)

ToolDescription
patch_bytesPatch raw bytes in IDB
assemble_codeAssemble instruction text at an address and optionally patch it
export_programExport the patched binary or IDA database to disk

Navigation (4)

Task Management (4)

ToolDescription
start_taskStart async background task
get_task_statusCheck task progress

Project Structure

root@kitploit:~
IDAssistMCP/
├── idassistmcp_plugin.py              # IDA plugin_t entry point
├── requirements.txt
├── README.md
└── src/
    └── idassist_mcp/
        ├── __init__.py
        ├── server.py                  # FastMCP server + transport
        ├── context.py                 # Single-binary IDA context
        ├── tools.py                   # 41 MCP tools (IDA API)
        ├── resources.py               # 8 MCP resources
        ├── prompts.py                 # 7 guided workflow prompts
        ├── config.py                  # Pydantic settings
        ├── cache.py                   # LRU analysis cache
        ├── tasks.py                   # Async task manager
        ├── logging.py                 # IDA logging wrapper
        ├── utils.py                   # IDA-specific utilities
        └── ui/
            └── tool_registry.py       # Tool catalog for UI

License

See LICENSE file for details.

Download Tool
VariableDefaultDescription
IDASSISTMCP_SERVER__HOSTlocalhostServer bind address
IDASSISTMCP_SERVER__PORT9080Server port
IDASSISTMCP_SERVER__TRANSPORTstreamablehttpTransport type (sse or streamablehttp)
IDASSISTMCP_DEBUGfalseEnable debug mode
IDASSISTMCP_LOG_LEVELINFOLog level
ToolDescription
get_codeGet function code — format: 'decompile' (pseudo-C) or 'disasm' (assembly)
analyze_functionComprehensive analysis: metadata, CFG, callers/callees, decompilation
get_basic_blocksCFG basic blocks with successors/predecessors
get_function_stack_layoutStack frame layout (locals, args, saved regs)
ToolDescription
get_functionsAll functions with filtering and pagination
search_functions_by_nameSearch by name pattern and size filters
get_function_by_nameExact name lookup
get_function_by_addressAddress lookup
get_function_statisticsAggregate statistics (counts, sizes, top-10)
ToolDescription
get_importsImport table grouped by module
get_exportsExport table
get_stringsString table with pagination
get_segmentsMemory segments with permissions
get_entry_pointsAll binary entry points
ToolDescription
read_memoryRead raw bytes at address
get_data_atGet typed data at address
search_bytesBinary byte pattern search
search_stringsString search with pagination
create_data_varDefine data variable at address (byte/word/dword/qword/float/ascii/C type)
get_data_varsList defined data variables (non-code items)
ToolDescription
navigate_toMove IDA cursor to address
bookmarksConsolidated bookmark management - actions: list, set, remove
get_current_addressGet address and context at cursor position
get_current_functionGet function info at cursor position
cancel_task
Cancel running task
list_tasksList all async tasks