Skip to main content

Strip AI metadata from images and optionally inject camera EXIF or Canva metadata

Project description

Image Meta Data Manipulator

Strip AI metadata from images (ChatGPT, DALL-E, Midjourney, Stable Diffusion, ComfyUI, etc.) and optionally inject realistic camera EXIF or design-app metadata (Photoshop, Procreate, Canva, etc.).

Installation

pip install metascrub

After installation, the mtsb command is available globally from any terminal.

To update:

pip install --upgrade metascrub

Commands

Command Description
scan Scan folder interactively — pick images to process
info Show ALL metadata for an image (full details)
status Quick check: is this image AI-generated?
clean Strip AI metadata and save to output folder

Usage

# Interactive scan — shows numbered table, pick an image, then choose action
mtsb scan

# Show ALL metadata (50+ fields: AI, C2PA manifest, EXIF, PNG chunks, etc.)
mtsb info image.png

# Quick check — AI or not?
mtsb status image.png

# Strip AI metadata — always saves to output/ folder
mtsb clean image.png

# Clean with custom output name
mtsb clean image.png -n my_clean_image

# Clean + inject realistic camera EXIF
mtsb clean image.png --organic

# Clean + inject design-app metadata (Photoshop/Procreate style)
mtsb clean image.png --design

Interactive Scan Flow

> mtsb scan
  # │ File                  │ AI?  │ Tool
  ───┼──────────────────────┼──────┼─────────────
  1  │ ChatGPT ...png       │ YES  │ ChatGPT (OpenAI)
  2  │ DSC00065.jpg         │ NO   │ —
  3  │ ai_art.png           │ YES  │ Midjourney

  Select # (or 'a' all, 'q' quit): 1

  ── image.png ──
  [1] Info — show ALL metadata
  [2] Clean — strip AI metadata → output/ folder
  [3] Data Manipulate
       [A] Auto Organic — inject realistic camera EXIF
       [C] Custom Edit — type all fields (make, model, GPS, etc.)
       [D] Add Design App — Photoshop/Procreate/Canva style
  [4] Back to scan results
  [5] Exit

Cancel / go back anytime

  • Type b or c at any filename prompt to cancel and return to the previous menu
  • Press Ctrl+C at any prompt to cancel and go back
  • Press q at the scan selection to exit entirely

Features

Deep C2PA Manifest Parsing

Images from ChatGPT, DALL-E, Adobe Firefly, and other C2PA-compliant tools embed a signed manifest. mtsb info extracts and displays:

  • Software agent (e.g. gpt-image → "ChatGPT (OpenAI)")
  • Claim generator (e.g. OpenAI Media Service API)
  • Actions (created, converted, watermarked)
  • Timestamps, certificates, signatures, and more

Accurate AI Tool Detection

Tool Detected As
ChatGPT / DALL-E ChatGPT (OpenAI)
Midjourney Midjourney
Stable Diffusion (A1111) Stable Diffusion (A1111)
ComfyUI ComfyUI
Adobe Firefly Adobe Firefly
Canva Not AI — treated as human editing app

Data Manipulation

  • Auto Organic: Random realistic camera profile (Canon, Nikon, Sony, Fujifilm, etc.) with matching shooting settings
  • Custom Edit: Manually type every EXIF field — make, model, lens, ISO, aperture, shutter speed, GPS, description, artist, copyright
  • Design App: Inject metadata mimicking Photoshop, Procreate, Clip Studio Paint, Krita, GIMP, Canva, etc.

Supported Formats

  • PNG (including C2PA, text chunks, and EXIF)
  • JPEG / JPG
  • WebP

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

metascrub-0.1.0.tar.gz (33.9 kB view details)

Uploaded Source

Built Distribution

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

metascrub-0.1.0-py3-none-any.whl (32.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: metascrub-0.1.0.tar.gz
  • Upload date:
  • Size: 33.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for metascrub-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7dc93f5a1f5686a1a1a6dd7cdb478862c622c778c14518dce9a91a921b45abbc
MD5 478fb00ba3da3c227f27b1f06701625e
BLAKE2b-256 37b8a50548cc3a8e85ab026a477b268252cfdaa65f4bd038a3bab59038a8acfb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: metascrub-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 32.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for metascrub-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cb3830013a7886fcdfe4cc438e274d6e98089fe83c7e698f575f5b726786ad75
MD5 786508860976c97fb65301c241ed3d51
BLAKE2b-256 211b3a51c6137a5b7bb90082489d7ecfb258a0da00d72650b406e1bd28d5962e

See more details on using hashes here.

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