MCP resources are read-only, addressable data sources that an MCP client can browse, subscribe to, and display — separate from tools, which perform actions. IDA Pro MCP exposes IDA database state throughDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/mrexodia/ida-pro-mcp/llms.txt
Use this file to discover all available pages before exploring further.
ida:// URIs so clients can inspect the current IDB without calling a tool and incurring analysis side effects.
Use resources when you need a snapshot of stable, structural data (segment layout, type definitions, import table). Use tools when you need to search, compute, or modify state.
Core IDB state
These resources describe the binary loaded into the current IDB.ida://idb/metadata
IDB file information: path, root filename, image base, image size, and input file hashes.
Absolute path to the
.idb or .i64 database file.Root filename of the analyzed binary.
Image base address as a hex string.
Image size as a hex string.
MD5 hash of the input file, or
"unavailable" if the file cannot be read.SHA-256 hash of the input file.
CRC-32 of the input file as a hex string.
Size of the input file as a hex string.
ida://idb/segments
All memory segments with their address range, size, and permission flags.
Segment name (e.g.,
.text, .data, LOAD).Start address as a hex string.
End address (exclusive) as a hex string.
Segment size as a hex string.
Permission flags as a string of
r, w, x characters, or "---" if none.ida://idb/entrypoints
All entry points known to IDA: the primary entry, named exports, TLS callbacks, and exception handlers.
Entry point address as a hex string.
Entry point name (e.g.,
"main", "start", "TlsCallback_0").IDA entry ordinal number.
UI state
These resources reflect the current state of the IDA user interface. They are useful when you want to know where the analyst’s cursor is positioned without polling through a tool call.ida://cursor
The current cursor position in the IDA view, plus the enclosing function if one exists.
Current cursor address as a hex string.
Present when the cursor is inside a known function.
ida://selection
The currently selected address range, if any.
Selection start address as a hex string.
Selection end address as a hex string, or
null if a single address is selected.null when nothing is selected.Type information
These resources enumerate the type library: all local types, structures and unions, and individual structure layouts.ida://types
All types in the local type library, including structs, unions, enums, typedefs, and function types.
Type ordinal in the local type library.
Type name.
Human-readable type string as produced by IDA’s type printer.
ida://structs
All structures and unions in the type library with their sizes.
Structure or union name.
Total size as a hex string.
true for unions, false for structures.ida://struct/{name}
Full definition of a single structure or union, including all member fields.
Structure or union name, e.g.
_IMAGE_DOS_HEADER.Structure name.
Total size as a hex string.
{ "error": "..." }.
Lookups
Point-lookup resources for individual imports, exports, and cross-reference targets.ida://import/{name}
Resolve an import by name or ord_N ordinal alias.
Import name (e.g.,
CreateFileW) or ordinal alias (e.g., ord_123).Import stub address as a hex string.
Resolved import name.
Source module name (e.g.,
KERNEL32.DLL).Import ordinal.
{ "error": "Import not found: {name}" } if the import does not exist.
ida://export/{name}
Resolve an export by name.
Export name (e.g.,
DllMain).Export address as a hex string.
Export name.
Export ordinal.
{ "error": "Export not found: {name}" } if the export does not exist.
ida://xrefs/from/{addr}
All outgoing cross-references from a given address — calls, jumps, and data references.
Source address as a hex or decimal string (e.g.,
0x401000).Target address as a hex string.
"code" for instruction-level references, "data" for data references.Resources vs. tools
| What you need | Use |
|---|---|
| Snapshot of stable structural data | Resource (ida://...) |
| Search, filter, or paginate results | Tool (list_funcs, find_bytes, etc.) |
| Cross-references to an address | xrefs_to tool |
| Cross-references from an address | ida://xrefs/from/{addr} resource |
| Structure layout | ida://struct/{name} resource |
| Declare or modify a type | declare_type tool |