Skip to main content

app_download

This tool on every surface: CLI · MCP · Python · JavaScript · Go · Java · .NET

Bring back a file from where the device keeps downloads — Android's shared Download folder, or on iOS an app's own Documents — to check what an app saved. With no name, lists what the folder holds. With a path, saves it there; without one, the file comes back in the answer, base64. The copy's size is read back against the device's, a real iPhone's included. With device_path, a file or a whole folder comes back from a path you name instead — the same paths app_upload takes — and a folder comes back only to a path on this machine that does not exist yet.

Read-only: readOnlyHint is true.

Arguments​

NameTypeRequiredWhat it is
appstringiOS: the bundle id whose Documents — or, with device_path, whose data container — to read. Defaults to the app in front. Android: with device_path, the package whose private data the path is in; otherwise ignored.
devicestringDevice serial to target, e.g. "emulator-5554". Omit when only one device is running.
device_pathstringA file or folder on the device to bring back, in full — instead of name. Android: absolute, or with app relative to that app's data folder. iOS: relative to the app's data container.
driverstring: uiautomator2, uiautomator, wdaDriver to use: "uiautomator2" (default for Android; fast, installs a server APK on first use), "uiautomator" (Android, installs nothing, slower, cannot type), or "wda" (WebDriverAgent: iOS simulators and iPhones).
namestringThe file's name in the folder. Omit to list the folder.
pathstringWhere to save it on this machine. Omit to have a file in the answer, base64; a folder needs a path that does not exist yet.

Examples​

Each is the arguments of a tools/call request; the first is shown whole.

Bring back a file an app saved​

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "app_download",
"arguments": {
"name": "mobium-report.txt",
"path": "report.txt"
}
}
}

On an Android 15 emulator the answer's text was:

downloaded mobium-report.txt from Download/mobium-report.txt to …/report.txt (44 bytes) — confirmed by the copy's size read back against the device's

The Files Demo's Download the report saved mobium-report.txt in the Download folder, and the line under it says how big and which save it was; mobium download brought that file back — on an Android 15 emulator

The Files Demo's Download the report saved mobium-report.txt in the Download folder, and the line under it says how big and which save it was; mobium download brought that file back — on an Android 15 emulator

List what the folder holds​

{}

On an Android 15 emulator the answer's text was:

the Download folder holds 1 file
mobium-report.txt 44 bytes 2026-09-29 03:41

Bring back a folder from a path on the device​

{
"device_path": "/sdcard/seed",
"path": "seed-copy"
}

On an Android 15 emulator the answer's text was:

downloaded seed from /sdcard/seed to …/seed-copy (a folder of 2 files, 8 bytes) — confirmed by each of its 2 files' sizes read back against the device's