google-play-developer
Retrieve Google Play Store apps by developer to analyze portfolios, track competitor offerings, and research market presence with app details like ratings, pricing, and descriptions.
Instructions
Get apps by a developer on Google Play. Returns a list of apps with:
url: Play Store URL
appId: Package name (e.g. 'com.company.app')
title: App name
summary: Short app description
developer: Developer name
developerId: Developer ID
icon: Icon image URL
score: Rating (0-5)
scoreText: Rating display text
priceText: Price display text
free: Boolean indicating if app is free
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| devId | Yes | Developer name (e.g., 'DxCo Games') | |
| lang | No | Language code for result text (default: en) | en |
| country | No | Country code to get results from (default: us) | us |
| num | No | Number of results to retrieve (default: 60) | |
| fullDetail | No | Include full app details in results (default: false), If fullDetail is true, includes all fields from app details endpoint. |
Implementation Reference
- src/server.js:581-584 (handler)The handler function that implements the core logic of the 'google-play-developer' tool. It calls the external gplay.developer() method with the input parameters and returns the results as a JSON string in the MCP content format.async ({ devId, lang, country, num, fullDetail }) => { const apps = await gplay.developer({ devId, lang, country, num, fullDetail }); return { content: [{ type: "text", text: JSON.stringify(apps) }] }; }
- src/server.js:574-580 (schema)Zod schema defining the input parameters for the 'google-play-developer' tool: devId (required string), optional lang, country, num, fullDetail.{ devId: z.string().describe("Developer name (e.g., 'DxCo Games')"), lang: z.string().default("en").describe("Language code for result text (default: en)"), country: z.string().default("us").describe("Country code to get results from (default: us)"), num: z.number().default(60).describe("Number of results to retrieve (default: 60)"), fullDetail: z.boolean().default(false).describe("Include full app details in results (default: false), If fullDetail is true, includes all fields from app details endpoint.") },
- src/server.js:561-585 (registration)Registration of the 'google-play-developer' MCP tool via McpServer.tool() method, including tool name, description, input schema, and handler function.server.tool("google-play-developer", "Get apps by a developer on Google Play. Returns a list of apps with:\n" + "- url: Play Store URL\n" + "- appId: Package name (e.g. 'com.company.app')\n" + "- title: App name\n" + "- summary: Short app description\n" + "- developer: Developer name\n" + "- developerId: Developer ID\n" + "- icon: Icon image URL\n" + "- score: Rating (0-5)\n" + "- scoreText: Rating display text\n" + "- priceText: Price display text\n" + "- free: Boolean indicating if app is free\n", { devId: z.string().describe("Developer name (e.g., 'DxCo Games')"), lang: z.string().default("en").describe("Language code for result text (default: en)"), country: z.string().default("us").describe("Country code to get results from (default: us)"), num: z.number().default(60).describe("Number of results to retrieve (default: 60)"), fullDetail: z.boolean().default(false).describe("Include full app details in results (default: false), If fullDetail is true, includes all fields from app details endpoint.") }, async ({ devId, lang, country, num, fullDetail }) => { const apps = await gplay.developer({ devId, lang, country, num, fullDetail }); return { content: [{ type: "text", text: JSON.stringify(apps) }] }; } );