Skip to main content
Yanked

This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.
Consider using release 2026.7.29 instead.
Reason given by maintainers: Incorrect calendar version number

Mobile Verification Toolkit

[!IMPORTANT] We recently merged the "v3" branch. This introduced breaking changes. If you relied on mvt output in other scripts They might have broken. More details: https://github.com/mvt-project/mvt/issues/757

Documentation Status CI Downloads

Mobile Verification Toolkit (MVT) is a collection of utilities to simplify and automate the process of gathering forensic traces helpful to identify a potential compromise of Android and iOS devices.

It has been developed and released by the Amnesty International Security Lab in July 2021 in the context of the Pegasus Project along with a technical forensic methodology. It continues to be maintained by Amnesty International and other contributors.

Note MVT is a forensic research tool intended for technologists and investigators. It requires understanding digital forensics and using command-line tools. This is not intended for end-user self-assessment. If you are concerned with the security of your device please seek reputable expert assistance.

Indicators of Compromise

MVT supports using public indicators of compromise (IOCs) to scan mobile devices for potential traces of targeting or infection by known spyware campaigns. This includes IOCs published by Amnesty International and other research groups.

Warning Public indicators of compromise are insufficient to determine that a device is "clean", and not targeted with a particular spyware tool. Reliance on public indicators alone can miss recent forensic traces and give a false sense of security.

Reliable and comprehensive digital forensic support and triage requires access to non-public indicators, research and threat intelligence.

Such support is available to civil society through Amnesty International's Security Lab or through our forensic partnership with Access Now’s Digital Security Helpline.

More information about using indicators of compromise with MVT is available in the documentation.

Installation

MVT can be installed from sources or from PyPI (you will need some dependencies, check the documentation):

pip3 install mvt

You can also install MVT from PyPI with uv. First, install uv:

curl -LsSf https://astral.sh/uv/install.sh | sh

Then install MVT as a command-line tool:

uv tool install mvt

For alternative installation options and known issues, please refer to the documentation as well as GitHub Issues.

Usage

MVT provides two commands mvt-ios and mvt-android. Check out the documentation to learn how to use them!

Shell completion

MVT can generate shell completion scripts for Bash, Zsh, and Fish:

mvt-ios completion
mvt-android completion

The commands print setup instructions by default. To generate a completion script directly, pass the shell name:

mvt-ios completion bash
mvt-android completion zsh

MVT only writes completion files or shell configuration when --install is passed. See the command completion documentation for details. Module-running check-* commands can load custom Python modules with --load-module PATH or from a folder set in MVT_CUSTOM_MODULES. See the development documentation for details.

License

The purpose of MVT is to facilitate the consensual forensic analysis of devices of those who might be targets of sophisticated mobile spyware attacks, especially members of civil society and marginalized communities. We do not want MVT to enable privacy violations of non-consenting individuals. In order to achieve this, MVT is released under its own license. Read more here.

Download files

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

Source Distribution

mvt-2026.6.29.tar.gz (139.7 kB view details)

Uploaded Source

Built Distribution

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

mvt-2026.6.29-py3-none-any.whl (222.1 kB view details)

Uploaded Python 3

File details

Details for the file mvt-2026.6.29.tar.gz.

File metadata

  • Download URL: mvt-2026.6.29.tar.gz
  • Upload date:
  • Size: 139.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for mvt-2026.6.29.tar.gz
Algorithm Hash digest
SHA256 ccae8b9def98af9ad39cd6f5c126f7eefeb5ffa3a2493161f413f797f449adad
MD5 809e88833023dbde18ce73405a27f938
BLAKE2b-256 077ea02115f52d896647f4aa849e483098571445ce4533f012ad1b079243650c

See more details on using hashes here.

Provenance

The following attestation bundles were made for mvt-2026.6.29.tar.gz:

Publisher: mvt.yml on mvt-project/release-workflows

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

File details

Details for the file mvt-2026.6.29-py3-none-any.whl.

File metadata

  • Download URL: mvt-2026.6.29-py3-none-any.whl
  • Upload date:
  • Size: 222.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for mvt-2026.6.29-py3-none-any.whl
Algorithm Hash digest
SHA256 a86aace6990e00f5ad427cbeedb031a7e40c24fcf335a75c4ad4c60e95c319b2
MD5 9f8855c363a9acde541b9bb744c767b0
BLAKE2b-256 cc3797ba26b68e5dade7df772bbd3a45152a8027addead8eaa1280f717253ebb

See more details on using hashes here.

Provenance

The following attestation bundles were made for mvt-2026.6.29-py3-none-any.whl:

Publisher: mvt.yml on mvt-project/release-workflows

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

Release history Release notifications | RSS feed

2026.7.29

2 files

This release

2026.6.29 This release

2 files

2026.5.12

2 files

2026.4.28

2 files

2.7.0

2 files

2.6.1

2 files

2.6.0

2 files

2.5.4

2 files

2.5.3

2 files

2.5.2

2 files

2.5.1

2 files

2.5.0

2 files

2.4.5

2 files

2.4.4

2 files

2.4.3

2 files

2.4.2

2 files

2.4.1

2 files

2.4.0

2 files

2.3.0

2 files

2.2.6

2 files

2.2.5

2 files

2.2.4

2 files

2.2.3

2 files

2.2.2

2 files

2.2.1

2 files

2.2

2 files

2.1.6

2 files

2.1.5

2 files

2.1.4

2 files

2.1.3

2 files

2.1.2

2 files

2.1.1

2 files

2.1

2 files

2.0.1

2 files

2.0

2 files

1.5.5

2 files

1.5.4

2 files

1.5.3

2 files

1.5.2

2 files

1.5.1

2 files

1.4.11

2 files

1.4.10

2 files

1.4.9

2 files

1.4.8

2 files

1.4.7

2 files

1.4.6

2 files

1.4.5

2 files

1.4.4

2 files

1.4.3

2 files

1.4.2

2 files

1.4.1

2 files

1.4.0

2 files

1.2.14

2 files

1.2.13

2 files

1.2.12

2 files

1.2.11

2 files

1.2.10

2 files

1.2.9

2 files

1.2.8

2 files

1.2.7

2 files

1.2.6

2 files

1.2.5

2 files

1.2.4

2 files

1.2.3

2 files

1.2.2

2 files

1.2.1

2 files

1.2.0

2 files

1.1.1

2 files

1.1.0

2 files

1.0.17

2 files

1.0.16

2 files

1.0.15

2 files

1.0.14

2 files

1.0.13

2 files

1.0.12

2 files

1.0.11

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page