Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/bethington/ghidra-mcp
स्थैतिक विश्लेषणगतिशील विश्लेषण (सैंडबॉक्सिंग)रिवर्स इंजीनियरिंगस्क्रिप्टिंग और स्वचालनडीबगर्सफज़िंगउपयोगिताएँ और फ्रेमवर्कबाइनरी विश्लेषणलर्निंग और शिक्षाAI-सहायित रिवर्सिंग
GitHubbethington/ghidra-mcp

ghidra-mcp

3.3k9758 दिन पहलेKitploit द्वारा समीक्षित

एमसीपी सर्वर जो घिड्रा के रिवर्स इंजीनियरिंग को एआई उपकरणों से जोड़ता है: डिकंपाइलेशन, पी-कोड एमुलेशन, लाइव डिबगिंग, डेटा प्रवाह विश्लेषण, बैच संचालन और कन्वेंशन प्रवर्तन के लिए 256 उपकरण, हेडलेस और जीयूआई मोड में।

रिपॉजिटरी देखें

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

Ghidra MCP Server

Tests Release License GitHub Sponsors

Python Java Ghidra

MCP

Stars Last commit Discussions Issues OpenSSF Scorecard

यदि आपको यह उपयोगी लगे, तो कृपया ⭐ स्टार करें — इससे दूसरों को इसे खोजने में मदद मिलती है!

यदि घिड्रा एमसीपी आपका समय बचाता है, तो परियोजना को प्रायोजित करने पर विचार करें। एकमुश्त और आवर्ती दोनों प्रकार का समर्थन संगतता अपडेट, उत्पादन सुदृढ़ीकरण, दस्तावेज़ीकरण और नई टूलिंग के लिए धन जुटाने में मदद करता है।

एक प्रोडक्शन-रेडी मॉडल कॉन्टेक्स्ट प्रोटोकॉल (MCP) सर्वर जो घिड्रा की शक्तिशाली रिवर्स इंजीनियरिंग क्षमताओं को आधुनिक AI टूल्स और ऑटोमेशन फ्रेमवर्क से जोड़ता है। 271 MCP टूल्स, युद्ध-परीक्षित AI वर्कफ़्लो, और उपलब्ध सबसे व्यापक घिड्रा-एमसीपी एकीकरण — अब P-कोड एमुलेशन, लाइव डिबगर एकीकरण, और PCode-ग्राफ डेटा प्रवाह विश्लेषण सहित।

क्यों घिड्रा एमसीपी?

अधिकांश घिड्रा एमसीपी कार्यान्वयन आपको कुछ रीड-ओनली टूल्स देते हैं और बस इतना ही। यह परियोजना अलग है — इसे एक रिवर्स इंजीनियर ने बनाया है जो इसे डेमो के रूप में नहीं, बल्कि वास्तविक बाइनरी पर दैनिक रूप से उपयोग करता है।

  • 271 MCP टूल्स — किसी भी प्रतिस्पर्धी कार्यान्वयन से 3 गुना अधिक। सिर्फ पढ़ने के संचालन नहीं — नाम बदलने, टाइप करने, टिप्पणी करने, संरचना निर्माण, स्क्रिप्ट निष्पादन, पी-कोड एमुलेशन और लाइव डिबगिंग के लिए पूर्ण लेखन पहुंच।
  • युद्ध-परीक्षित AI वर्कफ़्लो — सैकड़ों फ़ंक्शनों में परिष्कृत प्रलेखित वर्कफ़्लो (V5)। चरण-दर-चरण संकेत, हंगेरियन नोटेशन संदर्भ, बैच प्रोसेसिंग गाइड और अनाथ कोड खोज शामिल हैं।
  • प्रोडक्शन-ग्रेड विश्वसनीयता — परमाणु लेनदेन, बैच संचालन (93% API कॉल में कमी), कॉन्फ़िगरेबल टाइमआउट और सुरुचिपूर्ण त्रुटि हैंडलिंग। कोई मूक विफलता नहीं।
  • क्रॉस-बाइनरी दस्तावेज़ीकरण स्थानांतरण — SHA-256 फ़ंक्शन हैश मिलान स्वचालित रूप से बाइनरी संस्करणों में दस्तावेज़ीकरण प्रसारित करता है। एक बार दस्तावेज़ीकृत करें, हर जगह लागू करें।
  • पूर्ण घिड्रा सर्वर एकीकरण — साझा घिड्रा सर्वर से कनेक्ट करें, रिपॉजिटरी प्रबंधित करें, संस्करण नियंत्रण, चेकआउट/चेकइन वर्कफ़्लो और बहु-उपयोगकर्ता सहयोग।
  • हेडलेस और GUI मोड — घिड्रा GUI के साथ या बिना चलाएं। CI/CD पाइपलाइनों और बड़े पैमाने पर स्वचालित विश्लेषण के लिए डॉकर-रेडी।
  • डिज़ाइन द्वारा परिप्रेक्ष्यपूर्ण — v5.0 नामकरण परंपराओं, प्रकार सुरक्षा और दस्तावेज़ीकरण मानकों को टूल लेयर में स्थानांतरित करता है। AI एजेंट और मानव इंजीनियर हर प्रॉम्प्ट में स्टाइल गाइड के बिना सुसंगत आउटपुट उत्पन्न करते हैं।

परंपरा प्रवर्तन

आप वहां रहे हैं: एक परियोजना में छह महीने बाद आपको एक ही कोडबेस में ProcessItem, process_items, handleItem, और ItemProc मिलते हैं — चार फ़ंक्शन एक ही काम कर रहे हैं, चार अलग-अलग सत्रों या इंजीनियरों द्वारा बिना किसी साझा अनुबंध के नामित। इसे ठीक करने में आवश्यकता से अधिक समय लगता है, और समस्या फिर से होगी।

v5.0 परंपराओं को "याद रखने वाली चीजों" से टूल लेयर में स्थानांतरित करता है, जहां उन्हें वास्तव में लागू किया जा सकता है।

स्तरव्यवहारउदाहरण
स्वचालित-सुधारचुपचाप लागू किया गयाuint32 पर count फ़ील्ड → सेव पर स्वचालित रूप से उपसर्ग dwCount
चेतावनीपरिवर्तन होता है, चेतावनी वापस की जाती हैprocessData → "नाम क्रिया के साथ PascalCase होना चाहिए: ProcessData"
अस्वीकारपरिवर्तन स्पष्टीकरण के साथ अवरुद्धundefined → undefined प्रकार परिवर्तन → "कोई-ऑप अस्वीकृत, प्रकार अपरिवर्तित"

AI एजेंटों के लिए, इसका अर्थ है हर सत्र, हर मॉडल, हर रन में सुसंगत आउटपुट — बिना हर प्रॉम्प्ट में स्टाइल गाइड चिपकाए। टूल नियमों को जानता है; मॉडल को बस कॉल करना है।

टीमों के लिए, यह समीक्षा टिप्पणी के उस पूरे वर्ग को समाप्त करता है जो कहता है "यह हमारी नामकरण परंपरा नहीं है।" परंपरा मध्यस्थता कोड समीक्षा में नहीं, बल्कि टूल में रहती है।

बड़े पैमाने पर एकल कार्य के लिए, analyze_function_completeness आपको 0–100% का स्कोर देता है जो ईमानदारी से मापता है: संरचनात्मक कटौती (अनफिक्सेबल कंपाइलर आर्टिफैक्ट) आपके प्रभावी स्कोर में माफ कर दी जाती है, लॉग-स्केलिंग एक खराब श्रेणी को बाकी सब कुछ दफनाने से रोकती है, और स्तरीय प्लेट टिप्पणी गुणवत्ता का मतलब है कि आप जानते हैं कि वास्तव में क्या गायब है और क्यों।

🌟 विशेषताएँ

कोर MCP एकीकरण

  • पूर्ण MCP संगतता — मॉडल कॉन्टेक्स्ट प्रोटोकॉल का पूर्ण कार्यान्वयन
  • 271 MCP टूल्स — बाइनरी विश्लेषण के हर पहलू को कवर करने वाली व्यापक API सतह
  • प्रोडक्शन-रेडी विश्वसनीयता — परमाणु लेनदेन, बैच संचालन, कॉन्फ़िगरेबल टाइमआउट
  • रीयल-टाइम विश्लेषण — घिड्रा के विश्लेषण इंजन के साथ लाइव एकीकरण

संगतता नोट: MCP टूल नाम GitHub Copilot CLI और CAPI सत्यापन के लिए सामान्यीकृत किए जाते हैं। एक्सपोज़्ड टूल नाम केवल लोअरकेस अक्षरों, अंकों, अंडरस्कोर और हाइफ़न का उपयोग करते हैं; स्थिर ब्रिज टूल्स के साथ टकराव से बचने के लिए /debugger/status जैसे नेस्टेड HTTP पथ को आवश्यकता पड़ने पर debugger_status_2 जैसे नामों से विज्ञापित किया जाता है।

बाइनरी विश्लेषण क्षमताएँ

  • फ़ंक्शन विश्लेषण — डीकंपाइलेशन, कॉल ग्राफ, क्रॉस-रेफरेंस, पूर्णता स्कोरिंग
  • डेटा प्रवाह विश्लेषण — किसी भी वेरिएबल या रजिस्टर से PCode-ग्राफ मान प्रसार (आगे/पीछे)
  • डेटा संरचना खोज — फ़ील्ड विश्लेषण और नामकरण सुझावों के साथ संरचना/यूनियन/एनम निर्माण
  • स्ट्रिंग निष्कर्षण — रेगेक्स खोज, गुणवत्ता फ़िल्टरिंग और स्ट्रिंग-एंकर्ड फ़ंक्शन खोज
  • आयात/निर्यात विश्लेषण — सिंबल टेबल, बाह्य स्थान, क्रमांकित आयात समाधान
  • मेमोरी और डेटा निरीक्षण — रॉ मेमोरी रीड, बाइट पैटर्न खोज, ऐरे सीमा पहचान
  • क्रॉस-बाइनरी दस्तावेज़ीकरण — फ़ंक्शन हैश मिलान और संस्करणों में दस्तावेज़ीकरण प्रसार

गतिशील विश्लेषण (v5.4.0)

  • P-कोड एमुलेशन — घिड्रा के EmulatorHelper के माध्यम से किसी भी फ़ंक्शन को अलग-थलग चलाएं; मिलीसेकंड में ब्रूट-फोर्स API हैश समाधान
  • लाइव डिबगर एकीकरण — घिड्रा के TraceRmi फ्रेमवर्क पर 17 Java एंडपॉइंट + 22 Python ब्रिज टूल्स (Windows PE पर dbgeng, अन्यथा gdb/lldb): अटैच, स्टेप, ब्रेकपॉइंट, रजिस्टर, मेमोरी रीड, नॉन-ब्रेकिंग फ़ंक्शन ट्रेसिंग, ASLR-जागरूक स्थैतिक↔गतिशील एड्रेस अनुवाद

AI-संचालित रिवर्स इंजीनियरिंग वर्कफ़्लो

  • फ़ंक्शन दस्तावेज़ीकरण वर्कफ़्लो V5 — हंगेरियन नोटेशन, प्रकार ऑडिटिंग और स्वचालित सत्यापन स्कोरिंग के साथ पूर्ण फ़ंक्शन दस्तावेज़ीकरण के लिए 7-चरणीय प्रक्रिया
  • बैच दस्तावेज़ीकरण — एक साथ कई फ़ंक्शनों का दस्तावेज़ीकरण करने के लिए समांतर उप-एजेंट प्रेषण
  • अनाथ कोड खोज — स्वचालित स्कैनर ज्ञात कोड के बीच अंतराल में अज्ञात फ़ंक्शन ढूंढता है
  • डेटा प्रकार जांच — संरचना खोज और फ़ील्ड विश्लेषण के लिए व्यवस्थित वर्कफ़्लो
  • क्रॉस-संस्करण मिलान — विभिन्न बाइनरी संस्करणों में हैश-आधारित फ़ंक्शन मिलान

विकास और ऑटोमेशन

  • घिड्रा स्क्रिप्ट प्रबंधन — पूरी तरह से MCP के माध्यम से घिड्रा स्क्रिप्ट बनाएं, चलाएं, अपडेट करें और हटाएं
  • मल्टी-प्रोग्राम समर्थन — कई खुले प्रोग्रामों के बीच स्विच करें और उनकी तुलना करें
  • बैच संचालन — बल्क रिनेमिंग, कमेंटिंग, टाइपिंग और लेबल प्रबंधन (93% कम API कॉल)
  • हेडलेस सर्वर — घिड्रा GUI के बिना पूर्ण विश्लेषण — डॉकर और CI/CD तैयार
  • परियोजना और संस्करण नियंत्रण — प्रोजेक्ट बनाएं, फ़ाइलें प्रबंधित करें, घिड्रा सर्वर एकीकरण
  • विश्लेषण नियंत्रण — प्रोग्रामेटिक रूप से घिड्रा एनालाइज़र को सूचीबद्ध करें, कॉन्फ़िगर करें और ट्रिगर करें

🚀 त्वरित आरंभ

पूर्वापेक्षाएँ

  • Java 21 LTS (OpenJDK अनुशंसित)
  • Apache Maven 3.9+
  • Ghidra 12.1.2 (या संगत संस्करण)
  • Python 3.10+ uv के साथ (अनुशंसित) या pip + venv

साझा घिड्रा सर्वर उपयोगकर्ता: Ghidra 12.1.2 क्लाइंट को 12.1, 12.0.5, या नए संगत संस्करण पर घिड्रा सर्वर की आवश्यकता होती है। 12.1 क्लाइंट से इस प्लगइन का उपयोग करने से पहले सर्वर को अपग्रेड करें।

Ghidra 12.1.2 Jython को एक वैकल्पिक एक्सटेंशन के रूप में शामिल करता है। Java स्क्रिप्ट डिफ़ॉल्ट रूप से काम करती हैं, लेकिन ghidra_scripts/ में .py स्क्रिप्ट को File > Install Extensions से Jython एक्सटेंशन स्थापित करने और Ghidra को पुनरारंभ करने की आवश्यकता होती है।

स्थापना

सभी प्लेटफ़ॉर्म के लिए अनुशंसित: सीधे python -m tools.setup का उपयोग करें।

ensure-prereqs रनटाइम Python आवश्यकताओं के साथ-साथ स्थानीय Maven रिपॉजिटरी में आवश्यक Ghidra JARs स्थापित करता है। deploy बिल्ड आउटपुट की प्रतिलिपि बनाता है, उपयोगकर्ता-प्रोफ़ाइल एक्सटेंशन स्थापित करता है, और Ghidra उपयोगकर्ता कॉन्फ़िग को पैच करता है।

  1. रिपॉजिटरी को क्लोन करें:
root@kitploit:~
git clone https://github.com/bethington/ghidra-mcp.git
cd ghidra-mcp
```   ```bash
   git clone https://github.com/bethington/ghidra-mcp.git
   cd ghidra-mcp
  1. अनुशंसित: पहले environment preflight चलाएं: ```text python -m tools.setup preflight --ghidra-path "F:\ghidra_12.1.2_PUBLIC"
    root@kitploit:~
  2. बनाएं और Ghidra में तैनात करें: ```text python -m tools.setup ensure-prereqs --ghidra-path "F:\ghidra_12.1.2_PUBLIC" python -m tools.setup build python -m tools.setup deploy --ghidra-path "F:\ghidra_12.1.2_PUBLIC"
    root@kitploit:~

deploy जब आवश्यक हो, पहले से चल रहे मिलान वाले Ghidra इंस्टेंस को सहेजता/बंद करता है, एक्सटेंशन स्थापित करता है, Ghidra प्रारंभ करता है, MCP स्वास्थ्य की प्रतीक्षा करता है, और स्कीमा स्मोक चेक चलाता है।

  1. वैकल्पिक सख्त/मैन्युअल मोड (उन्नत): ```text

    Skip automatic prerequisite setup

    python -m tools.setup build python -m tools.setup deploy --ghidra-path "F:\ghidra_12.1.2_PUBLIC"
    root@kitploit:~
  2. कमांड सहायता दिखाएँ: ```text python -m tools.setup --help
    root@kitploit:~
  3. वैकल्पिक केवल-निर्माण मोड (उन्नत/समस्या निवारण): ```text python -m tools.setup build
    root@kitploit:~

समर्थित बिल्ड पथ: python -m tools.setup build Maven के अंतर्गत काम करता है और रिपोजिटरी कार्यों और दस्तावेज़ों द्वारा उपयोग किया जाने वाला विहित कार्यप्रवाह है। ```bash

Manual Maven build (requires Ghidra deps already installed in local .m2)

mvn clean package assembly:single -DskipTests

root@kitploit:~
## 1.4. समर्थन

यह उपकरण जैसा है वैसा ही प्रदान किया जाता है। समस्याओं, सुविधा अनुरोधों या योगदान के लिए, कृपया GitHub Issues और Pull Requests का उपयोग करें।

## 1.5. लाइसेंस

यह परियोजना MIT License के अंतर्गत लाइसेंस प्राप्त है - विस्तार के लिए [LICENSE](https://github.com/bethington/ghidra-mcp/blob/main/LICENSE) फ़ाइल देखें।

## 1.6. आभार

खुले-स्रोत समुदाय और उन सभी योगदानकर्ताओं को विशेष धन्यवाद जिन्होंने परीक्षण, प्रतिक्रिया और कोड योगदान के माध्यम से इस उपकरण को बेहतर बनाने में मदद की।   ```bash
# Secondary/manual Gradle build path only (not used by tools.setup or VS Code tasks)
GHIDRA_INSTALL_DIR=/path/to/ghidra gradle buildExtension

स्थापना (लिनक्स — उबंटू/डेबियन)

  1. रिपॉजिटरी क्लोन करें: ```bash git clone https://github.com/bethington/ghidra-mcp.git cd ghidra-mcp
    root@kitploit:~
  2. सिस्टम आवश्यकताएँ स्थापित करें (यदि पहले से स्थापित नहीं हैं): ```bash sudo apt update && sudo apt install -y openjdk-21-jdk maven python3 python3-pip python3-venv curl jq unzip
    root@kitploit:~

Debian/Kali/Ubuntu 23.04+ नोट (PEP 668): ये डिस्ट्रोस सिस्टम Python को बाह्य रूप से प्रबंधित चिह्नित करते हैं, इसलिए एक सादा pip install error: externally-managed-environment के साथ विफल होता है। --break-system-packages के साथ इसके आसपास काम न करें — यह apt-प्रबंधित उपकरणों को दूषित कर सकता है। इसके बजाय uv का उपयोग करें (अनुशंसित — यह स्वचालित रूप से एक परियोजना-स्थानीय .venv बनाता और प्रबंधित करता है, और यही इस रेपो के कमांड उपयोग करते हैं):

root@kitploit:~
curl -LsSf https://astral.sh/uv/install.sh | sh
uv run bridge-mcp-ghidra    # resolves deps into .venv and starts the bridge

या एक क्लासिक वर्चुअल एनवायरनमेंट:

root@kitploit:~
python3 -m venv .venv && source .venv/bin/activate
pip install -e .
bridge-mcp-ghidra
  1. पर्यावरण प्रीफ्लाइट चलाएं: ```bash python -m tools.setup preflight --ghidra-path ~/ghidra_12.1.2_PUBLIC
    root@kitploit:~
  2. Ghidra पर बनाएँ और तैनात करें (एकल कमांड): ```bash python -m tools.setup ensure-prereqs --ghidra-path ~/ghidra_12.1.2_PUBLIC python -m tools.setup build python -m tools.setup deploy --ghidra-path ~/ghidra_12.1.2_PUBLIC
    root@kitploit:~

यह निम्नलिखित करेगा:

  • Ghidra JAR निर्भरताओं को आपके स्थानीय ~/.m2/repository में स्थापित करें
  • Maven के साथ GhidraMCP-<version>.zip बनाएं
  • एक्सटेंशन को ~/.config/ghidra/ghidra_<version>_PUBLIC/Extensions/ में निकालें
  • LastExtensionImportDirectory के साथ preferences को अपडेट करें
  • Python आवश्यकताओं को स्थापित करें
  1. वैकल्पिक: केवल Maven निर्भरताएँ सेटअप करें: ```bash python -m tools.setup install-ghidra-deps --ghidra-path ~/ghidra_12.1.2_PUBLIC
    root@kitploit:~
  2. कमांड सहायता दिखाएँ: ```bash python -m tools.setup --help
    root@kitploit:~

लिनक्स पथ: एक्सटेंशन $HOME/.config/ghidra/ghidra_<version>_PUBLIC/Extensions/GhidraMCP/ में स्थापित होता है। घिड्रा कॉन्फ़िग फ़ाइलें $HOME/.config/ghidra/ghidra_<version>_PUBLIC/ में हैं।

स्थापना (macOS — Homebrew)

  1. पूर्वापेक्षाएँ स्थापित करें: ```bash brew install openjdk@21 maven python ghidra
    root@kitploit:~
  2. रिपॉज़िटरी को क्लोन करें: ```bash git clone https://github.com/bethington/ghidra-mcp.git cd ghidra-mcp
    root@kitploit:~
  3. Ghidra JARs को local Maven में स्थापित करें: ```bash python -m tools.setup install-ghidra-deps
    --ghidra-path /opt/homebrew/opt/ghidra/libexec
    root@kitploit:~
  4. निर्माण और तैनाती: ```bash python -m tools.setup ensure-prereqs
    --ghidra-path /opt/homebrew/opt/ghidra/libexec python -m tools.setup build python -m tools.setup deploy
    --ghidra-path /opt/homebrew/opt/ghidra/libexec
    root@kitploit:~

एक्सटेंशन ~/Library/ghidra/ghidra_12.1.2_PUBLIC/Extensions/GhidraMCP/ में स्थापित है।

नोट: Homebrew पथ का उपयोग करते समय --ghidra-version आवश्यक है क्योंकि पथ में कोई संस्करण स्ट्रिंग नहीं है।

  1. Ghidra प्रारंभ करें और प्लगइन सक्षम करें: ```bash /opt/homebrew/opt/ghidra/libexec/ghidraRun
    root@kitploit:~

मुख्य प्रोजेक्ट विंडो में: Tools > GhidraMCP > Start MCP Server

  1. कर्सर/क्लॉड MCP कॉन्फ़िगर करें (~/.cursor/mcp.json): ```json { "mcpServers": { "ghidra": { "command": "uv", "args": ["run", "--directory", "/path/to/ghidra-mcp", "bridge-mcp-ghidra"] } } }
    root@kitploit:~

स्थापना (Arch Linux — AUR)

@Pandoriaantje सामुदायिक AUR पैकेजों का रखरखाव करते हैं:

  • ghidra-mcp-git — main शाखा का अनुसरण करता है
  • ghidra-mcp — टैग किए गए रिलीज़ का अनुसरण करता है

अपने पसंदीदा AUR हेल्पर से इंस्टॉल करें, उदाहरण के लिए:```bash yay -S ghidra-mcp # or ghidra-mcp-git

root@kitploit:~
### मूल उपयोग

#### विकल्प 1: Stdio परिवहन (AI उपकरणों के लिए अनुशंसित)```bash
uv run bridge-mcp-ghidra          # or: python -m bridge_mcp_ghidra

Autohand Code में ब्रिज जोड़ने के लिए एक क्लोन किए गए चेकआउट से:```bash autohand mcp add ghidra uv run --directory /path/to/ghidra-mcp bridge-mcp-ghidra

root@kitploit:~
Add `--scope project` को `ghidra` से पहले जोड़ें ताकि सर्वर को आपके उपयोगकर्ता कॉन्फ़िगरेशन के बजाय वर्तमान प्रोजेक्ट के `.autohand` कॉन्फ़िगरेशन में सहेजा जा सके।

#### विकल्प 2: स्ट्रीमेबल HTTP ट्रांसपोर्ट (वेब/HTTP क्लाइंट के लिए अनुशंसित)```bash
uv run bridge-mcp-ghidra --transport streamable-http --mcp-host 127.0.0.1 --mcp-port 8081

HTTP ट्रांसपोर्ट के लिए MCP क्लाइंट कॉन्फ़िग (अपने क्लाइंट के MCP कॉन्फ़िग फ़ाइल में जोड़ें):```json { "mcpServers": { "ghidra-mcp-http": { "url": "http://127.0.0.1:8081/mcp" } } }

root@kitploit:~
ब्राउज़र-आधारित क्लाइंट (उदा., [MCP Inspector](https://github.com/modelcontextprotocol/inspector)) बिना किसी अतिरिक्त कॉन्फ़िगरेशन के काम करते हैं: HTTP ट्रांसपोर्ट CORS प्रीफ़्लाइट (`OPTIONS`) अनुरोधों का उत्तर देते हैं और `mcp-session-id` / `mcp-protocol-version` हेडर को स्क्रिप्ट्स के लिए उजागर करते हैं। अनुमत मूल Host-हेडर नीति को दर्शाते हैं — किसी भी पोर्ट पर लूपबैक हमेशा अनुमत होता है, साथ ही बाइंड होस्ट और `GHIDRA_MCP_ALLOWED_HOSTS` में सूचीबद्ध कोई भी होस्ट।

#### विकल्प 3: SSE ट्रांसपोर्ट (अब अप्रचलित — इसके बजाय streamable-http का उपयोग करें)```bash
uv run bridge-mcp-ghidra --transport sse --mcp-host 127.0.0.1 --mcp-port 8081

ब्रिज उन्नत फ़्लैग्स

फ़्लैगडिफ़ॉल्टविवरण
--transportstdiostdio (AI उपकरण), streamable-http (वेब क्लाइंट), sse (अप्रचलित)
--mcp-host127.0.0.1HTTP ट्रांसपोर्ट के लिए होस्ट बांधें
--mcp-port—HTTP ट्रांसपोर्ट के लिए पोर्ट
--lazyबंदकेवल डिफ़ॉल्ट टूल समूहों को कनेक्ट करने पर लोड करें। तेज़ स्टार्टअप, लेकिन MCP क्लाइंट जो tools/list_changed का समर्थन नहीं करते, उन्हें अधूरा टूल सूची दिखाई देगी। Claude Code के लिए अनुशंसित नहीं है।
--no-lazy(डिफ़ॉल्ट)कनेक्ट करने पर सभी टूल समूहों को तुरंत लोड करें। अधिकांश AI क्लाइंट के लिए आवश्यक।
--default-groupslisting,function,programअल्पविराम से अलग किए गए समूह जो --lazy सेट होने पर कनेक्ट करने पर लोड होते हैं।

कठोर प्रोग्राम रूटिंग (मल्टी-प्रोग्राम सुरक्षा)

GHIDRA_MCP_REQUIRE_PROGRAM_SELECTORS=1 सेट करें ताकि ब्रिज किसी भी program-scoped कॉल को अस्वीकार करे जो प्रोग्राम चयनकर्ता को छोड़ता है, कॉल को सर्वर के साझा 'चालू प्रोग्राम' (जिसे switch_program और सक्रिय GUI टैब स्थानांतरित करते हैं) पर चलने देने के बजाय स्पष्ट त्रुटि लौटाए।```bash export GHIDRA_MCP_REQUIRE_PROGRAM_SELECTORS=1 uv run bridge-mcp-ghidra

root@kitploit:~
इसके बिना, `program=` को छोड़ने वाला कॉल वर्तमान प्रोग्राम के विरुद्ध चलता है, जो एकल-प्रोग्राम कार्यप्रवाह के लिए ठीक है लेकिन एक बार कई प्रोग्राम खुले होने पर खतरनाक हो जाता है: कॉल बिना किसी त्रुटि के गलत बाइनरी को पढ़ या संपादित कर सकता है। जब एक से अधिक क्लाइंट एक सर्वर साझा करते हैं तो खतरा और भी बदतर होता है, क्योंकि प्रत्येक क्लाइंट उस current-program ग्लोबल को दूसरों के नीचे से हटा देता है।

सख्त मोड चालू होने पर, प्रत्येक प्रोग्राम-स्कोप्ड कॉल को अपने लक्ष्य का नाम बताना होगा। यह उन सभी चयनकर्ताओं को कवर करता है जो एक खुले प्रोग्राम को चुनते हैं: सादा `program=` और क्रॉस-प्रोग्राम टूल्स के `source_program`/`target_program` या `program_a`/`program_b` (आवश्यक घोषित, लेकिन सर्वर अभी भी वर्तमान प्रोग्राम पर वापस आ जाता है जब एक खाली आता है)। भूला हुआ चयनकर्ता गलत बाइनरी में मौन लेखन के बजाय पहली बुरी कॉल पर एक तेज़ त्रुटि के रूप में सामने आता है। बिना प्रोग्राम चयनकर्ता वाले उपकरण (`open_program` और `close_program` `path`/`name` लेते हैं) अप्रभावित रहते हैं। डिफ़ॉल्ट रूप से बंद: चर अनसेट होने पर ब्रिज कॉल अपरिवर्तित भेजता है।

#### टूल-कॉन्टेक्स्ट ओवरहेड को कम करना

ब्रिज एक बड़ी सूची प्रस्तुत करता है। मॉडल के टूल सतह को छोटा रखने के लिए, `--lazy` के साथ चलाएं (कनेक्ट होने पर केवल `listing,function,program` लोड करता है) और मॉडल को सब कुछ पंजीकृत करने के बजाय मांग पर बाकी की **खोज** करने दें:

- `search_tools("rename function")` — **संपूर्ण** सूची में कीवर्ड खोज, जिसमें वे उपकरण शामिल हैं जिनका समूह लोड नहीं है। प्रत्येक परिणाम बताता है कि क्या यह अभी कॉल करने योग्य है और यदि नहीं, तो इसे सक्षम करने के लिए सटीक `load_tool_group(...)` कॉल।
- `list_tool_groups()` — सभी श्रेणियों और उनकी लोड स्थिति को सूचीबद्ध करें।
- `load_tool_group("datatype")` / `unload_tool_group("datatype")` — रनटाइम पर एक श्रेणी लोड या हटाएं।
- `check_tools("rename_or_label,batch_set_comments")` — पुष्टि करें कि विशिष्ट उपकरण अभी कॉल करने योग्य हैं।

`search_tools` उत्सुक और `--lazy` दोनों मोड में काम करता है, इसलिए `tools/list_changed` का सम्मान करने वाले एजेंटों को अग्रिम संदर्भ लागत के बिना पूरी खोज मिलती है।

#### वैकल्पिक: स्टैंडअलोन डिबगर सर्वर प्रारंभ करें```bash
uv sync --group debugger
uv run python -m debugger

डिबगर सर्वर डिफ़ॉल्ट रूप से http://127.0.0.1:8099/ पर सुनता है और MCP ब्रिज द्वारा उजागर किए गए debugger_* प्रॉक्सी टूल्स के लिए आवश्यक है।

डिबगर सर्वर फ़्लैग्स:

फ़्लैगडिफ़ॉल्टविवरण
--port8099HTTP सर्वर पोर्ट
--host127.0.0.1बाइंड पता (0.0.0.0 LAN पर एक्सपोज़ करने के लिए)
--exports-dir—ऑर्डिनल-टू-नेम रिज़ॉल्यूशन के लिए dll_exports/ निर्देशिका का पथ
--log-levelINFODEBUG, INFO, WARNING, या ERROR

यदि आप डिफ़ॉल्ट पोर्ट या होस्ट बदलते हैं तो ब्रिज को खोजने के लिए .env में GHIDRA_DEBUGGER_URL सेट करें।

Ghidra में

  1. Ghidra प्रारंभ करें और CodeBrowser विंडो खोलें
  2. CodeBrowser में, प्लगिन को File > Configure > Configure All Plugins > GhidraMCP के माध्यम से सक्षम करें
  3. वैकल्पिक: CodeBrowser > Edit > Tool Options > GhidraMCP HTTP Server के माध्यम से कस्टम पोर्ट कॉन्फ़िगर करें
  4. सर्वर को Tools > GhidraMCP > Start MCP Server के माध्यम से प्रारंभ करें
  5. सर्वर डिफ़ॉल्ट रूप से http://127.0.0.1:8089/ पर चलता है

सत्यापित करें कि यह काम कर रहा है```bash

Quick health check

curl http://127.0.0.1:8089/check_connection

Expected: "Connected: GhidraMCP plugin running with program ''"

Get version info

curl http://127.0.0.1:8089/get_version

root@kitploit:~
## इस परियोजना को समर्थन दें

यदि Ghidra MCP आपका इंजीनियरिंग या रिवर्स-इंजीनियरिंग का समय बचाता है, तो कृपया [परियोजना को प्रायोजित करने](https://github.com/sponsors/bethington) पर विचार करें।

- एकमुश्त प्रायोजन बग फिक्स, संगतता अपडेट और रिलीज़ कार्य के लिए धन जुटाने में मदद करता है।
- आवर्ती प्रायोजन रखरखाव, दस्तावेज़ीकरण और उत्पादन सख्तीकरण को जारी रखने में मदद करता है।
- कंपनी का समर्थन ब्रिज, हेडलेस सर्वर, डीबगर एकीकरण और वर्कफ़्लो टूलिंग के लिए दीर्घकालिक विश्वसनीयता को प्राथमिकता देने में मदद करता है।

## 🔒 सुरक्षा

GhidraMCP को **केवल localhost विकास** के लिए डिज़ाइन किया गया है। डिफ़ॉल्ट कॉन्फ़िगरेशन — HTTP सर्वर `127.0.0.1` से बंधा हुआ, बिना प्रमाणीकरण — एक विश्वसनीय एकल-उपयोगकर्ता वर्कस्टेशन पर सुरक्षित है और v5.4.1 से पहले के व्यवहार से मेल खाता है।

**यदि आप सर्वर को लूपबैक से आगे उजागर करते हैं, तो पहले इन तीन पर्यावरण चर को कॉन्फ़िगर करें।** बिना टोकन के गैर-लूपबैक बाइंड पर सर्वर शुरू होने से मना कर देता है।

| Env var | प्रभाव |
|---|---|
| `GHIDRA_MCP_AUTH_TOKEN` | जब सेट किया जाता है, तो हर HTTP अनुरोध को `Authorization: Bearer <token>` ले जाना चाहिए। समय-सुरक्षित तुलना। `/mcp/health`, `/health`, `/check_connection` को छूट दी गई है। |
| `GHIDRA_MCP_ALLOW_SCRIPTS` | `/run_script_inline` और `/run_ghidra_script` को सक्षम करने के लिए `1`, `true`, या `yes` पर सेट करें। **v5.4.1 से डिफ़ॉल्ट रूप से बंद** — ये एंडपॉइंट Ghidra प्रक्रिया के विरुद्ध मनमाना Java निष्पादित करते हैं। हेडलेस मोड में यह सर्वर स्टार्टअप पर OSGi `BundleHost` प्रारंभ (Felix framework, ~सैकड़ों ms) को भी ट्रिगर करता है; यदि आपको स्क्रिप्ट निष्पादन की आवश्यकता नहीं है तो इसे बंद छोड़ दें। |
| `GHIDRA_MCP_FILE_ROOT` | जब किसी निर्देशिका पथ पर सेट किया जाता है, तो फ़ाइलसिस्टम-पथ एंडपॉइंट (`/load_program`, `/import_file`, `/open_project`, `/delete_file`, आदि) इनपुट को कैननिकलाइज़ करते हैं और इसे इस रूट के अंतर्गत आने की आवश्यकता होती है। पथ-ट्रैवर्सल को रोकता है। |

नाम-गुणवत्ता प्रवर्तन सुरक्षा से अलग है। डिफ़ॉल्ट रूप से,
`rename_function_by_address` और वैश्विक लेखन एंडपॉइंट उन नामों को अस्वीकार करते हैं जो
अंतर्निहित गुणवत्ता गेट में विफल होते हैं, और स्ट्रक्चर फ़ील्ड लेखन अंतर्निहित
फ़ील्ड उपसर्ग परंपरा को लागू करते हैं। **Edit > Tool
Options > GhidraMCP HTTP Server > Strict Naming Enforcement** के साथ अंतर्निहित परंपरा परत को अक्षम करें। वही Tool Options
चेकबॉक्स `rename_data`, `rename_global_variable`,
`set_global`, `apply_data_type` उपसर्ग/प्रकार गार्ड, और स्ट्रक्चर-फ़ील्ड
हंगेरियन उपसर्ग ऑटो-फिक्स को `create_struct`, `add_struct_field`, और
`modify_struct_field` में शामिल करता है। यह सेटिंग MCP सर्वर शुरू होने या
पुनरारंभ होने पर पढ़ी जाती है। जब प्रवर्तन अक्षम किया जाता है, तब भी फ़ंक्शन/ग्लोबल
परंपरा चेतावनियाँ वापस की जाती हैं।

### उदाहरण: प्रमाणीकरण के साथ एक निजी LAN को उजागर करना```bash
export GHIDRA_MCP_AUTH_TOKEN=$(openssl rand -hex 32)
export GHIDRA_MCP_ALLOW_SCRIPTS=1     # only if your workflow needs it
export GHIDRA_MCP_FILE_ROOT=/srv/ghidra/inputs

java -jar GhidraMCPHeadless.jar --bind 0.0.0.0 --port 8089

Ghidra सर्वर प्रमाणीकरण

जब साझा Ghidra सर्वर से कनेक्ट होते हैं, तो GhidraMCP पासवर्ड संवाद को स्वचालित रूप से दबा सकता है। यह क्रेडेंशियल्स को इस क्रम में हल करता है (पहला गैर-रिक्त मान जीतता है):

संगतता नोट: Ghidra 12.1.2 क्लाइंट को Ghidra सर्वर 12.1.2, 12.0.5, या नए संगत सर्वर की आवश्यकता होती है. पुराने साझा सर्वर 12.1 क्लाइंट अपग्रेड के लिए सुरक्षित लक्ष्य नहीं हैं.

  1. GHIDRA_SERVER_PASSWORD पर्यावरण चर (या Ghidra स्थापना निर्देशिका में .env फ़ाइल या ~)
  2. ~/.ghidra-cred — आपकी होम डायरेक्ट्री में एकल-पंक्ति पासवर्ड फ़ाइल
  3. <ghidra-install-dir>/.ghidra-cred

उपयोगकर्ता नाम इसी प्रकार हल होता है: GHIDRA_SERVER_USER env var → user.name सिस्टम गुण।

यदि कोई पासवर्ड नहीं मिलता है, तो Ghidra अपना सामान्य GUI प्रॉम्प्ट दिखाता है। मौन प्रमाणीकरण सक्षम करने के लिए इन्हें .env में सेट करें (पूर्ण ब्लॉक के लिए .env.template देखें)।

v5.4.0 → v5.4.1 से माइग्रेशन

  • स्क्रिप्ट एंडपॉइंट अब डिफ़ॉल्ट रूप से बंद हैं। यदि आप /run_script_inline या /run_ghidra_script पर निर्भर थे, तो GHIDRA_MCP_ALLOW_SCRIPTS=1 निर्यात करें। यह एक जानबूझकर किया गया ब्रेकिंग चेंज है; पिछला डिफ़ॉल्ट असुरक्षित था।
  • केवल Localhost परिनियोजन को किसी बदलाव की आवश्यकता नहीं है। Auth, बाइंड अस्वीकृति, और पथ-रूट जाँच सभी ऑप्ट-इन हैं।

❓ समस्या निवारण

"GhidraMCP" मेनू Tools में दिखाई नहीं दे रहा है

कारण: प्लगइन सक्षम नहीं है या गलत तरीके से स्थापित किया गया है।

समाधान:

  1. सत्यापित करें कि एक्सटेंशन स्थापित है: File > Install Extensions — GhidraMCP सूचीबद्ध होना चाहिए
  2. प्लगइन सक्षम करें: File > Configure > Configure All Plugins > GhidraMCP (बॉक्स चेक करें)
  3. स्थापना/सक्षम करने के बाद Ghidra को पुनरारंभ करें

सर्वर प्रतिक्रिया नहीं दे रहा / कनेक्शन अस्वीकृत

कारण: सर्वर प्रारंभ नहीं हुआ या गलत पोर्ट।

समाधान:

  1. सुनिश्चित करें कि आपने सर्वर प्रारंभ किया: Tools > GhidraMCP > Start MCP Server
  2. कॉन्फ़िगर किया गया पोर्ट जांचें: Edit > Tool Options > GhidraMCP HTTP Server
  3. जांचें कि पोर्ट उपयोग में है या नहीं: ```bash

    Linux/macOS

    lsof -i :8089

    Windows

    netstat -ano | findstr :8089
    root@kitploit:~
  4. Ghidra कंसोल में त्रुटियों की जाँच करें: Window > Console

pip install error: externally-managed-environment के साथ विफल होता है

कारण: PEP 668. डेबियन-परिवार के वितरण (Debian 12+, Kali, Ubuntu 23.04+) सिस्टम Python को बाह्य रूप से प्रबंधित के रूप में चिह्नित करते हैं, इसलिए वैश्विक pip install apt-प्रबंधित पैकेजों की सुरक्षा के लिए अवरुद्ध है।

समाधान: एक वर्चुअल वातावरण का उपयोग करें — कभी --break-system-packages न करें। अनुशंसित मार्ग uv है, जो स्वचालित रूप से एक प्रोजेक्ट-स्थानीय .venv का प्रबंधन करता है:```bash curl -LsSf https://astral.sh/uv/install.sh | sh cd ghidra-mcp uv run bridge-mcp-ghidra

root@kitploit:~
या एक क्लासिक venv:```bash
python3 -m venv .venv && source .venv/bin/activate
pip install -e .
bridge-mcp-ghidra

python -m debugger pybag या comtypes के लिए ModuleNotFoundError के साथ विफल होता है

कारण: स्टैंडअलोन डीबगर सर्वर वैकल्पिक विंडोज-मात्र Python निर्भरताओं का उपयोग करता है जो डिफ़ॉल्ट रूप से स्थापित नहीं होती हैं।

समाधान:```text uv sync --group debugger uv run python -m debugger

root@kitploit:~
यदि आपके पास एक वैश्विक Python और एक प्रोजेक्ट venv दोनों हैं, तो सुनिश्चित करें कि आप एक ही इंटरप्रेटर में इंस्टॉल करें और चलाएं।

### 500 आंतरिक सर्वर त्रुटियाँ

**कारण:** सर्वर-साइड अपवाद, अक्सर प्रोग्राम डेटा की कमी के कारण।

**समाधान:**
1. सुनिश्चित करें कि CodeBrowser में एक बाइनरी लोड की गई है
2. पहले स्वचालित विश्लेषण चलाएँ: **Analysis > Auto Analyze**
3. Java अपवादों के लिए Ghidra कंसोल (**Window > Console**) जाँचें
4. कुछ संचालनों के लिए पूरी तरह से विश्लेषित बाइनरी आवश्यक है

### 404 नहीं मिला त्रुटियाँ

**कारण:** एंडपॉइंट मौजूद नहीं है या गलत URL है।

**समाधान:**
1. एंडपॉइंट की उपस्थिति सत्यापित करें: `curl http://127.0.0.1:8089/get_version`
2. एंडपॉइंट नाम में टाइपो की जाँच करें
3. सुनिश्चित करें कि आप सही HTTP विधि (GET बनाम POST) का उपयोग कर रहे हैं

### Python Ghidra स्क्रिप्ट्स "No script provider found" से विफल होती हैं

**कारण:** Ghidra 12.1.2 में, Jython समर्थन अब डिफ़ॉल्ट रूप से सक्षम नहीं है।
`.py` स्क्रिप्ट्स को बंडल Jython एक्सटेंशन की आवश्यकता होती है; Python 3
स्क्रिप्ट्स को Ghidra Script Manager के बजाय PyGhidra का उपयोग करना चाहिए।

**समाधान:**
1. Ghidra Front End में, **File > Install Extensions** खोलें।
2. **Jython** चेक करें, Ghidra को पुनरारंभ करें, फिर Script Manager को रिफ्रेश करें।
3. नए ऑटोमेशन के लिए, Java Ghidra स्क्रिप्ट्स या PyGhidra को प्राथमिकता दें।

### एक्सटेंशन Install Extensions में दिखाई नहीं दे रहा है

**कारण:** JAR फ़ाइल गलत स्थान पर है।

**समाधान:**
1. मैन्युअल इंस्टॉल स्थान: `~/.ghidra/ghidra_12.1.2_PUBLIC/Extensions/GhidraMCP/lib/GhidraMCP.jar`
2. या उपयोग करें: **File > Install Extensions > Add** और ZIP फ़ाइल चुनें
3. सुनिश्चित करें कि JAR/ZIP आपके Ghidra संस्करण के लिए बनाया गया था

### बिल्ड "Ghidra dependencies not found" से विफल होता है

**कारण:** Ghidra JARs स्थानीय Maven रिपॉजिटरी में स्थापित नहीं हैं।

**समाधान:**```text
# Windows (recommended)
python -m tools.setup install-ghidra-deps --ghidra-path "C:\ghidra_12.1.2_PUBLIC"

📊 उत्पादन प्रदर्शन

  • MCP उपकरण: 271 उपकरण पूरी तरह से कार्यान्वित
  • गति: अधिकांश कार्यों के लिए उप-सेकंड प्रतिक्रिया
  • दक्षता: बैच संचालन के माध्यम से एपीआई कॉल में 93% की कमी
  • विश्वसनीयता: सर्व-या-कुछ नहीं अर्थशास्त्र के साथ परमाणु लेनदेन
  • एआई वर्कफ़्लोज़: सैकड़ों वास्तविक फ़ंक्शनों में परिष्कृत सिद्ध दस्तावेज़ीकरण प्रॉम्प्ट
  • परिनियोजन: स्वचालित संस्करण-जागरूक परिनियोजन स्क्रिप्ट

🛠️ एपीआई संदर्भ

271 एमसीपी उपकरण जो HTTP एंडपॉइंट द्वारा समर्थित हैं, कैटलॉग श्रेणी के अनुसार समूहित। tests/endpoints.json से python -m tools.gen_readme_api_reference --write द्वारा उत्पन्न; /mcp/schema पर लाइव स्कीमा रनटाइम पर आधिकारिक है। उपयोग पैटर्न: docs/prompts/TOOL_USAGE_GUIDE.md।

प्रोग्राम और सत्र प्रबंधन

  • analysis_status - खुले प्रोग्राम के लिए ऑटो-विश्लेषण स्थिति प्राप्त करें
  • close_program - प्रोजेक्ट पथ या नाम द्वारा एक खुले प्रोग्राम को बंद करें
  • create_property_map - पते द्वारा कुंजीबद्ध टाइप किए गए मानों को संग्रहीत करने के लिए एक उपयोगकर्ता गुण मानचित्र बनाएं
  • delete_property_map - एक उपयोगकर्ता गुण मानचित्र और उसमें मौजूद सभी मानों को हटाएं
  • exit_ghidra - Ghidra को सहेजें और बाहर निकलें
  • get_address_spaces - प्रोग्राम में सभी भौतिक और ओवरले पता स्थानों की सूची बनाएं (ओवरले में is_overlay फ्लैग और overlayed_space नाम शामिल है)
  • get_current_program_info - वर्तमान प्रोग्राम जानकारी प्राप्त करें
  • get_language_metadata - प्रोग्राम का भाषा विवरण डंप करें: पता स्थान, रजिस्टर, डिफ़ॉल्ट प्रतीक, एंडियननेस, पॉइंटर आकार (मुद्दा #192)
  • get_program_options - प्रकार, वर्तमान मान, डिफ़ॉल्ट और विवरणों के साथ एक प्रोग्राम विकल्प समूह में सभी विकल्प पढ़ें
  • get_property - एक गुण मानचित्र में एक पते पर संग्रहीत मान पढ़ें
  • import_file - डिस्क से एक बाइनरी फ़ाइल को वर्तमान Ghidra प्रोजेक्ट में आयात करें और इसे खोलें
  • list_open_programs - खुले प्रोग्रामों की सूची बनाएं
  • list_option_groups - प्रोग्राम विकल्प समूहों की सूची बनाएं (जैसे,
  • list_properties - पेजिनेशन के साथ एक गुण मानचित्र में संग्रहीत (पता, मान) प्रविष्टियों की सूची बनाएं
  • list_property_maps - उपयोगकर्ता-परिभाषित गुण मानचित्रों की सूची बनाएं — प्रति-पता कुंजी→मान भंडार
  • open_program - प्रोजेक्ट से प्रोग्राम खोलें
  • reanalyze - एक प्रोग्राम पर पूर्ण ऑटो-विश्लेषण ट्रिगर करें
  • remove_program_option - एक प्रोग्राम विकल्प समूह से एक विकल्प हटाएं
  • remove_property - एक गुण मानचित्र में एक एकल पते पर संग्रहीत मान को हटाएं
  • save_all_programs - सभी खुले प्रोग्रामों को सहेजें
  • save_program - वर्तमान प्रोग्राम को सहेजें
  • set_image_base - प्रोग्राम का आधार पता सेट करें (सभी पतों को रीबेस करता है)
  • set_program_option - एक टाइप किया गया प्रोग्राम विकल्प सेट करें
  • set_property - एक गुण मानचित्र में एक पते पर एक मान सेट करें
  • switch_program - वर्तमान प्रोग्राम स्विच करें

परियोजना संगठन

  • create_folder - प्रोजेक्ट में एक फ़ोल्डर बनाएं
  • delete_file - प्रोजेक्ट से एक फ़ाइल हटाएं
  • delete_project - एक Ghidra प्रोजेक्ट हटाएं
  • list_projects - उपलब्ध Ghidra प्रोजेक्ट्स की सूची बनाएं
  • move_file - एक फ़ाइल को किसी अन्य प्रोजेक्ट फ़ोल्डर में ले जाएं
  • move_folder - एक फ़ोल्डर को किसी अन्य स्थान पर ले जाएं
  • project_info - चल रहे उपकरणों और खुले प्रोग्रामों सहित विस्तृत परियोजना जानकारी प्राप्त करें

हेडलेस परियोजना और प्रोग्राम जीवनचक्र

स्टैंडअलोन हेडलेस सर्वर (GhidraMCPHeadlessServer) पर उपलब्ध।

  • archive_project - वर्तमान में खुले प्रोजेक्ट को Ghidra-मूल .gar फ़ाइल में संग्रहित करें
  • checkin_program - एक खुले प्रोग्राम को साझा Ghidra सर्वर में एक नए संस्करण के रूप में वापस चेक इन करें
  • close_project - वर्तमान में खुले प्रोजेक्ट को बंद करें
  • create_project - एक नया Ghidra प्रोजेक्ट बनाएं
  • export_program - एक खुले या प्रोजेक्ट-निवासी प्रोग्राम को Ghidra ज़िप फ़ाइल (.gzf) में निर्यात करें
  • get_project_info - वर्तमान में खुले प्रोजेक्ट के बारे में जानकारी प्राप्त करें
  • import_program - एक Ghidra ज़िप फ़ाइल (.gzf) को वर्तमान में खुले प्रोजेक्ट में target_folder (डिफ़ॉल्ट '/') के अंतर्गत एक नई DomainFile के रूप में आयात करें
  • load_program - विश्लेषण के लिए हेडलेस सर्वर में एक बाइनरी फ़ाइल लोड करें
  • load_program_from_project - Ghidra प्रोजेक्ट से प्रोग्राम लोड करें (हेडलेस)
  • open_project - एक मौजूदा Ghidra प्रोजेक्ट (.gpr फ़ाइल या निर्देशिका) खोलें
  • restore_project - एक Ghidra .gar संग्रह को parent_dir/project_name पर एक नए डिस्क-आधारित प्रोजेक्ट में पुनर्स्थापित करें
  • server_status - हेडलेस सर्वर कनेक्शन स्थिति जांचें

सूचीकरण और गणना

  • list_bookmarks - बुकमार्क सूचीबद्ध करें
  • list_calling_conventions - उपलब्ध कॉलिंग कन्वेंशन सूचीबद्ध करें
  • list_classes - नेमस्पेस/क्लास नाम सूचीबद्ध करें
  • list_data_items - परिभाषित डेटा सूचीबद्ध करें
  • list_data_items_by_xrefs - xref गणना द्वारा क्रमबद्ध डेटा सूचीबद्ध करें
  • list_exports - निर्यातित प्रतीक सूचीबद्ध करें
  • list_external_locations - बाहरी स्थान सूचीबद्ध करें
  • list_functions - पतों के साथ फ़ंक्शन सूचीबद्ध करें
  • list_functions_enhanced - मेटाडेटा के साथ फ़ंक्शन सूचीबद्ध करें
  • list_globals - वैश्विक चर सूचीबद्ध करें
  • list_imports - आयातित प्रतीक सूचीबद्ध करें
  • list_methods - पेजिनेशन के साथ सभी फ़ंक्शन नाम सूचीबद्ध करें
  • list_namespaces - सभी नेमस्पेस सूचीबद्ध करें
  • list_scripts - उपलब्ध Ghidra स्क्रिप्ट सूचीबद्ध करें
  • list_segments - मेमोरी सेगमेंट सूचीबद्ध करें
  • list_strings - परिभाषित स्ट्रिंग्स सूचीबद्ध करें

संदर्भ और लुकअप

  • get_current_address - कर्सर पता प्राप्त करें (केवल GUI)
  • get_current_function - कर्सर पर फ़ंक्शन प्राप्त करें (केवल GUI)
  • get_current_selection - CodeBrowser सूची में हाइलाइट किए गए पता श्रेणियाँ प्राप्त करें (केवल GUI)
  • get_entry_points - प्रोग्राम प्रवेश बिंदु प्राप्त करें
  • get_enum_values - गणना मान प्राप्त करें
  • get_external_location - बाहरी स्थान विवरण प्राप्त करें
  • get_full_call_graph - पूर्ण कॉल ग्राफ प्राप्त करें
  • get_function_by_address - पते पर फ़ंक्शन प्राप्त करें
  • get_function_call_graph - कॉल ग्राफ प्राप्त करें
  • get_function_callees - कॉल किए गए फ़ंक्शन प्राप्त करें
  • get_function_callers - कॉल करने वाले फ़ंक्शन प्राप्त करें
  • get_function_count - लोड किए गए प्रोग्राम में फ़ंक्शनों की संख्या लौटाएं
  • get_function_jump_targets - जंप लक्ष्य प्राप्त करें
  • get_function_labels - फ़ंक्शन में लेबल प्राप्त करें
  • get_function_variables - एक फ़ंक्शन में सभी चर सूचीबद्ध करें
  • get_struct_layout - संरचना लेआउट प्राप्त करें
  • get_valid_data_types - मान्य डेटा प्रकार नाम प्राप्त करें

खोज

  • find_similar_functions - समान फ़ंक्शन खोजें
  • search_byte_patterns - बाइट पैटर्न खोजें
  • search_data_types - डेटा प्रकार खोजें
  • search_functions - नाम से फ़ंक्शन खोजें
  • search_functions_enhanced - उन्नत फ़ंक्शन खोज
  • search_strings - रेगेक्स/सबस्ट्रिंग पैटर्न द्वारा परिभाषित स्ट्रिंग खोजें

विघटन और डिसअसेम्बली

  • decompile_function - फ़ंक्शन को विघटित करें
  • disassemble_bytes - बाइट श्रेणी को डिसअसेम्बल करें
  • disassemble_function - फ़ंक्शन को डिसअसेम्बल करें
  • force_decompile - ताजा विघटन बलपूर्वक करें

फ़ंक्शन टैग, चर और विशेषताएँ

  • add_function_tag - एक या अधिक टैग को एक फ़ंक्शन से संलग्न करें
  • batch_add_function_tags - एक लेनदेन में कई फ़ंक्शनों में टैग संलग्न करें
  • batch_remove_function_tags - एक लेनदेन में कई फ़ंक्शनों से टैग अलग करें
  • clear_flow_and_repair - एक सीड श्रेणी पर Ghidra का GUI 'क्लियर फ्लो और मरम्मत' क्रिया चलाएं: सीड से पहुंचने योग्य निर्देश प्रवाह को साफ करता है, फिर फ़ंक्शन निकायों की मरम्मत करता है और बनाए रखे गए प्रवाह को पुनः डिसअसेम्बल करता है (clear_data=false, clear_labels=false, repair=true के साथ ClearFlowAndRepairCmd)
  • create_function_tag - एक वैकल्पिक टिप्पणी के साथ एक प्रोग्राम-व्यापी फ़ंक्शन टैग परिभाषा बनाएं
  • delete_function_tag - एक प्रोग्राम-व्यापी फ़ंक्शन टैग परिभाषा हटाएं
  • get_function_tags - एक विशिष्ट फ़ंक्शन को निर्दिष्ट सभी टैग सूचीबद्ध करें
  • list_class_members - C++ क्लास के सदस्य फ़ंक्शन सूचीबद्ध करें
  • list_function_tags - उनके उपयोग गणना के साथ सभी प्रोग्राम-व्यापी फ़ंक्शन टैग परिभाषाएँ सूचीबद्ध करें
  • remove_function_tag - एक फ़ंक्शन से एक या अधिक टैग अलग करें
  • search_functions_by_tag - सभी फ़ंक्शन सूचीबद्ध करें जिनमें एक निर्दिष्ट टैग संलग्न है
  • set_decompiler_variable_type - नाम से एक डिकम्पाइलर (उच्च-स्तरीय) चर या पैरामीटर प्रकार सेट करें
  • set_function_no_return - नो-रिटर्न विशेषता सेट करें
  • set_function_tag_comment - एक मौजूदा प्रोग्राम-व्यापी फ़ंक्शन टैग पर टिप्पणी/विवरण अद्यतन करें
  • set_function_this_type - अंतर्निहित 'this' पॉइंटर का डिकम्पाइलर/डेटाबेस प्रकार सेट करें (x86 __thiscall/__fastcall पर ECX)
  • set_variables - परमाणु रूप से कई चरों के लिए प्रकार और नाम सेट करें

क्रॉस-रेफरेंस

  • add_memory_reference - दो मेमोरी पतों के बीच एक उपयोगकर्ता-परिभाषित क्रॉस-रेफरेंस बनाएं जिसे ऑटो-विश्लेषक अनुमान नहीं लगा सकता (रनटाइम-पॉप्युलेटेड पॉइंटर टेबल, vtable, लेट-बाउंड फ़ंक्शन पॉइंटर, छूटी हुई जंप/स्विच टेबल)
  • get_bulk_xrefs - कई पतों के लिए xrefs प्राप्त करें
  • get_function_xrefs - फ़ंक्शन क्रॉस-रेफरेंस प्राप्त करें
  • get_xrefs_from - पते से संदर्भ प्राप्त करें
  • get_xrefs_to - पते के संदर्भ प्राप्त करें
  • remove_reference - एक पते से दूसरे पते पर मेमोरी क्रॉस-रेफरेंस हटाएं — add_memory_reference का विलोम

डेटा प्रकार और संरचनाएँ

  • add_struct_field - स्ट्रक्ट फ़ील्ड जोड़ें
  • analyze_global_completeness - एक वैश्विक चर के दस्तावेज़ीकरण पूर्णता को एक बजटीय 0-100 पैमाने पर स्कोर करें — analyze_function_completeness का डेटा-पता एनालॉग
  • apply_data_type - डेटा प्रकार लागू करें
  • audit_global - एक वैश्विक चर की दस्तावेज़ीकरण स्थिति का ऑडिट करें
  • audit_globals_in_function - एक कॉल में एक फ़ंक्शन के भीतर से संदर्भित प्रत्येक वैश्विक चर का ऑडिट करें
  • batch_set_variable_types - एकाधिक चर प्रकार सेट करें
  • clone_data_type - डेटा प्रकार क्लोन करें
  • create_array_type - सारणी प्रकार बनाएं
  • create_data_type_category - डेटा प्रकार श्रेणी बनाएं
  • create_enum - गणना बनाएं
  • create_function_signature - फ़ंक्शन हस्ताक्षर प्रकार बनाएं
  • create_pointer_type - पॉइंटर प्रकार बनाएं
  • create_struct - संरचना बनाएं
  • create_typedef - typedef बनाएं
  • create_union - यूनियन बनाएं
  • delete_data_type - डेटा प्रकार हटाएं
  • embed_struct_field - एक संरचना फ़ील्ड को मान द्वारा एक एम्बेडेड स्ट्रक्ट प्रकार से बदलें (जैसे,
  • get_data_type_size - डेटा प्रकार आकार बाइट्स में प्राप्त करें
  • get_type_size - डेटा प्रकार आकार और जानकारी प्राप्त करें
  • import_data_types - GDT से डेटा प्रकार आयात करें
  • list_data_type_categories - डेटा प्रकार श्रेणियाँ सूचीबद्ध करें
  • list_data_types - डेटा प्रकार सूचीबद्ध करें
  • modify_struct_field - स्ट्रक्ट फ़ील्ड संशोधित करें
  • modify_struct_field_type - नाम या ऑफ़सेट (offset:N) द्वारा एक संरचना फ़ील्ड का प्रकार सेट करें
  • move_data_type_to_category - डेटा प्रकार को श्रेणी में ले जाएं
  • recreate_struct - एक चरण में एक संरचना बदलें: वैकल्पिक रूप से एक मौजूदा समान-नाम वाले प्रकार को हटाएं, फिर फ़ील्ड JSON के साथ बनाएं (create_struct के समान आकार)
  • remove_struct_field - स्ट्रक्ट फ़ील्ड हटाएं
  • resize_struct - कुल बाइट आकार द्वारा एक मौजूदा संरचना को बढ़ाएं या घटाएं
  • resolve_duplicate_type - सरल नाम से डुप्लिकेट डेटा प्रकार खोजें; जब एक बड़ा विहित प्रकार मौजूद हो तो अप्रयुक्त /Demangler आकार-1 स्टब्स हटाएं
  • set_function_prototype - फ़ंक्शन प्रोटोटाइप सेट करें (रिटर्न प्रकार, पैरामीटर प्रकार, कॉलिंग कन्वेंशन)
  • set_global - परमाणु रूप से एक वैश्विक चर पर नाम + प्रकार + प्लेट-टिप्पणी + सारणी लंबाई लागू करें
  • set_local_variable_type - चर प्रकार सेट करें
  • set_parameter_type - पैरामीटर प्रकार सेट करें
  • set_variable_storage - चर भंडारण सेट करें
  • validate_data_type - डेटा प्रकार सिंटैक्स मान्य करें
  • validate_data_type_exists - जांचें कि क्या डेटा प्रकार मौजूद है
  • validate_function_prototype - फ़ंक्शन प्रोटोटाइप मान्य करें

नामकरण और लेबल

  • batch_create_labels - एकाधिक लेबल बनाएं
  • batch_delete_labels - एकाधिक लेबल हटाएं
  • batch_rename_function_components - बैच फ़ंक्शन घटकों का नाम बदलें
  • create_label - लेबल बनाएं
  • delete_label - पते पर लेबल हटाएं
  • rename_data - डेटा प्रतीक का नाम बदलें
  • rename_external_location - बाहरी स्थान का नाम बदलें
  • rename_function - नाम से फ़ंक्शन का नाम बदलें
  • rename_function_by_address - पते से फ़ंक्शन का नाम बदलें
  • rename_global_variable - वैश्विक चर का नाम बदलें
  • rename_label - लेबल का नाम बदलें
  • rename_or_label - लेबल का नाम बदलें या बनाएं
  • rename_variable - एक फ़ंक्शन में एक चर का नाम बदलें
  • rename_variables - बैच चरों का नाम बदलें

टिप्पणियाँ और बुकमार्क

  • batch_set_comments - एकाधिक टिप्पणियाँ सेट करें
  • clear_function_comments - एक फ़ंक्शन के लिए सभी टिप्पणियाँ साफ़ करें
  • delete_bookmark - बुकमार्क हटाएं
  • get_comment - किसी भी पते पर सूची टिप्पणियाँ (प्लेट/प्री/ईओएल/पोस्ट/दोहराने योग्य) प्राप्त करें, जिसमें डेटा पते शामिल हैं (get_plate_comment के विपरीत जिसके लिए एक फ़ंक्शन आवश्यक है)
  • get_plate_comment - प्लेट टिप्पणी प्राप्त करें
  • set_bookmark - बुकमार्क सेट करें
  • set_comment - किसी भी पते पर दिए गए प्रकार (प्लेट/प्री/ईओएल/पोस्ट/दोहराने योग्य) की एक सूची टिप्पणी सेट करें, जिसमें डेटा पते शामिल हैं
  • set_decompiler_comment - PRE_COMMENT सेट करें
  • set_disassembly_comment - EOL_COMMENT सेट करें
  • set_plate_comment - प्लेट टिप्पणी सेट करें

विश्लेषण

  • analyze_api_call_chains - एपीआई कॉल श्रृंखलाओं का विश्लेषण करें
  • analyze_call_graph - फ़ंक्शन कॉल ग्राफ पैटर्न का विश्लेषण करें
  • analyze_control_flow - नियंत्रण प्रवाह का विश्लेषण करें
  • analyze_data_region - डेटा क्षेत्र का विश्लेषण करें
  • analyze_dataflow - एक फ़ंक्शन के माध्यम से मान प्रसार का पता लगाएं (PCode ग्राफ, आगे/पीछे)
  • analyze_for_documentation - समग्र RE दस्तावेज़ीकरण विश्लेषण (डीकम्पाइल + वर्गीकरण + चर + पूर्णता)
  • analyze_function_complete - व्यापक एकल-कॉल फ़ंक्शन विश्लेषण
  • analyze_function_completeness - दस्तावेज़ीकरण पूर्णता का विश्लेषण करें
  • analyze_struct_field_usage - स्ट्रक्ट फ़ील्ड उपयोग का विश्लेषण करें
  • apply_data_classification - डेटा वर्गीकरण लागू करें
  • batch_analyze_completeness - कई फ़ंक्शनों के लिए बैच में पूर्णता का विश्लेषण करें
  • batch_apply_documentation - एक कॉल में एक फ़ंक्शन के लिए सभी दस्तावेज़ीकरण लागू करें
  • batch_decompile - एक बार में कई फ़ंक्शनों को डीकम्पाइल करें
  • can_rename_at_address - जांचें कि क्या पते का नाम बदला जा सकता है
  • clear_instruction_flow_override - फ्लो ओवरराइड साफ़ करें
  • configure_analyzer - एक विश्लेषण प्लगइन कॉन्फ़िगर करें
  • create_function - पते पर फ़ंक्शन बनाएं
  • create_memory_block - मेमोरी ब्लॉक बनाएं
  • delete_function - पते पर फ़ंक्शन हटाएं
  • detect_array_bounds - सारणी सीमाओं का पता लगाएं
  • detect_crypto_constants - क्रिप्टो स्थिरांक का पता लगाएं
  • detect_malware_behaviors - मैलवेयर व्यवहार का पता लगाएं
  • extract_iocs_with_context - संदर्भ के साथ IOCs निकालें
  • find_anti_analysis_techniques - एंटी-विश्लेषण तकनीक खोजें
  • find_code_gaps - निष्पादन योग्य मेमोरी में फ़ंक्शनों के बीच अपरिभाषित बाइट्स के अंतराल खोजें
  • find_dead_code - डेड कोड खोजें
  • find_next_undefined_function - अगला अपरिभाषित फ़ंक्शन खोजें
  • get_assembly_context - असेंबली संदर्भ प्राप्त करें
  • get_field_access_context - फ़ील्ड एक्सेस संदर्भ प्राप्त करें
  • get_function_pcode - एक फ़ंक्शन के लिए कच्चा P-कोड डंप करें (मुद्दा #192)
  • inspect_memory_content - मेमोरी बाइट्स का निरीक्षण करें
  • list_analyzers - उपलब्ध विश्लेषण प्लगइन सूचीबद्ध करें
  • read_memory - कच्ची मेमोरी पढ़ें
  • run_analysis - वर्तमान प्रोग्राम पर ऑटो-विश्लेषण चलाएं
  • search_instructions - म्नेमोनिक और/या ऑपरेंड सबस्ट्रिंग द्वारा निर्देश खोजें
  • suggest_field_names - फ़ील्ड नाम सुझाएं

क्रॉस-बाइनरी दस्तावेज़ीकरण और संग्रह

  • archive_ingest_function - एक एकल फ़ंक्शन के दस्तावेज़ीकरण को क्रॉस-वर्जन संग्रह में शामिल करें (bsim Postgres पर re_kb.functions)
  • archive_ingest_program - एक प्रोग्राम में प्रत्येक फ़ंक्शन को बल्क-इन्जेस्ट करके क्रॉस-वर्जन दस्तावेज़ीकरण संग्रह में शामिल करें
  • batch_string_anchor_report - स्रोत फ़ाइल स्ट्रिंग्स और उनके FUN_* फ़ंक्शनों की रिपोर्ट
  • bulk_fuzzy_match - बल्क क्रॉस-बाइनरी फ़ंक्शन मिलान
  • find_similar_functions_fuzzy - क्रॉस-बाइनरी फ़ज़ी फ़ंक्शन मिलान
  • merge_program_documentation - बल्क मर्ज: मिलान पतों पर एक प्रोग्राम से दूसरे में सभी RE दस्तावेज़ीकरण (फ़ंक्शन नाम, हस्ताक्षर, प्लेट टिप्पणियाँ, EOL/PRE/POST पर निर्देश टिप्पणियाँ, गैर-डिफ़ॉल्ट लेबल और वैश्विक प्रतीक) कॉपी करें

उपयोगिता और दस्तावेज़ीकरण स्थानांतरण

  • apply_function_documentation - फ़ंक्शन दस्तावेज़ीकरण लागू करें
  • check_connection - स्वास्थ्य जांच एंडपॉइंट
  • compare_programs_documentation - प्रोग्रामों में दस्तावेज़ीकरण की तुलना करें
  • convert_number - आधारों के बीच संख्या परिवर्तित करें
  • diff_functions - दो फ़ंक्शनों का अंतर देखें
  • find_undocumented_by_string - स्ट्रिंग का संदर्भ देने वाले अदस्तावेज़ित फ़ंक्शन खोजें
  • get_bulk_function_hashes - बल्क फ़ंक्शन हैश प्राप्त करें
  • get_function_documentation - फ़ंक्शन दस्तावेज़ीकरण निर्यात करें
  • get_function_hash - फ़ंक्शन हैश प्राप्त करें
  • get_function_signature - फ़ंक्शन फीचर हस्ताक्षर प्राप्त करें
  • get_metadata - प्रोग्राम मेटाडेटा प्राप्त करें
  • get_version - प्लगइन संस्करण प्राप्त करें
  • health - हेडलेस सर्वर के लिए स्वास्थ्य जांच एंडपॉइंट
  • mcp_health - HTTP सर्वर स्वास्थ्य: पूल आँकड़े, अपटाइम, मेमोरी, सक्रिय अनुरोध गणना
  • mcp_schema - एंडपॉइंट मेटाडेटा के साथ मशीन-पठनीय एपीआई स्कीमा
  • tool_goto_address - CodeBrowser सूची और डिकम्पाइलर को एक विशिष्ट पते पर नेविगेट करें
  • tool_launch_codebrowser - CodeBrowser में एक फ़ाइल खोलें, यदि आवश्यक हो तो एक नया लॉन्च करें
  • tool_running_tools - सभी चल रहे Ghidra टूल विंडो सूचीबद्ध करें

एम्यूलेशन

  • emulate_function - नियंत्रित रजिस्टर/मेमोरी इनपुट के साथ एक एकल फ़ंक्शन का एम्यूलेट करें
  • emulate_hash_batch - ब्रूट-फोर्स एपीआई हैश रिज़ॉल्यूशन

स्क्रिप्टिंग

  • run_ghidra_script - आउटपुट कैप्चर के साथ स्क्रिप्ट चलाएं
  • run_script_inline - इनलाइन स्क्रिप्ट कोड चलाएं

Ghidra सर्वर और संस्करण नियंत्रण

  • server_admin_set_permissions - एक रिपॉजिटरी पर उपयोगकर्ता अनुमतियाँ सेट करें
  • server_admin_terminate_all_checkouts - एक फ़ोल्डर में सभी चेकआउट को पुनरावर्ती रूप से समाप्त करें
  • server_admin_terminate_checkout - एक एकल फ़ाइल पर सभी चेकआउट समाप्त करें
  • server_admin_users - सर्वर पर सभी उपयोगकर्ताओं को सूचीबद्ध करें
  • server_authenticate - प्रोग्रामेटिक प्रमाणीकरण के लिए सर्वर क्रेडेंशियल पंजीकृत करें
  • server_checkouts - एक फ़ोल्डर में सभी चेक आउट फ़ाइलों को सूचीबद्ध करें, जिसमें सर्वर-साइड चेकआउट शामिल हैं
  • server_connect - Ghidra सर्वर से कनेक्ट करें
  • server_disconnect - Ghidra सर्वर से डिस्कनेक्ट करें
  • server_repositories - कनेक्टेड सर्वर पर रिपॉजिटरी सूचीबद्ध करें
  • server_repository_create - सर्वर पर एक नई रिपॉजिटरी बनाएं
  • server_repository_file - सर्वर रिपॉजिटरी से फ़ाइल जानकारी प्राप्त करें
  • server_repository_files - एक सर्वर रिपॉजिटरी फ़ोल्डर में फ़ाइलें सूचीबद्ध करें
  • server_version_control_add - संस्करण नियंत्रण में एक फ़ाइल जोड़ें
  • server_version_control_checkin - एक संस्करण-नियंत्रित फ़ाइल चेक इन करें
  • server_version_control_checkout - एक संस्करण-नियंत्रित फ़ाइल चेक आउट करें
  • server_version_control_undo_checkout - एक फ़ाइल चेकआउट पूर्ववत करें
  • server_version_history - एक फ़ाइल के लिए संस्करण इतिहास प्राप्त करें

डीबगर (Ghidra TraceRmi — केवल GUI)

Windows होस्ट पर जहां ब्रिज का WinDbg डीबगर प्रॉक्सी सक्रिय है (GHIDRA_DEBUGGER_URL), टकराने वाले नामों को _2 प्रत्यय मिलता है (जैसे debugger_status_2)।

  • debugger_dynamic_to_static - वर्तमान ट्रेस से एक रनटाइम डायनामिक पते को वापस स्थिर Ghidra प्रोग्राम पते में अनुवाद करें
  • debugger_interrupt - चल रहे लक्ष्य को बाधित करें (इसमें घुसें)
  • debugger_launch - Ghidra के Trace RMI डीबगर लॉन्चर के माध्यम से एक निष्पादन योग्य लॉन्च करें
  • debugger_launch_offers - वर्तमान प्रोग्राम के लिए उपलब्ध डीबगर लॉन्च/अटैच विकल्प सूचीबद्ध करें
  • debugger_list_breakpoints - वर्तमान ट्रेस में सभी ब्रेकपॉइंट सूचीबद्ध करें
  • debugger_modules - डीबग किए गए प्रोसेस में लोड किए गए मॉड्यूल (DLLs/EXEs) सूचीबद्ध करें
  • debugger_read_memory - डीबग किए गए प्रोसेस से मेमोरी पढ़ें
  • debugger_registers - वर्तमान डीबग ट्रेस स्नैपशॉट से सीपीयू रजिस्टर पढ़ें
  • debugger_remove_breakpoint - एक पते पर एक ब्रेकपॉइंट हटाएं
  • debugger_resume - डीबग किए गए प्रोसेस का निष्पादन फिर से शुरू करें
  • debugger_set_breakpoint - ट्रेस में एक पते पर एक सॉफ़्टवेयर निष्पादन ब्रेकपॉइंट सेट करें
  • debugger_stack_trace - वर्तमान थ्रेड के लिए कॉल स्टैक बैकट्रेस प्राप्त करें
  • debugger_static_to_dynamic - एक स्थिर Ghidra प्रोग्राम पते को वर्तमान ट्रेस में एक रनटाइम डायनामिक पते में अनुवाद करें
  • debugger_status - डीबगर स्थिति प्राप्त करें: सक्रिय ट्रेस, थ्रेड, निष्पादन स्थिति, मॉड्यूल गणना
  • debugger_step_into - अगले निर्देश में एकल-चरण (कॉल का अनुसरण करता है)
  • debugger_step_out - वर्तमान फ़ंक्शन से बाहर निकलें (रिटर्न तक चलाएं)
  • debugger_step_over - अगले निर्देश पर कदम (कॉल का अनुसरण नहीं करता)
  • debugger_traces - सभी खुले डीबग ट्रेस सूचीबद्ध करें

सिस्टम

  • prompt_policy - अस्थायी रूप से स्कोप्ड ऑटोमेशन प्रॉम्प्ट हैंडलिंग सक्षम, अक्षम या क्वेरी करें

ब्रिज स्थैतिक उपकरणपायथन ब्रिज में ही परिभाषित (इंस्टेंस डिस्कवरी, टूल-ग्रुप प्रबंधन); Ghidra कनेक्शन से पहले भी हमेशा उपलब्ध। ब्रिज 22 debugger_* WinDbg टूल्स को भी प्रॉक्सी करता है जब GHIDRA_DEBUGGER_URL स्टैंडअलोन डीबगर सर्वर की ओर इंगित करता है।

  • check_tools - रिपोर्ट करें कि वर्तमान में कौन से टूल पंजीकृत और कॉल करने योग्य हैं
  • connect_instance - ब्रिज को किसी विशिष्ट Ghidra इंस्टेंस से कनेक्ट करें
  • import_file - डिस्क से एक बाइनरी को वर्तमान प्रोजेक्ट में आयात करें और इसे खोलें
  • list_instances - चल रहे Ghidra MCP इंस्टेंस खोजें (UDS + TCP पोर्ट स्कैन)
  • list_tool_groups - टूल ग्रुप और उनकी लोड स्थिति सूचीबद्ध करें
  • load_tool_group - MCP क्लाइंट के साथ एक टूल ग्रुप के डायनामिक टूल पंजीकृत करें
  • search_tools - कीवर्ड द्वारा पूर्ण टूल कैटलॉग खोजें
  • unload_tool_group - एक टूल ग्रुप के डायनामिक टूल को अपंजीकृत करें

संस्करण इतिहास के लिए CHANGELOG.md देखें।

🏗️ आर्किटेक्चर```

┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ AI/Automation │◄──►│ MCP Bridge │◄──►│ Ghidra Plugin │ │ Tools │ │ (bridge_mcp_ │ │ (GhidraMCP.jar) │ │ (Claude, etc.) │ │ ghidra/) │ │ │ └─────────────────┘ └─────────────────┘ └─────────────────┘ │ │ │ MCP Protocol HTTP REST Ghidra API (stdio/streamable-http) (localhost:8089) (Program, Listing)

root@kitploit:~
### घटक

- **python/bridge_mcp_ghidra/** — पायथन MCP सर्वर पैकेज (`ghidra-mcp-bridge` व्हील के रूप में भेजा जाता है; `bridge-mcp-ghidra` कंसोल स्क्रिप्ट) जो MCP प्रोटोकॉल को HTTP कॉल में अनुवाद करता है (225 कैटलॉग प्रविष्टियाँ)
- **GhidraMCP.jar** — गिड्रा प्लगइन जो HTTP के माध्यम से विश्लेषण क्षमताओं को उजागर करता है (175 GUI एंडपॉइंट्स)
- **GhidraMCPHeadlessServer** — स्टैंडअलोन हेडलेस सर्वर — 183 एंडपॉइंट्स, कोई GUI आवश्यक नहीं
- **ghidra_scripts/** — सामान्य कार्यों के लिए ऑटोमेशन स्क्रिप्ट्स का संग्रह

## 🔧 विकास

### स्रोत से बनाना```bash
# Recommended: direct Python-first workflow
python -m tools.setup ensure-prereqs --ghidra-path "C:\ghidra_12.1.2_PUBLIC"
python -m tools.setup build
python -m tools.setup deploy --ghidra-path "C:\ghidra_12.1.2_PUBLIC"

# Version bump (updates all maintained version references atomically)
python -m tools.setup bump-version --new X.Y.Z

The authoritative build system today is Maven. tools.setup, the VS Code tasks, and the documented deploy flow all build through pom.xml and write artifacts to target/. build.gradle remains in the repo as a manual fallback for direct Ghidra/Gradle users, but it is not the primary path.

Command Reference

कमांडयह क्या करता है
ensure-prereqsPython निर्भरताएँ + Ghidra Maven JARs एक साथ इंस्टॉल करें। नई मशीन पर यहाँ से शुरू करें।
preflightबिना कोई बदलाव किए Python, बिल्ड टूल, Ghidra पथ, और JAR उपलब्धता को मान्य करें। नेटवर्क पहुँच की जाँच करने के लिए --strict जोड़ें।
buildMaven के माध्यम से प्लगइन JAR और एक्सटेंशन ZIP बनाएँ (या Gradle जब TOOLS_SETUP_BACKEND=gradle हो)।
deployनिर्मित एक्सटेंशन को Ghidra प्रोफ़ाइल में कॉपी करें और स्वतः-सक्रियण के लिए FrontEndTool.xml को पैच करें।
start-ghidraकॉन्फ़िगर की गई Ghidra स्थापना लॉन्च करें।
cleanMaven/Gradle बिल्ड आउटपुट (target/, build/) हटाएँ।
clean-allबिल्ड आउटपुट के साथ-साथ स्थानीय कैश आर्टिफैक्ट्स (.m2 Ghidra JARs, आदि) हटाएँ।
install-ghidra-depsकेवल Ghidra JARs को ~/.m2 में इंस्टॉल करें। जब बिल्ड वातावरण बदलता है तो उपयोगी।
install-python-depsuv sync के माध्यम से Python निर्भरता समूह स्थापित करें।
run-testsJava ऑफ़लाइन परीक्षण सूट चलाएँ (लाइव Ghidra की आवश्यकता नहीं)।
verify-versionजाँचें कि संस्करण स्ट्रिंग्स pom.xml, CHANGELOG.md, और README.md में सुसंगत हैं।
bump-version --new X.Y.Zसभी संस्करण संदर्भों को परमाणु रूप से अद्यतन करें। git टैग बनाने के लिए --tag पास करें।

अधिकांश कमांड द्वारा स्वीकार किए जाने वाले सामान्य फ़्लैग:

फ़्लैगविवरण
--ghidra-path PATHGhidra स्थापना निर्देशिका। डिफ़ॉल्ट रूप से .env से GHIDRA_PATH।
--dry-runकार्यों को निष्पादित किए बिना प्रिंट करें।
--forceपहले से मौजूद होने पर भी Ghidra JARs को पुनर्स्थापित करें (install-ghidra-deps, ensure-prereqs).
--with-debuggerडीबगर Python आवश्यकताओं को बलपूर्वक स्थापित करें (केवल Windows).
--use-debugger-toggleयह निर्णय लेने के लिए कि डीबगर डिप्स स्थापित करें या नहीं, .env से INSTALL_DEBUGGER_DEPS पढ़ें।
--test TIER(deploy केवल) लाइव डिप्लॉय रिग्रेशन टियर जैसे release या debugger-live में ऑप्ट-इन करें।
--strict(preflight केवल) Maven Central और PyPI के लिए नेटवर्क पहुँच की भी जाँच करें।

डिप्लॉय परीक्षण टियर ऑप्ट-इन हैं क्योंकि बेंचमार्क टियर सक्रिय Ghidra प्रोजेक्ट में Benchmark.dll और BenchmarkDebug.exe को आयात/रीसेट कर सकते हैं। रिलीज़ काटने से पहले --test release का उपयोग करें, या जब आप चाहते हैं कि आपकी मशीन पर हर डिप्लॉय लाइव बेंचमार्क रिग्रेशन चलाए, तो स्थानीय .env में GHIDRA_MCP_DEPLOY_TESTS=release सेट करें। देखें Testing and Release Regression।```text

Standard first-time setup and deploy

python -m tools.setup ensure-prereqs --ghidra-path "C:\ghidra_12.1.2_PUBLIC" python -m tools.setup build python -m tools.setup deploy --ghidra-path "C:\ghidra_12.1.2_PUBLIC"

Preflight check before deploying

python -m tools.setup preflight --strict --ghidra-path "C:\ghidra_12.1.2_PUBLIC"

Version bump and tag

python -m tools.setup bump-version --new X.Y.Z --tag

Run offline Java tests

python -m tools.setup run-tests

Show full help

python -m tools.setup --help

root@kitploit:~
### परियोजना संरचना```
ghidra-mcp/
├── pyproject.toml           # uv project (ghidra-mcp-bridge wheel + dependency groups)
├── python/bridge_mcp_ghidra/ # MCP server package (Python, 225 catalog entries)
├── src/main/java/           # Ghidra plugin + headless server (Java)
│   └── com/xebyte/
│       ├── GhidraMCPPlugin.java         # GUI plugin (196 endpoints)
│       ├── headless/                    # Headless server (183 endpoints)
│       └── core/                        # Shared service layer (12 services)
├── debugger/                # Optional standalone debugger server (port 8099)
├── ghidra_scripts/          # Automation scripts for batch workflows
├── tests/                   # Python unit tests + endpoint catalog
│   ├── unit/               # Catalog consistency, schema, tool function tests
│   └── endpoints.json      # Endpoint specification (225 entries)
├── docs/                    # Documentation
│   ├── prompts/            # AI workflow prompts (V5 documentation workflows)
│   ├── releases/           # Version release notes
│   └── project-management/ # Contributor planning docs (Gradle migration, etc.)
├── tools/setup/             # Build and deployment CLI (python -m tools.setup)
├── fun-doc/                 # Internal RE curation tool — not part of the MCP plugin
│                            #   Priority-queue worker, LLM scoring, web dashboard.
│                            #   See fun-doc/README.md for details.
└── .github/workflows/      # CI/CD pipelines

लाइब्रेरी निर्भरताएँ

कम्पाइलेशन से पहले Ghidra JARs को आपके स्थानीय Maven रिपॉजिटरी (~/.m2/repository) में इंस्टॉल किया जाना चाहिए। यह प्रति मशीन एक बार का सेटअप है, और फिर से जब आपका Ghidra वर्ज़न बदलता है। -Deploy अब डिफ़ॉल्ट रूप से ये स्वचालित रूप से इंस्टॉल करता है।

यह टूल निम्नलिखित के बीच वर्ज़न संगति लागू करता है:

  • pom.xml (ghidra.version)
  • --ghidra-path वर्ज़न सेगमेंट (जैसे, ghidra_12.1.2_PUBLIC)

यदि ये मेल नहीं खाते हैं, तो डिप्लॉयमेंट स्पष्ट त्रुटि के साथ तुरंत विफल हो जाता है।

समस्या निवारण: वर्ज़न बेमेल

यदि आपको वर्ज़न बेमेल त्रुटि दिखती है, तो दोनों मानों को संरेखित करें:

  1. pom.xml → ghidra.version
  2. --ghidra-path वर्ज़न सेगमेंट (ghidra_X.Y.Z_PUBLIC)

फिर पुनः चलाएँ:```text python -m tools.setup preflight --ghidra-path "C:\ghidra_12.1.2_PUBLIC"

root@kitploit:~
- `index.js` डोक्यूसॉरस के लिए डिफ़ॉल्ट टेम्पलेट को संशोधित करता है; अधिक विवरण नीचे देखें। यह डोक्यूसॉरस कॉन्फ़िगरेशन फ़ाइल, config.json, से जानकारी का उपयोग करता है, जो डोक्यूसॉरस साइट निर्देशिका (शीर्ष-स्तर) में रखी जाती है। स्क्रिप्ट चलाने के बाद, `website/siteConfig.js` डिफ़ॉल्ट से तदनुसार संशोधित हो जाता है।```text
# Windows
python -m tools.setup install-ghidra-deps --ghidra-path "C:\path\to\ghidra_12.1.2_PUBLIC"

आवश्यक लाइब्रेरीज़ (14 JARs, ~37MB):

लाइब्रेरीस्रोत पथउद्देश्य
Base.jarFeatures/Base/lib/मुख्य Ghidra कार्यक्षमता
Decompiler.jarFeatures/Decompiler/lib/डिकंपाइलेशन इंजन
PDB.jarFeatures/PDB/lib/Microsoft PDB प्रतीक समर्थन
FunctionID.jarFeatures/FunctionID/lib/फ़ंक्शन पहचान
SoftwareModeling.jarFramework/SoftwareModeling/lib/प्रोग्राम मॉडल API
Project.jarFramework/Project/lib/प्रोजेक्ट प्रबंधन
Docking.jarFramework/Docking/lib/UI डॉकिंग फ्रेमवर्क
Generic.jarFramework/Generic/lib/सामान्य उपयोगिताएँ
Utility.jarFramework/Utility/lib/मुख्य उपयोगिताएँ
Gui.jarFramework/Gui/lib/GUI घटक
FileSystem.jarFramework/FileSystem/lib/फ़ाइल सिस्टम समर्थन
Graph.jarFramework/Graph/lib/ग्राफ/कॉल ग्राफ विश्लेषण
DB.jarFramework/DB/lib/डेटाबेस संचालन
Emulation.jarFramework/Emulation/lib/P-कोड अनुकरण

नोट: लाइब्रेरीज़ रिपॉजिटरी में शामिल नहीं हैं (.gitignore देखें)। निर्माण से पहले आपको उन्हें अपने Ghidra इंस्टॉलेशन से स्थापित करना होगा।

ऑटोमेशन प्रवेश बिंदु:

  • python -m tools.setup समर्थित सेटअप/निर्माण/तैनाती/संस्करण इंटरफ़ेस है
  • ensure-prereqs, build, deploy, preflight, clean-all, और bump-version का सीधे उपयोग करें
  • ये कमांड वर्तमान में प्रामाणिक Java निर्माण बैकएंड के रूप में Maven का उपयोग करते हैं

विकास सुविधाएँ

  • स्वचालित तैनाती: संस्करण-जागरूक तैनाती स्क्रिप्ट
  • बैच संचालन: API कॉल को 93% तक कम करता है
  • परमाणु लेन-देन: सब-या-कुछ नहीं शब्दार्थ
  • व्यापक लॉगिंग: डीबग और ट्रेस क्षमताएँ

📚 दस्तावेज़ीकरण

मुख्य दस्तावेज़ीकरण

  • दस्तावेज़ीकरण सूची - पूर्ण दस्तावेज़ीकरण नेविगेशन
  • प्रोजेक्ट संरचना - परियोजना संगठन गाइड
  • परीक्षण और रिलीज़ रिग्रेशन - स्थानीय परीक्षण, CI, लाइव Ghidra रिग्रेशन, और रिलीज़ गेट
  • नामकरण परंपराएँ - कोड नामकरण मानक
  • हंगेरियन नोटेशन - चर नामकरण गाइड

AI कार्यप्रवाह प्रॉम्प्ट

  • फ़ंक्शन दस्तावेज़ीकरण V5 — प्राथमिक कार्यप्रवाह: हंगेरियन नोटेशन, प्रकार ऑडिटिंग, और सत्यापन स्कोरिंग के साथ 7-चरणीय प्रक्रिया
  • बैच दस्तावेज़ीकरण V5 — बहु-फ़ंक्शन प्रसंस्करण के लिए समानांतर उप-एजेंट प्रेषण
  • अनाथ कोड खोज — अज्ञात फ़ंक्शन के लिए स्वचालित स्कैनर
  • डेटा प्रकार जाँच — व्यवस्थित संरचना खोज
  • क्रॉस-संस्करण मिलान — हैश-आधारित फ़ंक्शन मिलान
  • त्वरित प्रारंभ प्रॉम्प्ट — सरलीकृत शुरुआती कार्यप्रवाह
  • सभी प्रॉम्प्ट — पूर्ण प्रॉम्प्ट सूची

रिलीज़ इतिहास

  • पूर्ण चेंजलॉग - सभी संस्करण रिलीज़ नोट्स
  • रिलीज़ नोट्स - विस्तृत रिलीज़ दस्तावेज़ीकरण

🐳 हेडलेस सर्वर (Docker)

GhidraMCP में ग्राफिकल यूज़र इंटरफ़ेस (GUI) के बिना स्वचालित विश्लेषण के लिए एक हेडलेस सर्वर मोड शामिल है।

Docker के साथ त्वरित प्रारंभ```bash

Build and run

docker-compose up -d ghidra-mcp

Test connection

curl http://localhost:8089/check_connection

Connection OK - GhidraMCP Headless Server v5.17.0

root@kitploit:~
### हेडलेस API कार्यप्रवाह```bash
# 1. Load a binary
curl -X POST -d "file=/data/program.exe" http://localhost:8089/load_program

# 2. Run auto-analysis (identifies functions, strings, data types)
curl -X POST http://localhost:8089/run_analysis

# 3. List discovered functions
curl "http://localhost:8089/list_functions?limit=20"

# 4. Decompile a function
curl "http://localhost:8089/decompile_function?address=0x401000"

# 5. Get metadata
curl http://localhost:8089/get_metadata

मुख्य हेडलेस एंडपॉइंट्स

एंडपॉइंटविधिविवरण
/load_programPOSTविश्लेषण के लिए बाइनरी फ़ाइल लोड करें
/run_analysisPOSTGhidra स्वचालित-विश्लेषण चलाएँ
/list_functionsGETसभी खोजे गए फ़ंक्शन सूचीबद्ध करें
/list_exportsGETनिर्यातित प्रतीक सूचीबद्ध करें
/list_importsGETआयातित प्रतीक सूचीबद्ध करें
/decompile_functionGETफ़ंक्शन को C कोड में डीकंपाइल करें
/create_functionPOSTपते पर फ़ंक्शन बनाएँ
/get_metadataGETप्रोग्राम मेटाडेटा प्राप्त करें
/create_projectPOSTGhidra प्रोजेक्ट बनाएँ
/list_analyzersGETउपलब्ध विश्लेषक सूचीबद्ध करें
/server/statusGETGhidra सर्वर कनेक्शन जाँचें

कॉन्फ़िगरेशन

Docker के लिए पर्यावरण चर:

  • GHIDRA_MCP_PORT - सर्वर पोर्ट (डिफ़ॉल्ट: 8089)
  • GHIDRA_MCP_BIND_ADDRESS - बाइंड पता (डिफ़ॉल्ट: Docker में 0.0.0.0)
  • JAVA_OPTS - JVM विकल्प (डिफ़ॉल्ट: -Xmx4g -XX:+UseG1GC)

🤝 योगदान

विस्तृत योगदान दिशानिर्देशों के लिए CONTRIBUTING.md देखें।

त्वरित आरंभ

  1. रिपॉजिटरी को फ़ोर्क करें
  2. एक फ़ीचर ब्रांच बनाएँ (git checkout -b feature/amazing-feature)
  3. अपने परिवर्तन बनाएँ और परीक्षण करें (mvn clean package assembly:single -DskipTests या GHIDRA_INSTALL_DIR=/path/to/ghidra gradle buildExtension)
  4. आवश्यकतानुसार दस्तावेज़ीकरण अपडेट करें
  5. अपने परिवर्तन कमिट करें (git commit -m 'Add amazing feature')
  6. ब्रांच पर पुश करें (git push origin feature/amazing-feature)
  7. एक पुल अनुरोध खोलें

📄 लाइसेंस

यह प्रोजेक्ट अपाचे लाइसेंस 2.0 के तहत लाइसेंस प्राप्त है - विवरण के लिए LICENSE फ़ाइल देखें।

🏆 उत्पादन स्थिति

मीट्रिकमान
संस्करण5.17.0
MCP उपकरण249 पूरी तरह से लागू
GUI एंडपॉइंट्स196 (GhidraMCPPlugin)
हेडलेस एंडपॉइंट्स195 (GhidraMCPHeadlessServer)
संकलन✅ 100% सफलता
बैच दक्षता93% API कॉल में कमी
एआई वर्कफ़्लो7 सिद्ध दस्तावेज़ीकरण वर्कफ़्लो
Ghidra स्क्रिप्ट्सस्वचालन स्क्रिप्ट्स शामिल
दस्तावेज़ीकरणAI प्रॉम्प्ट्स के साथ व्यापक

संस्करण इतिहास और रिलीज़ नोट्स के लिए CHANGELOG.md देखें।

🙏 आभार

यह प्रोजेक्ट मूल रूप से अगस्त 2025 में LaurieWired/GhidraMCP से व्युत्पन्न हुआ था और तब से इसे काफी हद तक फिर से लिखा और विस्तारित किया गया है। हम प्रारंभिक बिंदु के रूप में LaurieWired के मूल कार्य को स्वीकार करते हैं। लाइसेंस एट्रिब्यूशन के लिए NOTICE देखें।

👥 योगदानकर्ता

इस प्रोजेक्ट को समर्पित योगदानकर्ताओं के कार्य से लाभ हुआ है:

मुख्य योगदानकर्ता

@heeen — महत्वपूर्ण योगदान:

  • क्रॉस-बाइनरी तुलना के लिए फ़ज़ी फ़ंक्शन मिलान और संरचित डिफ़ (#13)
  • स्क्रिप्ट निष्पादन में सुधार और बग फिक्स (#12)
  • नए API एंडपॉइंट: save_program, exit_ghidra, delete_function, create_memory_block, run_script_inline (#11)
  • आर्किटेक्चरल दृष्टि: एनोटेशन-संचालित डिज़ाइन, UDS ट्रांसपोर्ट, Python ब्रिज ऑप्टिमाइज़ेशन प्रस्ताव

@huehuehuehueing — महत्वपूर्ण योगदान:

  • पता-स्थान उपसर्ग समर्थन — संपूर्ण एंडपॉइंट सतह पर पता पार्सिंग में <space>:<hex> सिंटैक्स (जैसे, mem:1000, code:ff00) जोड़ा गया, जिससे एम्बेडेड फर्मवेयर जैसे मल्टी-स्पेस लक्ष्यों को अनलॉक किया गया (#84, #65 बंद)

  • वैकल्पिक program पैरामीटर + आवश्यक-पैराम स्कीमा फिक्स — हर एंडपॉइंट पर program को समझदार currentProgram फ़ॉलबैक के साथ वैकल्पिक बनाया गया, और कई आवश्यक-बनाम-वैकल्पिक स्कीमा बग्स को ठीक किया गया जो कैटलॉग को विरासत में मिले थे (#92)

  • #44 (डेटा-प्रकार / एनम टूल्स) को बीज दिया — वह मुद्दा जिसने v5.0 एनम + स्ट्रक्ट प्रवर्तन परत को प्रेरित किया

  • Ghidra टीम - अविश्वसनीय रिवर्स इंजीनियरिंग प्लेटफ़ॉर्म के लिए

  • मॉडल कॉन्टेक्स्ट प्रोटोकॉल - मानकीकृत AI एकीकरण ढांचे के लिए

  • योगदानकर्ता - परीक्षण, प्रतिक्रिया और सुधारों के लिए


🔗 संबंधित परियोजनाएँ

  • re-universe — बड़े पैमाने पर बाइनरी समानता विश्लेषण के लिए Ghidra BSim PostgreSQL प्लेटफ़ॉर्म। AI-संचालित रिवर्स इंजीनियरिंग वर्कफ़्लो के लिए GhidraMCP के साथ पूरी तरह से मेल खाता है।
  • cheat-engine-server-python — गतिशील मेमोरी विश्लेषण और डीबगिंग के लिए MCP सर्वर।

एंटरप्राइज़-ग्रेड विश्वसनीयता और व्यापक बाइनरी विश्लेषण क्षमताओं के साथ उत्पादन परिनियोजन के लिए तैयार।

टूल डाउनलोड करें