Skip to main content

MCP server integration for JEB Decompiler (Official API)

Project description

jeb-mcp

Python 版本 Build and publish PyPI 下载量

jeb-mcp

JEB Pro 的 MCP 集成服务,用于让 MCP 客户端通过标准工具接口调用 JEB Pro 的反编译、搜索、重命名、脚本执行等能力。

项目由两部分组成:

  • JEB 插件脚本MCP.py 放在 JEB scripts 目录中运行,在 JEB 内启动本地 JSON-RPC 服务。
  • Python MCP 服务:连接 MCP 客户端和 JEB 插件,支持 stdioHTTPSSE

目录

功能特性

  • JEB 能力接入:通过 MCP 工具调用 JEB Pro,便于在 AI 编程工具中辅助逆向分析。
  • 多种传输方式:支持 stdioHTTPSSE,可适配 Claude Code、Cline、RooCode、Codex 等客户端。
  • 插件路径查询:提供 plugin-path 命令,方便定位需要复制到 JEB scripts 目录的 MCP.py
  • 源码与发布包两种用法:既可以通过 uvx jeb-mcp 直接使用发布包,也可以在源码仓库中通过 uv run jeb-mcp 调试。
  • 规则文件随包发布MCP.pyrules/ 会随 Python 包一起发布,避免手动整理插件依赖。

环境要求

MCP.py 由 JEB 内置的 Jython 运行;Python 版本要求只针对外部 MCP 服务。

项目结构

.
├── pyproject.toml
├── README.md
├── sample_cline_mcp_settings.json
├── antigravity_mcp_settings.json
└── src/
    └── jeb_mcp/
        ├── __init__.py
        ├── cli.py
        ├── MCP.py
        ├── remote_server.py
        ├── server.py
        ├── server_generated.py
        └── rules/

项目使用标准 src/ 布局。

使用说明

安装 JEB 插件

如果使用已发布的包,先查看包内 MCP.py 的路径:

uvx jeb-mcp plugin-path

如果从源码运行,在仓库根目录执行:

uv run jeb-mcp plugin-path

把输出路径对应的 MCP.py 复制到 JEB scripts 目录,然后在 JEB 中运行:

File -> Scripts -> Scripts selector... -> MCP.py

JEB 日志中应出现:

[MCP] Plugin loaded
[MCP] Plugin running
[MCP] Server started at http://127.0.0.1:16161

stdio 模式

适用于由客户端直接拉起 MCP 子进程的场景,例如 Claude Code、Cline、RooCode。

发布包:

uvx jeb-mcp

源码:

uv run jeb-mcp

客户端配置示例:

{
  "mcpServers": {
    "jeb": {
      "command": "uvx",
      "args": [
        "jeb-mcp"
      ]
    }
  }
}

HTTP 模式

适用于通过 URL 接入 MCP 服务的客户端。默认地址是 http://127.0.0.1:16160/mcp

发布包:

uvx jeb-mcp remote

源码:

uv run jeb-mcp remote

Codex 示例:

codex mcp add jeb --url http://127.0.0.1:16160/mcp

配置文件示例:

[mcp_servers.jeb]
url = "http://127.0.0.1:16160/mcp"

SSE 模式

旧客户端如果只支持 SSE,可以指定传输方式:

uvx jeb-mcp remote --transport sse

常用参数:

uvx jeb-mcp remote --host 127.0.0.1 --port 16160 --path /mcp

连接远程 JEB 插件

Python MCP 服务默认连接 localhost:16161 上的 JEB 插件。需要改地址时:

JEB_MCPC_HOST=127.0.0.1 JEB_MCPC_PORT=16161 uvx jeb-mcp remote

不要把 jeb-mcp remote 直接暴露到公网;服务本身没有鉴权。

验证与构建

先在 JEB 中启动 MCP.py,再从 MCP 客户端调用 check_connection。成功时返回:

Successfully connected to JEB Pro

本地编译检查:

python -m compileall -q src

构建发布包:

uv build

发布流程会在 Python 3.11 和 Python 3.14 上做编译检查,并使用 Python 3.14 构建发布包。

常见问题

Q: check_connection 连接失败怎么办?

A: 先确认 JEB 中已经运行 MCP.py,并且日志中出现 Server started at http://127.0.0.1:16161。如果端口被占用,需要释放端口后重新运行脚本。

Q: Python 版本要求是否影响 JEB 插件?

A: 不影响。MCP.py 由 JEB 内置的 Jython 执行,Python 3.11 及以上只用于外部 MCP 服务。

Q: 应该使用 stdio 还是 HTTP?

A: 如果客户端支持直接拉起 MCP 子进程,优先使用 stdio。如果客户端只支持通过 URL 连接,使用 HTTP。旧客户端只支持 SSE 时再使用 SSE

致谢

感谢原作者仓库:https://github.com/flankerhqd/jebmcp

免责声明

  • 本项目仅供学习交流、逆向分析辅助和安全研究使用。
  • 使用者应确保自己拥有分析目标的合法授权,并自行承担使用本项目带来的风险和责任。
  • 请勿将未加鉴权的远程 MCP 服务暴露到公网环境。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jeb_mcp-0.1.0.tar.gz (81.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jeb_mcp-0.1.0-py3-none-any.whl (80.2 kB view details)

Uploaded Python 3

File details

Details for the file jeb_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: jeb_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 81.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for jeb_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e7349bc1422a2647c667ce341e80716c76ad32853e9d94b5fcbb4a23c4f36cc8
MD5 84b9188c5df7e1fc5888b951a5beb300
BLAKE2b-256 64d93c5f38b836203e3f5a15c01e3c781d01230746edf0c30f9b479988f3baa3

See more details on using hashes here.

Provenance

The following attestation bundles were made for jeb_mcp-0.1.0.tar.gz:

Publisher: release.yml on xihan123/jebmcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jeb_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: jeb_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 80.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for jeb_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0c2138bfbfafa741c6c4280a1296da45c6590a242296bec0021af0743229fd21
MD5 a8e80182c0e36e24e7b16b02e1663db7
BLAKE2b-256 51f952496f888482361f4cb9eda091e2152998569a08b0cb57e11398ae15eb9c

See more details on using hashes here.

Provenance

The following attestation bundles were made for jeb_mcp-0.1.0-py3-none-any.whl:

Publisher: release.yml on xihan123/jebmcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page