About mydatapass
mydatapass-verify provides the package specification and standalone tools for recipients and security teams to decrypt and verify MyDataPass exports. Verification runs offline without contacting MyDataPass servers.
Key features
- 01Offline browser decryption and verification
- 02Python command-line verifier
- 03AES-256-GCM decryption
- 04SHA-256 integrity check
- 05Public export format specification
Use cases
- 01Verify a received data export offline
- 02Review export encryption and verification methods
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://mcp.mydatapass.app/api/mcpclaude mcp add --transport http mydatapass-mydatapass https://mcp.mydatapass.app/api/mcp{"mcpServers":{"mydatapass-mydatapass":{"type":"http","url":"https://mcp.mydatapass.app/api/mcp"}}}Open in Cursor{"servers":{"mydatapass-mydatapass":{"type":"http","url":"https://mcp.mydatapass.app/api/mcp"}}}Open in VS Code{"mcpServers":{"mydatapass-mydatapass":{"type":"http","url":"https://mcp.mydatapass.app/api/mcp"}}}{"mcpServers":{"mydatapass-mydatapass":{"serverUrl":"https://mcp.mydatapass.app/api/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
5This tool takes no parameters.
Details
From the project READMEmydatapass-verify
Independently verify a MyDataPass export — without trusting us.
MyDataPass delivers customer data offboarding exports as encrypted, audit-logged packages. This repository contains everything a recipient (or their security team) needs to decrypt and verify an export with zero MyDataPass involvement: the package format specification and two standalone verifiers.
Why this repo exists
Our security model does not rely on secrecy of the format — it relies on the strength of the passphrase and standard, auditable cryptography. Publishing the format and the verification tooling means:
- Your security team can review exactly how packages are encrypted before signing anything.
- Recipients can decrypt and verify integrity offline, with no MyDataPass servers involved.
- If MyDataPass disappeared tomorrow, every delivered package would remain fully recoverable with the passphrase and this tooling.
Transparency log: retention and closure commitment
Every signed certificate's SHA-256 fingerprint is appended to the public transparency log at mydatapass.app/transparency. The log holds hashes only, no customer data.
- Retention: each log entry is kept for at least 5 years from the date it was added, and for as long as MyDataPass operates.
- If MyDataPass ceases operations: we will publish a final copy of the complete log in a public archive (this repository, or a public archive linked from it), so every certificate remains checkable against the log without us.
The full certificate record (with the names of the parties) is kept for a fixed period per service and then reduced to its hash; the periods are in our Terms (§ 8) and DPA (Annex 1). A signed certificate stays verifiable offline with its signature, qualified time stamp and anchor, so keep your own copy.
What's in an export package
A MyDataPass package is a JSON file with four fields:
| Field | Description |
|---|---|
ciphertext_b64 | AES-256-GCM ciphertext, Base64 |
iv_b64 | 12-byte random nonce, Base64 |
salt_b64 | 16-byte random KDF salt, Base64 |
hash_sha256 | SHA-256 hex digest of the original plaintext |
Encryption: AES-256-GCM. Key derivation: PBKDF2-HMAC-SHA256, 310,000 iterations, 32-byte key. Full details in docs/export-format.md.
Verify an export
Option A — browser, fully offline
Open verify.html in any modern browser (works from file://, no network requests are made). Select the package file, enter the passphrase, and the page decrypts via WebCrypto and checks the SHA-256 digest locally.
Option B — command line
Requires Python 3.9+ and the cryptography package:
pip install cryptography
python verify.py package.json --out exported-data.bin
The script prompts for the passphrase, decrypts, and confirms the plaintext digest matches hash_sha256. Exit code 0 means the package is authentic and intact; any tampering with the ciphertext fails GCM authentication.
What this repo is NOT
This is not the MyDataPass product source code. It is the public, auditable surface: the delivery format, the verification tooling, and our security model. Questions or responsible disclosure: [email protected].
License
MIT — see LICENSE.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.