PCM

by rand-tech
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Enables reverse engineering capabilities with IRIS Reverse Engineering technology, referenced as a related project (MxIris-Reverse-Engineering).

PCM

PCM (MCP pero invertido), MCP para ingeniería inversa .

Características

  • Análisis
    • IDA
      • repl (IDAPython)
      • desmontaje
      • descompilación
      • tipos de conjuntos
      • ...
  • Memoria
    • Informes de participación
- `get_function_by_name(name)`: Get a function by its name. - `get_function_by_address(address)`: Get a function by its address. - `get_current_address()`: Get the address currently selected by the user. - `get_current_function()`: Get the function currently selected by the user. - `list_functions()`: List all functions in the database. - `decompile_function(address)`: Decompile a function at the given address using Hex-Rays. - `disassemble_function(address)`: Get assembly code (address: instruction; comment) for a function. - `get_entrypoints()`: Get all entrypoints in the binary. - `get_function_blocks(address)`: Get all basic blocks in a function. - `get_function_cfg(address)`: Get control flow graph for a function. - `get_xrefs_to(address)`: Get all cross references to the given address. - `get_xrefs_from(address)`: Get all cross references from the given address. - `set_decompiler_comment(address, comment)`: Set a comment for a given address in the function pseudocode. - `set_disassembly_comment(address, comment)`: Set a comment for a given address in the function disassembly. - `rename_local_variable(function_address, old_name, new_name)`: Rename a local variable in a function. - `rename_function(function_address, new_name)`: Rename a function. - `set_function_prototype(function_address, prototype)`: Set a function's prototype. - `set_local_variable_type(function_address, variable_name, new_type)`: Set a local variable's type. - `create_structure_type(name, members, is_union)`: Create a new structure type. - `get_metadata()`: Get metadata about the current IDB. - `repl_idapython(content)`: Run IDAPython code and return the results with stdout/stderr captured. - `add_note(title, content, address, tags)`: Add a new analysis note for the current binary. - `update_note(note_id, title, content, tags)`: Update an existing note. - `get_notes(file_md5, address, tag)`: Get analysis notes for a binary. - `delete_note(note_id)`: Delete an analysis note.

Instalaciones

Prerrequisitos:

  1. Clonar el repositorio
    git clone https://github.com/rand-tech/pcm
  2. Agregue pcm a su ejemplo de configuración de mcp
    { "mcpServers": { "pcm": { "command": "uv", "args": [ "--directory", "path_to/pcm", "run", "server.py" ] } } }
  3. Utilice el MCP

Proyectos relacionados :

Atribución : Este proyecto se basa en IDA Pro MCP de Duncan Ogilvie (@mrexodia). Gracias.

Licencia : Este proyecto está licenciado bajo la Licencia MIT (consulte el archivo de LICENCIA para más detalles). El código original también está licenciado bajo la Licencia MIT.

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Servidor MCP para ingeniería inversa que permite la interacción con IDA Pro para tareas de análisis como descompilación, desensamblaje e informes de ocupación de memoria.

  1. Features
    1. Installations
      ID: ma2f8iji6w