{"id":26771119,"url":"https://github.com/LaurieWired/GhidraMCP","last_synced_at":"2025-03-29T00:03:00.540Z","repository":{"id":284310011,"uuid":"953335676","full_name":"LaurieWired/GhidraMCP","owner":"LaurieWired","description":"MCP Server for Ghidra","archived":false,"fork":false,"pushed_at":"2025-03-25T08:31:27.000Z","size":133,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-25T08:38:42.124Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LaurieWired.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-23T05:36:55.000Z","updated_at":"2025-03-25T08:31:31.000Z","dependencies_parsed_at":"2025-03-25T08:38:47.788Z","dependency_job_id":"2fafdcb2-2aa7-4673-ba76-1a8e1f5cfeee","html_url":"https://github.com/LaurieWired/GhidraMCP","commit_stats":null,"previous_names":["lauriewired/ghidramcp"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LaurieWired%2FGhidraMCP","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LaurieWired%2FGhidraMCP/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LaurieWired%2FGhidraMCP/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LaurieWired%2FGhidraMCP/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LaurieWired","download_url":"https://codeload.github.com/LaurieWired/GhidraMCP/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246117705,"owners_count":20726068,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-29T00:01:11.308Z","updated_at":"2025-03-29T00:03:00.517Z","avatar_url":"https://github.com/LaurieWired.png","language":"Java","funding_links":[],"categories":["Security","Cloud Infrastructure","Java","AI","🧰 MCP Tools","Development","📚 Projects (1974 total)","🔌 API","پیاده‌سازی‌های سرور","Mcp Servers","others","\u003ca name=\"tools\"\u003e\u003c/a\u003eTools","🔬 Vulnerability Research \u0026 Analysis","MCP Ecosystem","MCP Servers","Dev Tools (29)","MCP Servers \u0026 Integrations","Server Implementations","🔬 二进制 / 原生逆向"],"sub_categories":["Reverse Engineering","🔒 Security","🧬 Reverse Engineering","MCP Servers/Tools","MCP Servers","🔒 \u003ca name=\"security\"\u003e\u003c/a\u003eامنیت","integration","Servers","Security \u0026 Reverse Engineering","Security and Reverse Engineering","Other IDEs","🔒 \u003ca name=\"security\"\u003e\u003c/a\u003eSecurity"],"readme":"[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)\n[![GitHub release (latest by date)](https://img.shields.io/github/v/release/LaurieWired/GhidraMCP)](https://github.com/LaurieWired/GhidraMCP/releases)\n[![GitHub stars](https://img.shields.io/github/stars/LaurieWired/GhidraMCP)](https://github.com/LaurieWired/GhidraMCP/stargazers)\n[![GitHub forks](https://img.shields.io/github/forks/LaurieWired/GhidraMCP)](https://github.com/LaurieWired/GhidraMCP/network/members)\n[![GitHub contributors](https://img.shields.io/github/contributors/LaurieWired/GhidraMCP)](https://github.com/LaurieWired/GhidraMCP/graphs/contributors)\n[![Follow @lauriewired](https://img.shields.io/twitter/follow/lauriewired?style=social)](https://twitter.com/lauriewired)\n\n![ghidra_MCP_logo](https://github.com/user-attachments/assets/4986d702-be3f-4697-acce-aea55cd79ad3)\n\n\n# ghidraMCP\nghidraMCP is an Model Context Protocol server for allowing LLMs to autonomously reverse engineer applications. It exposes numerous tools from core Ghidra functionality to MCP clients.\n\nhttps://github.com/user-attachments/assets/36080514-f227-44bd-af84-78e29ee1d7f9\n\n\n# Features\nMCP Server + Ghidra Plugin\n\n- Decompile and analyze binaries in Ghidra\n- Automatically rename methods and data\n- List methods, classes, imports, and exports\n\n# Installation\n\n## Prerequisites\n- Install [Ghidra](https://ghidra-sre.org)\n- Python3\n- MCP [SDK](https://github.com/modelcontextprotocol/python-sdk)\n\n## Ghidra\nFirst, download the latest [release](https://github.com/LaurieWired/GhidraMCP/releases) from this repository. This contains the Ghidra plugin and Python MCP client. Then, you can directly import the plugin into Ghidra.\n\n1. Run Ghidra\n2. Select `File` -\u003e `Install Extensions`\n3. Click the `+` button\n4. Select the `GhidraMCP-1-0.zip` (or your chosen version) from the downloaded release\n5. Restart Ghidra\n6. Make sure the GhidraMCPPlugin is enabled in `File` -\u003e `Configure` -\u003e `Developer`\n\nVideo Installation Guide:\n\n\nhttps://github.com/user-attachments/assets/75f0c176-6da1-48dc-ad96-c182eb4648c3\n\n\n\n## MCP Clients\n\nTheoretically, any MCP client should work with ghidraMCP.  Two examples are given below.\n\n## Example 1: Claude Desktop\nTo set up Claude Desktop as a Ghidra MCP client, go to `Claude` -\u003e `Settings` -\u003e `Developer` -\u003e `Edit Config` -\u003e `claude_desktop_config.json` and add the following:\n\n```json\n{\n  \"mcpServers\": {\n    \"ghidra\": {\n      \"command\": \"python\",\n      \"args\": [\n        \"/ABSOLUTE_PATH_TO/bridge_mcp_ghidra.py\"\n      ]\n    }\n  }\n}\n```\n\nAlternatively, edit this file directly:\n```\n/Users/YOUR_USER/Library/Application Support/Claude/claude_desktop_config.json\n```\n\n## Example 2: 5ire\nAnother MCP client that supports multiple models on the backend is [5ire](https://github.com/nanbingxyz/5ire). To set up GhidraMCP, open 5ire and go to `Tools` -\u003e `New` and set the following configurations:\n\n1. Tool Key: ghidra\n2. Name: GhidraMCP\n3. Command: `python /ABSOLUTE_PATH_TO/bridge_mcp_ghidra.py`\n\n# Building from Source\nBuild with Maven by running:\n\n`mvn clean package assembly:single`\n\nThe generated zip file includes the built Ghidra plugin and its resources. These files are required for Ghidra to recognize the new extension.\n\n- lib/GhidraMCP.jar\n- extensions.properties\n- Module.manifest\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLaurieWired%2FGhidraMCP","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FLaurieWired%2FGhidraMCP","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLaurieWired%2FGhidraMCP/lists"}