app-store-details
Retrieve comprehensive App Store app details including metadata, pricing, ratings, screenshots, and developer information for market research and analysis.
Instructions
Get detailed information about an App Store app. Returns an object with:
id: App Store ID number
appId: Bundle ID (e.g. 'com.company.app')
title: App name
url: App Store URL
description: Full app description
icon: Icon URL
genres: Array of category names
genreIds: Array of category IDs
primaryGenre: Main category name
primaryGenreId: Main category ID
contentRating: Content rating (e.g. '4+')
languages: Array of language codes
size: App size in bytes
requiredOsVersion: Minimum iOS version required
released: Initial release date (ISO string)
updated: Last update date (ISO string)
releaseNotes: Latest version changes
version: Current version string
price: Price in USD
currency: Price currency code
free: Boolean indicating if app is free
developerId: Developer's ID
developer: Developer name
developerUrl: Developer's App Store URL
developerWebsite: Developer's website URL if available
score: Current rating (0-5)
reviews: Total number of ratings
currentVersionScore: Current version rating (0-5)
currentVersionReviews: Current version review count
screenshots: Array of screenshot URLs
ipadScreenshots: Array of iPad screenshot URLs
appletvScreenshots: Array of Apple TV screenshot URLs
supportedDevices: Array of supported device IDs
ratings: Total number of ratings (when ratings option enabled)
histogram: Rating distribution by star level (when ratings option enabled)
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Numeric App ID (e.g., 553834731). Either this or appId must be provided. | |
| appId | No | Bundle ID (e.g., 'com.midasplayer.apps.candycrushsaga'). Either this or id must be provided. | |
| country | No | Country code to get app details from (default: us). Also affects data language. | us |
| lang | No | Language code for result text. If not provided, uses country-specific language. | |
| ratings | No | Load additional ratings information like ratings count and histogram |
Implementation Reference
- src/server.js:114-118 (handler)The handler function that fetches detailed App Store app information using the store.app method from the app-store-scraper library and returns it as JSON-formatted text content.async ({ id, appId, country, lang, ratings }) => { const details = await store.app({ id, appId, country, lang, ratings }); return { content: [{ type: "text", text: JSON.stringify(details) }] }; } );
- src/server.js:107-113 (schema)Zod schema defining the input parameters for the tool: optional id (number) or appId (string), country (default 'us'), optional lang, optional ratings (default false).{ id: z.number().optional().describe("Numeric App ID (e.g., 553834731). Either this or appId must be provided."), appId: z.string().optional().describe("Bundle ID (e.g., 'com.midasplayer.apps.candycrushsaga'). Either this or id must be provided."), country: z.string().default("us").describe("Country code to get app details from (default: us). Also affects data language."), lang: z.string().optional().describe("Language code for result text. If not provided, uses country-specific language."), ratings: z.boolean().optional().default(false).describe("Load additional ratings information like ratings count and histogram") },
- src/server.js:70-106 (registration)Registration of the 'app-store-details' tool using McpServer.tool(), including the tool name, detailed description of return fields, and parameters for schema and handler.server.tool("app-store-details", "Get detailed information about an App Store app. Returns an object with:\n" + "- id: App Store ID number\n" + "- appId: Bundle ID (e.g. 'com.company.app')\n" + "- title: App name\n" + "- url: App Store URL\n" + "- description: Full app description\n" + "- icon: Icon URL\n" + "- genres: Array of category names\n" + "- genreIds: Array of category IDs\n" + "- primaryGenre: Main category name\n" + "- primaryGenreId: Main category ID\n" + "- contentRating: Content rating (e.g. '4+')\n" + "- languages: Array of language codes\n" + "- size: App size in bytes\n" + "- requiredOsVersion: Minimum iOS version required\n" + "- released: Initial release date (ISO string)\n" + "- updated: Last update date (ISO string)\n" + "- releaseNotes: Latest version changes\n" + "- version: Current version string\n" + "- price: Price in USD\n" + "- currency: Price currency code\n" + "- free: Boolean indicating if app is free\n" + "- developerId: Developer's ID\n" + "- developer: Developer name\n" + "- developerUrl: Developer's App Store URL\n" + "- developerWebsite: Developer's website URL if available\n" + "- score: Current rating (0-5)\n" + "- reviews: Total number of ratings\n" + "- currentVersionScore: Current version rating (0-5)\n" + "- currentVersionReviews: Current version review count\n" + "- screenshots: Array of screenshot URLs\n" + "- ipadScreenshots: Array of iPad screenshot URLs\n" + "- appletvScreenshots: Array of Apple TV screenshot URLs\n" + "- supportedDevices: Array of supported device IDs\n" + "- ratings: Total number of ratings (when ratings option enabled)\n" + "- histogram: Rating distribution by star level (when ratings option enabled)",
- src/server.js:29-29 (helper)Import of the '@jeromyfu/app-store-scraper' library, which provides the store.app method used in the tool handler.import store from '@jeromyfu/app-store-scraper';