# ReVa (Reverse Engineering Assistant) MCP Server # Ghidra extension providing MCP server for AI-assisted reverse engineering # https://github.com/cyberkaida/reverse-engineering-assistant FROM eclipse-temurin:21-jdk-jammy AS builder ARG GHIDRA_VERSION=12.0.3 ARG GHIDRA_DATE=20260210 ENV DEBIAN_FRONTEND=noninteractive ENV GHIDRA_INSTALL_DIR=/opt/ghidra RUN apt-get update && apt-get install -y --no-install-recommends \ wget \ unzip \ && rm -rf /var/lib/apt/lists/* WORKDIR /build COPY . /build/reva RUN wget -q "https://github.com/NationalSecurityAgency/ghidra/releases/download/Ghidra_${GHIDRA_VERSION}_build/ghidra_${GHIDRA_VERSION}_PUBLIC_${GHIDRA_DATE}.zip" \ -O /tmp/ghidra.zip \ && unzip -q /tmp/ghidra.zip -d /opt \ && mv /opt/ghidra_${GHIDRA_VERSION}_PUBLIC /opt/ghidra \ && rm /tmp/ghidra.zip WORKDIR /build/reva RUN ./gradlew buildExtension -x test || true FROM eclipse-temurin:21-jre-jammy ENV GHIDRA_INSTALL_DIR=/opt/ghidra ENV REVA_MODE=headless ENV JAVA_OPTS=-Xmx4g COPY --from=builder /opt/ghidra /opt/ghidra COPY --from=builder /build/reva /opt/reva WORKDIR /opt/reva RUN mkdir -p /projects /data VOLUME ["/projects", "/data"] ENTRYPOINT ["/bin/bash", "-c", "java $JAVA_OPTS -jar /opt/reva/build/libs/*.jar"]