Skip to content

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
Step-by-step guide: how to use ipatoolInstall, first run, examples, tips and FAQs

How to get it

  1. 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 ipatool

    Build from source with Go

    go build -o ipatool
  2. 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. 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

ProjectStarsTypeLevelUpdatedBest for
ipatool (this)12.1kCLIintermediate12 days agoDevelopers who want to script App Store searches or downloads from the terminal
CodeEdit23.1kAppbeginner20 days agoDevelopers on a Mac who work on non-Apple projects and want a native macOS editor
SDWebImage25.6kLibraryintermediate7 months agoiOS or macOS app developers who need to show remote images in lists or grids
Kingfisher24.4kLibrarybeginner4 days agoiOS or macOS developers who need to show remote images in lists or detail screens
SwifterSwift15.3kLibrarybeginner4 days agoSwift developers building iOS or macOS apps who want common helper methods ready to use
SVProgressHUD12.4kLibrarybeginner8 months agoiOS 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.