About mfcopy
mfcopy is a specialized command-line tool designed for the secure transfer of files and folder structures between Mediaflow and a local computer. It supports both the uploading of content to Mediaflow and the downloading of content to a local directory. The tool utilizes Mediaflow’s standard API via HTTPS, ensuring all data traffic is encrypted using TLS for maximum security.
As a command-line interface (CLI) application, mfcopy does not have a graphical user interface (GUI). It is built for advanced users and can be utilized for:
Manual One-Time Runs: Authenticating with a username and password.
Automated Scheduling: Running on servers using specified account credentials or a security token.
The tool is optimized for managing entire directories and directory structures rather than individual files.
Important Note on Metadata: When downloading files, the tool retrieves the original file exactly as it was when it was first uploaded. Additional metadata updated within Mediaflow—such as descriptions, keywords, alt-text, history, usage data, license information, or GDPR status—is not included in the download.
Download
Windows (64 bit): mfcopy_x64.zip (5 MB)
Mac (64 bit Intel/Silicon): mfcopy.zip (4,7 MB)
Linux (64 bit): mfcopy-linux.zip (4,9 MB)
How to use mfcopy
Navigate to the directory where the tool is located. Then type ./mfcopy on Mac/Linux or mfcopy / mfcopy.exe on Windows to run it.
On Mac: If you add mfcopy to your path, you can start it from anywhere on your computer. However, it works just as well to run it by typing
./mfcopyin the directory where you placed the executable.
Standard command for uploading a folder of files from Mac/Linux:
mfcopy upload -u username "/Users/LocalUser/Pictures" "/Images/Pictures"Windows:
mfcopy upload -u username "C:\Pictures" "/Images/Pictures"
Note that the path in Mediaflow must begin with a forward slash (/).
Standard command for downloading a folder of files from Mac/Linux:
mfcopy download -u username "/Images/Pictures" "/Users/LocalUser/Pictures"Windows:
mfcopy download -u username "/Images/Pictures" "C:\Pictures"
Flags
These flags function for both upload and download.
-u [username]: Specifies your username in Mediaflow.
-p [password]: Specifies the password directly in the command (useful for scripting).
-t [token]: Used instead of a password if you have requested a token from us (support@mediaflow.com).
-r: Includes all subfolders recursively.
-ignore-folders: Includes files from all subfolders but places them in the same destination folder without creating subdirectories.
-ignore-files: Creates the folder structure only, without uploading or downloading any actual files.
-overwrite: Overwrites existing files on your local disk if the filename already exists during download. During upload, the existing file in Mediaflow is kept as an inactive version of the new file (they are merged).
Specific to Download:
-rename: If the file already exists on your local computer, the old file is kept and the new one is renamed (e.g., image.jpg becomes image_1.jpg).
On the way, not included in the current version:
-id-prefix: Adds the unique ID from Mediaflow as a prefix to the filename (e.g., 12345_image.jpg).
Mentions
Downloading files with -id-prefix
- First run without
-id-prefix: saves file as photo.jpg
- Second run with
-id-prefix: builds the path as 123_photo.jpg, checks if 123_photo.jpg exists, it doesn't, so it downloads again.
The old photo.jpg is left on disk and a new 123_photo.jpg is created alongside it. The -overwrite flag is irrelevant here because the tool doesn't see photo.jpg as the "same" file since they have different names.
This isn't a bug, it's just how it works. The tool only compares by local filename, not by remote file ID or a checksum. This could surprise the user who expects -id-prefix to retroactively rename existing files.
Downloading files with -id-prefix + -rename
If a file was downloaded with -id-prefix (e.g. 123_photo.jpg) and you later run again without -id-prefix, the tool treats photo.jpg as the filename. It won't detect 123_photo.jpg as an existing copy, so you may end up with both files on disk. -rename and -overwrite only apply to the filename pattern used in that particular run.