This repository was archived by the owner on Nov 16, 2025. It is now read-only.
File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ # Generated by https://smithery.ai. See: https://smithery.ai/docs/build/project-config
2+ # Start from official Python image
3+ FROM python:3.10-slim
4+
5+ # Set working directory
6+ WORKDIR /app
7+
8+ # Copy requirements and install dependencies
9+ COPY requirements.txt .
10+ RUN pip install --no-cache-dir -r requirements.txt
11+
12+ # Copy application code
13+ COPY bridge_mcp_ghidra.py .
14+
15+ # Expose nothing (stdio by default), user can map ports for SSE
16+
17+ # Default entrypoint (overridden by MCP start command)
18+ ENTRYPOINT ["python" , "bridge_mcp_ghidra.py" ]
Original file line number Diff line number Diff line change @@ -25,6 +25,14 @@ MCP Server + Ghidra Plugin
2525
2626# Installation
2727
28+ ### Installing via Smithery
29+
30+ To install GhidraMCP for Claude Desktop automatically via [ Smithery] ( https://smithery.ai/server/@LaurieWired/GhidraMCP ) :
31+
32+ ``` bash
33+ npx -y @smithery/cli install @LaurieWired/GhidraMCP --client claude
34+ ```
35+
2836## Prerequisites
2937- Install [ Ghidra] ( https://ghidra-sre.org )
3038- Python3
Original file line number Diff line number Diff line change 1+ # Smithery configuration file: https://smithery.ai/docs/build/project-config
2+
3+ startCommand :
4+ type : stdio
5+ configSchema :
6+ # JSON Schema defining the configuration options for the MCP.
7+ type : object
8+ required : []
9+ properties :
10+ ghidraServer :
11+ type : string
12+ default : http://127.0.0.1:8080/
13+ description : URL of the Ghidra HTTP server
14+ transport :
15+ type : string
16+ default : stdio
17+ description : Transport protocol for MCP
18+ mcpHost :
19+ type : string
20+ default : 127.0.0.1
21+ description : Host for SSE transport
22+ mcpPort :
23+ type : number
24+ default : 8081
25+ description : Port for SSE transport
26+ commandFunction :
27+ # A JS function that produces the CLI command based on the given config to start the MCP on stdio.
28+ |-
29+ (config) => {
30+ const args = [];
31+ if (config.ghidraServer) {
32+ args.push("--ghidra-server", config.ghidraServer);
33+ }
34+ if (config.transport) {
35+ args.push("--transport", config.transport);
36+ }
37+ if (config.transport === "sse") {
38+ if (config.mcpHost) {
39+ args.push("--mcp-host", config.mcpHost);
40+ }
41+ if (config.mcpPort !== undefined) {
42+ args.push("--mcp-port", String(config.mcpPort));
43+ }
44+ }
45+ return {
46+ command : " python" ,
47+ args : ["bridge_mcp_ghidra.py", ...args],
48+ env : {}
49+ };
50+ }
51+ exampleConfig :
52+ ghidraServer : http://127.0.0.1:8080/
53+ transport : stdio
54+ mcpHost : 127.0.0.1
55+ mcpPort : 8081
You can’t perform that action at this time.
0 commit comments