-
Notifications
You must be signed in to change notification settings - Fork 2.5k
feat: add IDA Pro MCP marketplace submission #7983
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,63 @@ | ||
| # Marketplace Submissions | ||
|
|
||
| This directory contains marketplace item submissions for the Roo Code extension marketplace. | ||
|
|
||
| ## About This Submission | ||
|
|
||
| This submission adds the **IDA Pro MCP** to the marketplace, as requested in issue #7982. | ||
|
|
||
| ### IDA Pro MCP | ||
|
|
||
| The IDA Pro MCP (Model Context Protocol) server enables advanced reverse engineering capabilities through LLM integration with IDA Pro. It provides a comprehensive set of tools for binary analysis, including: | ||
|
|
||
| - **Decompilation and Disassembly**: Get decompiled pseudocode and assembly code for functions | ||
| - **Function Analysis**: List, search, and analyze functions by name or address | ||
| - **Cross-References**: Track references to addresses and struct fields | ||
| - **Variable Management**: Rename and retype local and global variables | ||
| - **Code Annotation**: Add comments to disassembly and pseudocode | ||
| - **Debugging Support**: Control debugger, set breakpoints, and inspect registers (with --unsafe flag) | ||
| - **Type Management**: Declare C types and manage local types | ||
|
|
||
| ### Submission Details | ||
|
|
||
| - **Repository**: https://github.com/mrexodia/ida-pro-mcp | ||
| - **Author**: mrexodia | ||
| - **License**: Check repository for license details | ||
|
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Could we specify the actual license instead of asking users to check the repository? Looking at the upstream repo, it appears to be MIT licensed. |
||
| - **Requirements**: | ||
| - Python 3.11 or higher | ||
| - IDA Pro 8.3 or higher (IDA Free is not supported) | ||
| - Installation via pip: `pip install https://github.com/mrexodia/ida-pro-mcp/archive/refs/heads/main.zip` | ||
|
|
||
| ### Installation Process | ||
|
|
||
| Users need to: | ||
|
|
||
| 1. Install the Python package: `pip install https://github.com/mrexodia/ida-pro-mcp/archive/refs/heads/main.zip` | ||
| 2. Run the configuration: `ida-pro-mcp --install` | ||
|
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The installation process mentions |
||
| 3. Restart IDA Pro and their MCP client | ||
|
|
||
| ### Integration with Roo Code | ||
|
|
||
| The MCP server runs as a command-line tool `ida-pro-mcp` and can be configured with the `--unsafe` flag for debugging features. The server communicates with IDA Pro through a plugin that must be installed and running. | ||
|
|
||
| ## Submission Format | ||
|
|
||
| The `ida-pro-mcp.yaml` file follows the marketplace format used by the Roo Code API at `https://app.roocode.com/api/marketplace/mcps`. The entry includes: | ||
|
|
||
| - Unique identifier | ||
| - Name and description | ||
| - Author information | ||
| - Repository URL | ||
| - Relevant tags for discoverability | ||
| - Prerequisites | ||
| - Command configuration for running the server | ||
|
|
||
| ## Note to Maintainers | ||
|
|
||
| This submission is created in response to issue #7982. Since the marketplace data is managed server-side, this submission provides all the necessary information for adding the IDA Pro MCP to the marketplace API. | ||
|
|
||
| The YAML format matches the existing marketplace structure observed in the API responses. Please review and add this entry to the server-side marketplace data when appropriate. | ||
|
|
||
| ## Related Issues | ||
|
|
||
| - Issue #7982: Add Mcp https://github.com/mrexodia/ida-pro-mcp/ | ||
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,29 @@ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| # IDA Pro MCP Marketplace Submission | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| # This file contains the marketplace entry for the IDA Pro MCP server | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| # Format matches the structure used in https://app.roocode.com/api/marketplace/mcps | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - id: 'ida-pro' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Consider using a more specific identifier and name (e.g. 'ida-pro-mcp' and 'IDA Pro MCP') to match repository and README. This improves consistency and discoverability.
Suggested change
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is this the correct YAML structure? Looking at the codebase tests, it seems the API expects an
Suggested change
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| name: 'IDA Pro' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| description: 'MCP Server for IDA Pro that enables advanced reverse engineering capabilities through LLM integration. Provides decompilation, disassembly, function analysis, cross-references, debugging, and code annotation features for binary analysis.' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| author: 'mrexodia' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| url: 'https://github.com/mrexodia/ida-pro-mcp' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| tags: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - 'reverse-engineering' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - 'ida-pro' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - 'disassembly' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - 'decompilation' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - 'binary-analysis' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - 'debugging' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - 'security' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - 'malware-analysis' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| prerequisites: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - 'Python 3.11 or higher' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - 'IDA Pro 8.3 or higher (IDA Free not supported)' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - 'ida-pro-mcp Python package installed' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| content: | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| "command": "ida-pro-mcp", | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| "args": ["--unsafe"], | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| "env": {} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| parameters: [] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Would it be helpful to add configurable parameters here? For example, users might need to specify their IDA Pro installation path or other configuration options. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this directory the right place for marketplace submissions? The actual marketplace data appears to be managed server-side at the API endpoint. Perhaps we should clarify that these files are documentation/proposals rather than actual marketplace entries that will be automatically processed?