App Store & Google Play data: app details, IAP prices, reviews, top charts, estimates, rank history.
Official clients + MCP server for the App Intel API: one JSON API for iOS App Store and Google Play app data — search, full app details (screenshots, preview videos, in-app purchase price lists, install brackets), reviews, top charts & rankings by country, similar apps, keyword suggestions (ASO), download & revenue estimates, and daily rank / rating history.
Get your key first (free tier: 300 requests/month): subscribe on RapidAPI → https://rapidapi.com/kotuaigor/api/app-intel-api-app-store-google-play-data → copy the X-RapidAPI-Key from any endpoint page. Plans & pricing.
app-intel-apiZero dependencies, fetch-based. Node 18+, Bun, Deno, browsers, edge runtimes.
npm i app-intel-api
import { AppIntel } from "app-intel-api";
const api = new AppIntel({ rapidApiKey: process.env.RAPIDAPI_KEY!, country: "us" });
// 1) find the app
const { data: hits } = await api.search("candy crush", { store: "ios" });
// 2) pull everything about it (screenshots, videos, IAP prices, estimate…)
const { data: app } = await api.app(hits[0].id, { estimate: true });
console.log(app.name, app.iap.items, app.previewVideos, app.estimate);
await api.app("com.king.candycrushsaga"); // Android by package name
await api.app("com.burbn.instagram", { store: "ios" }); // iOS by bundle id
await api.reviews("com.king.candycrushsaga", { sort: "rating", limit: 50 });
await api.charts({ store: "android", chart: "top-grossing", category: "GAME", country: "gb" });
Every call resolves to { data, meta: { cached, stale?, fetchedAt } }; errors throw AppIntelError (status, code, requestId). Full method list → packages/client.
app-intel-apiSync and async clients (httpx). Python 3.9+.
pip install app-intel-api
from app_intel_api import AppIntel
api = AppIntel("YOUR_RAPIDAPI_KEY", country="us") # or set RAPIDAPI_KEY in env
hits = api.search("candy crush", store="ios")["data"]
app = api.app(hits[0]["id"], estimate=True)["data"]
print(app["name"], app["iap"]["items"], app["previewVideos"], app["estimate"])
api.app("com.king.candycrushsaga") # Android
api.reviews("com.king.candycrushsaga", sort="rating", limit=50)
api.charts(store="android", chart="top-grossing", category="GAME", country="gb")
from app_intel_api import AsyncAppIntel
async with AsyncAppIntel("YOUR_RAPIDAPI_KEY") as api:
top = await api.charts(store="ios", chart="top-grossing", category="Health & Fitness")
Docs → packages/python.
app-intel-mcp (Claude Code, Claude Desktop, Cursor, Windsurf, …)Gives any MCP-capable AI client live App Store / Google Play data as tools: search_apps, get_app, get_apps, get_reviews, top_charts, list_categories, suggest_keywords, similar_apps, estimate_revenue, rank_history, developer_apps, android_permissions, android_data_safety.
Requirements: Node 18+ and your RAPIDAPI_KEY. The server runs locally over stdio via npx — nothing else to install.
# add for the current project (stored in .mcp.json)
claude mcp add app-intel -e RAPIDAPI_KEY=YOUR_RAPIDAPI_KEY -- npx -y app-intel-mcp
# or for all your projects
claude mcp add --scope user app-intel -e RAPIDAPI_KEY=YOUR_RAPIDAPI_KEY -- npx -y app-intel-mcp
claude mcp list # should show "app-intel: … - ✓ Connected"
Then just ask, e.g. "Use app-intel to find the top 10 grossing meditation apps on iOS in the UK and compare their subscription prices." Claude Code will call top_charts → get_app for you. Run /mcp inside Claude Code to see the server and its tools.
Equivalent .mcp.json (project root), if you prefer editing the file:
{
"mcpServers": {
"app-intel": {
"command": "npx",
"args": ["-y", "app-intel-mcp"],
"env": { "RAPIDAPI_KEY": "YOUR_RAPIDAPI_KEY" }
}
}
}
Settings → Developer → Edit Config (opens claude_desktop_config.json) and add the same mcpServers block as above; restart Claude Desktop. The tools appear under the 🔌 / tools icon in the chat box.
Settings → MCP → Add new global MCP server (writes ~/.cursor/mcp.json), or put the block above in .cursor/mcp.json inside your project. Enable the server; the Agent will use the tools automatically.
Settings → Cascade → MCP servers → Add server → raw config, paste the same block (~/.codeium/windsurf/mcp_config.json).
Any client that supports stdio MCP servers works with: command npx, args ["-y", "app-intel-mcp"], env RAPIDAPI_KEY.
Error 401/403 from a tool → the key is missing/invalid or you're not subscribed: check RAPIDAPI_KEY and your subscription at https://rapidapi.com/kotuaigor/api/app-intel-api-app-store-google-play-data.Error 429 → plan quota/rate limit reached — upgrade or wait.node --version is ≥ 18 and npx -y app-intel-mcp runs in a terminal (it waits for stdio input; Ctrl-C to exit).search · suggest · charts · categories · app · apps (batch) · appByBundleId · reviews · similar · estimates · history · androidPermissions · androidDataSafety · developerApps — interactive playground and full reference on RapidAPI.
MIT. Data comes from public App Store / Google Play pages; media URLs are hot-linked to Apple/Google CDNs. Estimates are modeled, not measured.
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y app-intel-mcpMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-garrrikkotua-app-intel": {
"command": "npx",
"args": [
"-y",
"app-intel-mcp"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referenceio.github.garrrikkotua/app-intel works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.