| name | appstore-intel |
| description | Look up app details, ratings, reviews, and search the iOS App Store, Mac App Store, and Google Play. Use when the user asks about app ratings, wants to compare apps, or research a competitor's app store presence. No API key required. |
App Store Intelligence
Look up app details, ratings, reviews, and search the iOS App Store and Mac App Store using Apple's free iTunes Search & Lookup APIs. No API key required.
For Google Play, use web scraping via web_search and web_fetch.
When to Use
- User asks about an app's ratings or reviews
- User wants to compare apps in a category
- User wants to find apps by keyword
- User asks about a competitor's app store presence
- User wants app metadata (price, size, version, release notes)
API Overview — Apple iTunes Search API
Free. No authentication. No API key.
Two endpoints:
- Search:
https://itunes.apple.com/search
- Lookup:
https://itunes.apple.com/lookup
Rate Limit: ~20 calls per minute. Cache results for heavy usage.
Searching for Apps
Basic Search
https://itunes.apple.com/search?term=QUERY&country=COUNTRY&entity=software&limit=N
Use web_fetch to call this URL. Response is JSON.
Parameters
| Parameter | Description | Required | Values |
|---|
term | Search query (URL-encoded, + for spaces) | Yes | Any text |
country | Two-letter country code | Yes | us, gb, de, etc. |
entity | App type | No | software (iPhone), iPadSoftware, macSoftware |
media | Media type | No | software (default for apps) |
limit | Max results | No | 1–200 (default 50) |
lang | Language | No | en_us, ja_jp |
Example
https://itunes.apple.com/search?term=fitness+tracker&country=us&entity=software&limit=10
Looking Up Specific Apps
By App ID (Track ID)
https://itunes.apple.com/lookup?id=APP_ID&country=us
By Bundle ID
https://itunes.apple.com/lookup?bundleId=com.example.app&country=us
Multiple Apps at Once
https://itunes.apple.com/lookup?id=ID1,ID2,ID3&country=us
Response Format
Each result contains:
{
"trackId": 553834731,
"trackName": "App Name",
"bundleId": "com.example.app",
"sellerName": "Company Name",
"artistName": "Developer Name",
"price": 0.00,
"formattedPrice": "Free",
"currency": "USD",
"averageUserRating": 4.5,
"userRatingCount": 125000,
"averageUserRatingForCurrentVersion": 4.3,
"userRatingCountForCurrentVersion": 5000,
"contentAdvisoryRating": "4+",
"trackContentRating": "4+",
"primaryGenreName": "Health & Fitness",
"genres": ["Health & Fitness", "Lifestyle"],
"description": "Full app description...",
"releaseNotes": "What's new in this version...",
"version": "3.2.1",
"currentVersionReleaseDate": "2024-01-10T00:00:00Z",
"releaseDate": "2020-06-15T00:00:00Z",
"fileSizeBytes": "52428800",
"minimumOsVersion": "15.0",
"trackViewUrl": "https://apps.apple.com/us/app/...",
"artworkUrl512": "https://is1-ssl.mzstatic.com/...",
"screenshotUrls": ["url1", "url2"],
"supportedDevices": ["iPhone15,2", "iPad14,1"],
"languageCodesISO2A": ["EN", "FR", "DE"]
}
The response wrapper:
{
"resultCount": 10,
"results": [...]
}
Google Play Lookup
There's no free public Google Play API. Use these approaches:
Web Search
web_search: "site:play.google.com/store/apps QUERY"
Direct App Page Scraping
web_fetch: https://play.google.com/store/apps/details?id=PACKAGE_ID&hl=en&gl=us
⚠️ Google Play pages may return limited content or block automated requests. If web_fetch returns incomplete data, fall back to web_search results which typically include rating, download count, and developer info in the snippet.
Extract from the fetched HTML (when available):
- Title, developer, rating, review count, downloads
- Description, what's new, screenshots
Google Play Package ID
The package ID is in the URL: play.google.com/store/apps/details?id=com.example.app
Step-by-Step Instructions
Search for Apps by Keyword
- URL-encode the search term
- Fetch:
https://itunes.apple.com/search?term=ENCODED_QUERY&country=us&entity=software&limit=10
- Parse JSON response
- For each result, present: name, developer, rating, review count, price, and App Store link
Get Detailed Info for a Specific App
- Find the app's Track ID (from a search, or from the App Store URL — the number after
/id)
- Fetch:
https://itunes.apple.com/lookup?id=TRACK_ID&country=us
- Present full details: rating, reviews, version, release notes, price, size, description
Compare Two Apps
- Look up both apps:
https://itunes.apple.com/lookup?id=ID1,ID2&country=us
- Present side-by-side comparison of key metrics
Check an App's Rating Across Countries
- Look up the same ID with different country codes:
https://itunes.apple.com/lookup?id=APP_ID&country=us
https://itunes.apple.com/lookup?id=APP_ID&country=gb
https://itunes.apple.com/lookup?id=APP_ID&country=de
- Compare ratings and review counts by region
Find Both iOS and Android Versions
- Search iOS: iTunes Search API with the app name
- Search Android:
web_search "site:play.google.com/store/apps APP_NAME"
- Fetch the Google Play page with
web_fetch for details
- Present both platforms' data
Finding App IDs
- From App Store URL:
apps.apple.com/us/app/app-name/id553834731 → ID is 553834731
- From search results: The
trackId field
- From bundle ID lookup: If you know the bundle ID (e.g.,
com.spotify.client)
Output Format
Single App
### App Name
⭐ 4.5/5 (125K ratings) · Free
By Developer Name · Health & Fitness
Version 3.2.1 (Jan 10, 2024)
📝 What's New: Latest release notes summary...
📱 iOS: https://apps.apple.com/...
🤖 Android: https://play.google.com/...
Search Results
### App Store Results for "query" (N found)
1. **App Name** ⭐ 4.5 (125K) · Free
By Developer · Category
📱 https://apps.apple.com/...
2. **App Name** ⭐ 4.2 (50K) · $4.99
By Developer · Category
📱 https://apps.apple.com/...
Comparison
### App Comparison
| Metric | App A | App B |
|--------|-------|-------|
| Rating | ⭐ 4.5 | ⭐ 4.2 |
| Reviews | 125K | 50K |
| Price | Free | $4.99 |
| Size | 50 MB | 120 MB |
| Last Updated | Jan 10, 2024 | Dec 5, 2023 |
Error Handling
- No results: The search term may be too specific. Try broader terms or check spelling.
- API error / timeout: Retry once. The iTunes API is generally reliable.
- Rate limited: Wait 60 seconds. Consider caching results for batch lookups.
- Country not found: Verify the two-letter ISO country code.
- App removed from store: The lookup will return
resultCount: 0. Inform the user the app may have been removed.
- Google Play scraping fails: The page structure may have changed. Fall back to
web_search results.
Examples
Example 1: "How's the Spotify app rated?"
Fetch: https://itunes.apple.com/lookup?bundleId=com.spotify.client&country=us
Example 2: "Find fitness apps with good ratings"
Fetch: https://itunes.apple.com/search?term=fitness&country=us&entity=software&limit=20
Then filter results where averageUserRating >= 4.5 and sort by userRatingCount.
Example 3: "Compare Notion and Obsidian on the App Store"
Look up both apps and present a comparison table.
Data Sources
- iOS / Mac: iTunes Search API — Free, no auth
- Android: Google Play Store web pages via
web_fetch — Free, no auth, scraping