mobile-re-mcp (Python)
The dynamic half of mobile-re-mcp: an MCP server that lets an AI agent drive adb, Frida, mitmproxy, apktool and jadx against a test device. The npm package of the same name does read-only static analysis of APK and IPA files. Use that one first and this one when you need the app running.
Install
pip install "mobile-re-mcp[all]"
The base install is only the MCP server. Extras add the heavy tools: frida, static (androguard, apkid, apkleaks), network (mitmproxy), analysis (quark-engine). Missing tools are reported by check_tools instead of crashing.
The command is mobile-re-mcp-py so it does not clash with the npm command mobile-re-mcp.
claude mcp add mobile-re-py -- mobile-re-mcp-py
Other clients: command mobile-re-mcp-py, no arguments (stdio).
Tools
About 55 tools in six groups: static (apktool, jadx, apkid, apkleaks, androguard), Frida (spawn, attach, inject, memory dump), device (adb, scrcpy), network (mitmproxy, HAR export), patching (smali edits, frida-gadget injection, signing) and native/Flutter/Unity (strings, exports, disassembly, Blutter, Il2CppDumper). check_tools shows what is installed.
Safe use
This server can run commands on your phone and your computer, so treat its tools as dangerous.
- Use stdio.
--transport sselistens on 127.0.0.1 only. Any other--hostneedsMOBILE_RE_MCP_TOKENand the client must send it as a bearer token. - Set
MOBILE_RE_MCP_ALLOWED_DIRS(:-separated) to keep file arguments inside your workspace. Paths into~/.ssh,~/.config/gh, shell rc files and similar are always refused. - Turn tools off with
MOBILE_RE_MCP_DISABLE_TOOLS=adb_shell,adb_push,adb_pull. Better still, set those tools to ask first in your client. install_toolis off unlessMOBILE_RE_MCP_ALLOW_INSTALL=1.mobile-re-mcp-py --setupstill downloads the pinned tools into~/toolsfor you.- mitmproxy listens on 127.0.0.1 only. Run
adb reverse tcp:8080 tcp:8080and point the device proxy at 127.0.0.1:8080. - Analyze untrusted apps in a VM. Their strings and symbol names end up in the agent's context.
Files
Target notes, captures and scratch files live in ~/.local/share/mobile-re-mcp (MOBILE_RE_MCP_HOME to change). Your own settings go in ~/.config/mobile-re-mcp/config.toml. Drop your own Frida scripts in ~/.local/share/mobile-re-mcp/frida_scripts; no scripts ship with the package.
Credits
Derived from mobile-security-mcp 0.1.4 (MIT). See NOTICE.md. Licensed MIT.
Metadata
Release files for mobile-re-mcp 1.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| mobile_re_mcp-1.2.0.tar.gz | 68.6 kB | With provenance | Details for mobile_re_mcp-1.2.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| mobile_re_mcp-1.2.0-py3-none-any.whl | Python 3 | none | any | Details for mobile_re_mcp-1.2.0-py3-none-any.whl |
Total release size: 152.3 kB
Release files / mobile_re_mcp-1.2.0.tar.gz
| Download URL | mobile_re_mcp-1.2.0.tar.gz |
|---|---|
| Size | 68.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2647ac24a7fa3c68e435dbb5d9c07b27dc2619e69a55fb94e84eee9a0fc93f16
|
|
BLAKE2b-256 checksum How to use checksums |
f5eb32eaa592a0c2312a58fabd0d2129ee7e7fe96014db3ceffc5581b32a12df
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 2, 2026.
Transparency logRelease files / mobile_re_mcp-1.2.0-py3-none-any.whl
| Download URL | mobile_re_mcp-1.2.0-py3-none-any.whl |
|---|---|
| Size | 83.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
61f975e9fe36271bbe3c8d81eb448cd03af4282dcea9cc36e6b32bd46999b600
|
|
BLAKE2b-256 checksum How to use checksums |
646c5e4ece021b307dbf78737e6e4c34756c6cdc421c5163170bb07da08bb8d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 2, 2026.
Transparency logSecurity for mobile-re-mcp 1.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for mobile_re_mcp-1.2.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 2, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.