Skip to main content
Glama

PCM

PCM (MCP の逆)、リバース エンジニアリング用の MCP

特徴

  • 分析

    • IDA

      • repl (IDAPython)

      • 分解

      • 逆コンパイル

      • セットタイプ

      • ...

  • メモリ

    • エンゲージメントレポートレポート

- `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.

Related MCP server: IDA Pro MCP

設備

前提条件:

  1. リポジトリをクローンする

    git clone https://github.com/rand-tech/pcm
  2. MCP 構成例にpcmを追加する

    { "mcpServers": { "pcm": { "command": "uv", "args": [ "--directory", "path_to/pcm", "run", "server.py" ] } } }
  3. MCPを使用する

関連プロジェクト

帰属:このプロジェクトは、Duncan Ogilvie氏(@mrexodia)によるIDA Pro MCPに基づいています。ありがとうございます。

ライセンス:このプロジェクトはMITライセンスの下で提供されています。詳細はLICENSEファイルをご覧ください。元のコードもMITライセンスの下で提供されています。

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rand-tech/pcm'

If you have feedback or need assistance with the MCP directory API, please join our Discord server