GhidrAssistMCP

general MCP Server

An native MCP server extension for Ghidra

VerifiedFresh
generalgeneral
4 views738 stars66 forksMIT

Why This Matters

Discovered via github-topic:mcp-server and last synced 1d ago.

VerifiedFresh
Source
github-topic:mcp-server
Stars
738
Last synced
1d ago
Install
Check source

Install

Install instructions not detected yet

Check the source repository for the latest setup steps.

View source instructions
75
Tools
0
Resources
0
Prompts
Standard I/O
Transport

Available Tools (75)

get_function_statistics

Comprehensive statistics for all functions

get_namespaces

List namespaces in the program

raw

boolean

get_strings

List string references with optional filtering

get_info

Get detailed data type information and structure definitions

merge

Merge (overlay) fields from a C definition onto an existing structure without deleting existing fields

Action

Description

reverse_engineer_struct

Recover structure definitions from usage patterns

get_current_address

Get current cursor address

address

Find all references to/from a specific address

function

Find all cross-references for a function

search_bytes

Search for byte patterns in memory

trace_data_flow

Data flow analysis prompt

identify_vulnerability

Security vulnerability identification

data

variable` - `comments`: `action: get

get_current_function

Get function at current cursor position

format

`decompiler`, `disassembly`, `pcode`

rename

Rename a local variable or a global/data symbol using `scope`

list_tasks

List all pending/running/completed tasks

disassembly

pcode` - `classes`: `action: list

patch_bytes

Patch raw bytes in program memory at a given address

get_basic_blocks

Get basic block information for a function

get_entry_points

List all binary entry points

export_program

Export the current program to disk (`binary` or `original_file`) *(disabled by default)*

set_prototype

Set function signature/prototype

get_binary_info

Get basic program information (name, architecture, compiler, etc.)

get_segments

List memory segments

get_functions

List functions with optional pattern filtering and pagination

get_exports

List exported functions/symbols

target_type

`function`, `data`, `variable`

name_gap

auto_create

remove

Remove a bookmark

Tool

Description

cancel_task

Cancel a running async task

search_strings

Search strings by pattern

create_data_var

Define data variables at addresses

Parameter

Values

set_field

Set/insert a single field at a specific offset without needing a full C struct (use `field_name` to name it)

get

create

Prompt

Description

get_function_stack_layout

Get stack frame layout with variable offsets

get_imports

List imported functions/symbols

include_calls

Include callers/callees (replaces separate call graph tool)

rename_field

Rename a field within a structure

document_function

Generate function documentation

auto_create

Automatically create structure from variable usage patterns

list

remove` - `variables`: `action: list

field_xrefs

Find cross-references to a specific struct field

get_task_status

Check status and retrieve results of async tasks

trace_network_data

Trace network send/recv call stacks for protocol analysis and network vulnerability identification

assemble_code

Assemble instruction text at an address and optionally patch it into program memory

search_functions_by_name

Find functions by name pattern

create_function

Create/define a function at an address, optionally clearing existing data/code first

disassemble_at

Disassemble code at an address, optionally clearing existing data/code in the range first

create

Create a new structure from C definition or empty

delete

Delete a data type by name (optionally scoped by `category`)

create_enum

create_typedef

open_program

List/open project programs in CodeBrowser, with optional analysis prompt suppression and analysis-after-open task submission

close_program

Close an open CodeBrowser program; changed programs require `save=true` or `ignore_changes=true`

import_file

Import a host file into the current Ghidra project and optionally open it *(disabled by default)*

project_files

List or delete files/folders in the active Ghidra project; deletion requires `confirm=true`

scripts

List/read/create/delete/run Ghidra scripts *(disabled by default)*

analysis_options

List/set/reset Auto Analysis options and save/apply/list/delete option presets for the current program

analyze_program

Run Auto Analysis on the current program or all open programs; supports full re-analysis, pending-changes analysis, address ranges, and option overrides

apply_preset

list_presets

list_binaries

List all open programs across all CodeBrowser windows, including Project Path values for unambiguous `program_name` targeting

analysis_control

Query Auto Analysis status or request cancellation of queued analysis tasks

set

reset

analyze_function

Comprehensive function analysis prompt

compare_functions

Diff two functions for similarity analysis

modify

merge

set_type

set_prototype` with `scope: auto

get_relocations

List relocation entries

get_data_vars

List data definitions in the program

get_data_at

Get hexdump/data at a specific address