
ipatool
Command-line tool to search the App Store and download iOS and macOS app packages.
- Stars
- 12.1k
- Forks
- 1.1k
- Licence
- MIT
- Language
- Go
- Last update
- 12 days ago
- Type
- CLI
What it is
ipatool is a command-line program that lets you search Apple's App Store for iOS, iPadOS, tvOS, watchOS, visionOS, and macOS apps, and download their .ipa or macOS .pkg installer files. It can also list your owned purchases and the available versions of an app. It requires an Apple Account already set up for the App Store.
- Search the App Store for apps from a terminal with the search command
- List the available versions of an app with list-versions
- Download an app's .ipa or macOS .pkg package with download
- Check metadata for a specific app version with get-version-metadata
- Output results as JSON with the --format json flag for use in scripts
Great for
- Developers who want to script App Store searches or downloads from the terminal
- Security researchers examining app packages, as the topics suggest
- People who need to fetch a specific app version from the command line
- Users of AI assistants who want App Store tools through the built-in MCP server
Not ideal for
- People who just want to install apps on their own device; the App Store app already does this
- Anyone without an Apple Account configured for the App Store, since the README lists this as a requirement
- Users who prefer a graphical interface, since this is a command-line tool
How to get it
- 1
Install with a package manager
You'll need: Homebrew (macOS) · An Apple Account already configured to use the App Store
Install on macOS with Homebrew
brew install ipatoolBuild from source with Go
go build -o ipatool - 2
Run it
- Install ipatool using Homebrew on macOS, or download a release from GitHub on Linux or Windows.
- Run ipatool --help to see the available commands.
- Run ipatool auth login to sign in with your Apple Account.
- Run ipatool search followed by an app name to find an app.
- 3
Get the most out of it
- Use --format json for machine-readable output in scripts.
- Use --non-interactive when running in an automated environment.
- Run ipatool mcp after logging in to connect the tool to an MCP-compatible AI client over stdio.
- Use --verbose to see more detailed logs when troubleshooting.
Downloads
Strengths
- Free and open source under the MIT license
- Covers many Apple platforms, including macOS .pkg packages
- Offers JSON output and a non-interactive mode for automation
Trade-offs
- Requires an Apple Account, and the README gives little detail on how account authentication works
- The README does not explain any limits or terms-of-service constraints on downloading apps
- Topics include reverse-engineering, so downloads may be used in ways that conflict with Apple's policies; check your own use
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| ipatool (this) | 12.1k | CLI | intermediate | 12 days ago | Developers who want to script App Store searches or downloads from the terminal |
| CodeEdit | 23.1k | App | beginner | 20 days ago | Developers on a Mac who work on non-Apple projects and want a native macOS editor |
| SDWebImage | 25.6k | Library | intermediate | 7 months ago | iOS or macOS app developers who need to show remote images in lists or grids |
| Kingfisher | 24.4k | Library | beginner | 4 days ago | iOS or macOS developers who need to show remote images in lists or detail screens |
| SwifterSwift | 15.3k | Library | beginner | 4 days ago | Swift developers building iOS or macOS apps who want common helper methods ready to use |
| SVProgressHUD | 12.4k | Library | beginner | 8 months ago | iOS developers who need a quick loading indicator for a blocking task |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.