# io.github.muhammetali/gpc-mcp-server (npm · gpc-mcp-server)

Google Play Console MCP Server for AI coding agents

- Trust score: 74/100 (medium)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-20

## Components

- npm · `gpc-mcp-server`: 74/100 (this document), [markdown](https://verifymcp.io/servers/muhammetali-gpc-mcp-server/gpc-mcp-server.md), [page](https://verifymcp.io/servers/muhammetali-gpc-mcp-server/gpc-mcp-server)

## Channel facts

- Registry: `npm`
- Package: `gpc-mcp-server`
- Version: `1.0.0`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-20.

- **Supply Chain Security**: 89/100
  - No malware found by supply-chain analysis.
  - CVE check failed: a known high-severity CVE affects uuid 9.0.1, reached via google-auth-library > gaxios > uuid. A fixed version is available.
  - No install/post-install scripts declared.
  - 40 of 118 dependencies flagged as unhealthy (1 deprecated).
- **Provenance & Transparency**: 45/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 11 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 77/100
  - AI-judged instruction clarity (good).
  - Tool/resource definitions use about 4477 tokens (~68/item across 65 items; 65 tools + 0 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 57/100
  - Stability observed for 17 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 75/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - 0 of 9 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "gpc_delete_image" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default.
  - An AI judge read all 65 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the io.github.muhammetali/gpc-mcp-server server?

io.github.muhammetali/gpc-mcp-server runs locally as an npm package, launched with npx -y gpc-mcp-server. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add muhammetali-gpc-mcp-server -- npx -y gpc-mcp-server
```

### Cursor

```json
{
  "mcpServers": {
    "muhammetali-gpc-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "gpc-mcp-server"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "muhammetali-gpc-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "gpc-mcp-server"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add muhammetali-gpc-mcp-server -- npx -y gpc-mcp-server
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "muhammetali-gpc-mcp-server": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "gpc-mcp-server"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add muhammetali-gpc-mcp-server --command npx --arg -y --arg gpc-mcp-server
```

### Hermes

```yaml
mcp_servers:
  muhammetali-gpc-mcp-server:
    command: "npx"
    args: ["-y", "gpc-mcp-server"]
```

### Netclaw

```json
{
  "McpServers": {
    "muhammetali-gpc-mcp-server": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "gpc-mcp-server"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add muhammetali-gpc-mcp-server -t stdio -c npx -a -y gpc-mcp-server
```

### Other

```json
{
  "mcpServers": {
    "muhammetali-gpc-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "gpc-mcp-server"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-20 (score 74, +1)

No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-17 (score 73, +1)

No change was recorded against any check on this day. Stability & Change Management went from 43 to 47. That category is still filling its 30-day observation window: 13 days of observed history at the previous scan, 14 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-15 (score 72, +1)

No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-13 (score 71, +1)

No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-11 (score 70, +4)

- [functional improvement] Stability: unverified → 0.27

### 2026-09-04 (score 66, +15)

- [security improvement] Malware scan: unverified → pass

### 2026-09-03 (score 51)

First indexed and scored.

## MCP tools (65)

### `gpc_get_app_info` (~29 tokens)

Get app details (package name, default language, contact info) from Google Play Console.

### `gpc_list_listings` (~31 tokens)

List all store listings across locales (title, description, short description). Warns about missing locales.

### `gpc_update_listing` (~117 tokens)

Update store listing for a specific locale (title, description, short description, video URL).

Input parameters:

- `fullDescription` (string): Full description (max 4000 chars)
- `language` (string, required): Locale code (en-US, tr-TR, de-DE, es-419, fr-FR, ru-RU, ar)
- `shortDescription` (string): Short description (max 80 chars)
- `title` (string): App title (max 30 chars)
- `video` (string): YouTube video URL

### `gpc_list_tracks` (~33 tokens)

List all tracks (internal, alpha, beta, production) with their releases, version codes, and rollout status.

### `gpc_create_release` (~203 tokens)

Create a new release on a track. Specify version code, release notes, and optionally staged rollout percentage.

Input parameters:

- `autoFillLocales` (boolean): Auto-fill missing locale release notes from en-US (default: true)
- `releaseName` (string): Release name (e.g., "2.1.0-rc1")
- `releaseNotes` (object, required): Object of locale -> release notes. E.g., {"en-US": "Bug fixes", "tr-TR": "Hata duzeltmeleri"}
- `status` (string): Release status: draft, inProgress (staged rollout), or completed (full rollout)
- `track` (string, required): Release track (internal, alpha, beta, production)
- `userFraction` (number): Rollout fraction (0.01-1.0). Only used when status is inProgress.
- `versionCode` (string, required): Version code of the AAB/APK already uploaded to Google Play

### `gpc_update_release_notes` (~62 tokens)

Update release notes for the latest release on a track. Pass locale -> text for all locales.

Input parameters:

- `releaseNotes` (object, required): Object of locale -> release notes text
- `track` (string, required): Release track (internal, alpha, beta, production)

### `gpc_set_rollout` (~82 tokens)

Set or update the staged rollout percentage for a production release. Set to 1.0 to complete rollout.

Input parameters:

- `track` (string): Release track (internal, alpha, beta, production)
- `userFraction` (number, required): Rollout fraction (0.01-1.0). Use 1.0 to complete the rollout to 100%.

### `gpc_halt_rollout` (~47 tokens)

Halt (pause) an ongoing staged rollout. The release stays in halted state until resumed.

Input parameters:

- `track` (string): Release track (internal, alpha, beta, production)

### `gpc_promote_release` (~120 tokens)

Promote a release from one track to another (e.g., internal → beta → production). Copies the latest release with its version codes and release notes.

Input parameters:

- `fromTrack` (string, required): Source track to promote from
- `releaseNotes` (object): Override release notes (locale -> text). If omitted, copies from source track.
- `status` (string): Release status on destination track
- `toTrack` (string, required): Destination track to promote to
- `userFraction` (number): Staged rollout fraction (only for inProgress status)

### `gpc_validate_release` (~63 tokens)

Pre-release validation: checks if version code is uploaded, track has no blocking drafts, and release notes cover all locales.

Input parameters:

- `track` (string, required): Release track (internal, alpha, beta, production)
- `versionCode` (string, required): Version code to validate

### `gpc_release_history` (~67 tokens)

View detailed release history for a specific track. Shows version codes, statuses, rollout percentages, and release notes.

Input parameters:

- `limit` (number): Maximum number of releases to show (default: 10)
- `track` (string, required): Release track (internal, alpha, beta, production)

### `gpc_list_reviews` (~72 tokens)

List recent user reviews with ratings, comments, and reply status. Highlights unreplied low-rating reviews.

Input parameters:

- `maxResults` (number): Number of reviews to fetch (max 100)
- `translationLanguage` (string): Translate reviews to this language (BCP 47 code, e.g., "en")

### `gpc_reply_review` (~58 tokens)

Reply to a user review. Use to respond to feedback, report issues, or thank users.

Input parameters:

- `replyText` (string, required): Reply text to the reviewer
- `reviewId` (string, required): Review ID (from gpc_list_reviews)

### `gpc_acquisition_report` (~56 tokens)

Get install/acquisition statistics for a date range. Shows store acquisitions and listing visitors.

Input parameters:

- `endDate` (string, required): End date (YYYY-MM-DD)
- `startDate` (string, required): Start date (YYYY-MM-DD)

### `gpc_crash_report` (~64 tokens)

Get App Crash and ANR rates from Android Vitals over a date range. Compares against Play Store bad behavior thresholds.

Input parameters:

- `endDate` (string, required): End date (YYYY-MM-DD)
- `startDate` (string, required): Start date (YYYY-MM-DD)

### `gpc_crash_anomaly_detector` (~40 tokens)

Automatically analyze crash rates over the last 14 days and detect if there is a sudden spike in crashes. Useful for monitoring release health.

### `gpc_upload_bundle` (~54 tokens)

Upload an Android App Bundle (.aab) file to Google Play. Returns the version code for use with gpc_create_release.

Input parameters:

- `filePath` (string, required): Absolute path to the .aab file on disk

### `gpc_list_bundles` (~29 tokens)

List all uploaded bundles with their version codes. Useful to verify uploads before creating releases.

### `gpc_list_images` (~104 tokens)

List uploaded images (screenshots, feature graphic, icon) for a locale and image type.

Input parameters:

- `imageType` (string, required): Image type (phoneScreenshots, sevenInchScreenshots, tenInchScreenshots, tvScreenshots, wearScreenshots, icon, featureGraphic, tvBanner)
- `language` (string, required): Locale code (en-US, tr-TR, de-DE, es-419, fr-FR, ru-RU, ar)

### `gpc_upload_image` (~123 tokens)

Upload a screenshot, feature graphic, or icon image for a locale.

Input parameters:

- `filePath` (string, required): Absolute path to the image file on disk (PNG, JPEG, or WebP)
- `imageType` (string, required): Image type (phoneScreenshots, sevenInchScreenshots, tenInchScreenshots, tvScreenshots, wearScreenshots, icon, featureGraphic, tvBanner)
- `language` (string, required): Locale code (en-US, tr-TR, de-DE, es-419, fr-FR, ru-RU, ar)

### `gpc_delete_image` (~114 tokens)

Delete a single image by ID from a locale and image type.

Input parameters:

- `imageId` (string, required): Image ID (from gpc_list_images)
- `imageType` (string, required): Image type (phoneScreenshots, sevenInchScreenshots, tenInchScreenshots, tvScreenshots, wearScreenshots, icon, featureGraphic, tvBanner)
- `language` (string, required): Locale code (en-US, tr-TR, de-DE, es-419, fr-FR, ru-RU, ar)

### `gpc_upload_aab` (~202 tokens)

Upload an AAB file and create a release in one step. Combines upload + release + commit into a single operation.

Input parameters:

- `autoFillLocales` (boolean): Auto-fill missing locale release notes from en-US (default: true)
- `filePath` (string, required): Absolute path to the .aab file on disk
- `releaseName` (string): Release name (e.g., "2.1.0")
- `releaseNotes` (object, required): Object of locale -> release notes. E.g., {"en-US": "Bug fixes", "tr-TR": "Hata duzeltmeleri"}
- `status` (string): Release status: draft, inProgress (staged rollout), or completed (full rollout)
- `track` (string, required): Release track (internal, alpha, beta, production)
- `userFraction` (number): Rollout fraction (0.01-1.0). Only used when status is inProgress.

### `gpc_upload_mapping` (~72 tokens)

Upload a ProGuard/R8 mapping file for a version code. Enables deobfuscated crash stack traces in Play Console.

Input parameters:

- `filePath` (string, required): Absolute path to the mapping file (.txt or .map)
- `versionCode` (number, required): Version code of the build to attach the mapping file to

### `gpc_list_products` (~37 tokens)

List all in-app products (one-time products via the monetization.onetimeproducts API) with product ID, price, and state.

### `gpc_get_product` (~48 tokens)

Get detailed information about a specific in-app product by product ID, including all localized listings and per-region prices.

Input parameters:

- `productId` (string, required): Product ID (from gpc_list_products)

### `gpc_create_product` (~228 tokens)

Create a new in-app product (one-time product). Price is in micros (e.g., "990000" = $0.99) and is only set for the given region — call gpc_update_product with a different regionCode to add pricing for other regions.

Input parameters:

- `consumable` (boolean, required): true = can be purchased repeatedly (e.g. gold packs); false = one-time/non-consumable
- `currency` (string, required): Currency code matching regionCode (e.g., "USD" for US, "TRY" for TR)
- `defaultLanguage` (string, required): Default language code (e.g., "en-US")
- `description` (string, required): Product description
- `priceMicros` (string, required): Price in micros (1,000,000 = $1.00). E.g., "990000" for $0.99
- `productId` (string, required): Unique product ID
- `regionCode` (string, required): ISO region code for the initial price (e.g., "US", "TR")
- `title` (string, required): Product title

### `gpc_update_product` (~178 tokens)

Update an existing in-app product (title, description, price for one region, and/or active state).

Input parameters:

- `active` (boolean): true = activate the base purchase option (purchasable); false = deactivate it
- `currency` (string): Currency code matching regionCode (required if priceMicros is set)
- `defaultLanguage` (string): Language code for the listing to update (defaults to the product's primary listing)
- `description` (string): New description
- `priceMicros` (string): New price in micros (requires currency and regionCode too)
- `productId` (string, required): Product ID to update
- `regionCode` (string): ISO region code the price applies to, e.g. "US" (required if priceMicros is set)
- `title` (string): New title

### `gpc_delete_product` (~37 tokens)

Delete an in-app product by product ID. This action cannot be undone.

Input parameters:

- `productId` (string, required): Product ID to delete

### `gpc_list_subscriptions` (~25 tokens)

List all subscriptions with their base plans, billing periods, and listings.

### `gpc_get_subscription` (~30 tokens)

Get detailed information about a specific subscription product.

Input parameters:

- `productId` (string, required): Subscription product ID

### `gpc_create_subscription` (~136 tokens)

Create a new subscription product with a base plan.

Input parameters:

- `basePlanId` (string, required): Base plan ID (e.g., "monthly", "yearly")
- `benefits` (array): List of subscription benefits shown to users
- `billingPeriod` (string, required): ISO 8601 billing period (P1M = monthly, P1Y = yearly, P1W = weekly)
- `defaultLanguage` (string, required): Default language code (e.g., "en-US")
- `description` (string): Subscription description
- `productId` (string, required): Unique subscription product ID
- `title` (string, required): Subscription title

### `gpc_update_subscription` (~78 tokens)

Update a subscription listing (title, description, benefits).

Input parameters:

- `benefits` (array): Updated list of benefits
- `description` (string): New description
- `languageCode` (string): Language code for the listing to update
- `productId` (string, required): Subscription product ID to update
- `title` (string): New title

### `gpc_list_testers` (~40 tokens)

List testers (Google Groups) configured for a specific track.

Input parameters:

- `track` (string, required): Release track (internal, alpha, beta, production)

### `gpc_update_testers` (~59 tokens)

Set Google Groups for a testing track. Replaces the existing tester list.

Input parameters:

- `googleGroups` (array, required): List of Google Group email addresses for testing
- `track` (string, required): Release track (internal, alpha, beta, production)

### `gpc_verify_purchase` (~53 tokens)

Verify a one-time product purchase by product ID and purchase token.

Input parameters:

- `productId` (string, required): Product ID (SKU) of the purchased item
- `token` (string, required): Purchase token from the client app

### `gpc_acknowledge_purchase` (~51 tokens)

Acknowledge a product purchase. Must be done within 3 days or the purchase is refunded.

Input parameters:

- `productId` (string, required): Product ID
- `token` (string, required): Purchase token

### `gpc_consume_purchase` (~48 tokens)

Consume a product purchase, allowing the user to buy it again (for consumable items).

Input parameters:

- `productId` (string, required): Product ID
- `token` (string, required): Purchase token

### `gpc_get_subscription_purchase` (~41 tokens)

Get subscription purchase status by token. Shows state, line items, renewal info.

Input parameters:

- `token` (string, required): Subscription purchase token from the client app

### `gpc_cancel_subscription_purchase` (~35 tokens)

Cancel a subscription. User retains access until end of current billing period.

Input parameters:

- `token` (string, required): Subscription purchase token

### `gpc_revoke_subscription` (~37 tokens)

Revoke a subscription immediately. Access is removed right away. Cannot be undone.

Input parameters:

- `token` (string, required): Subscription purchase token

### `gpc_defer_subscription_billing` (~75 tokens)

Defer subscription billing to a future date. User keeps access without being charged.

Input parameters:

- `desiredExpiryTime` (string, required): New expiry time in RFC 3339 format (e.g., "2026-06-01T00:00:00Z")
- `token` (string, required): Subscription purchase token

### `gpc_list_voided_purchases` (~94 tokens)

List voided purchases (refunds, chargebacks, fraud). Critical for fraud detection and financial reconciliation.

Input parameters:

- `endTime` (string): End time in milliseconds since epoch
- `maxResults` (number): Maximum results to return
- `startTime` (string): Start time in milliseconds since epoch
- `type` (number): Filter by type: 0=products, 1=subscriptions

### `gpc_refund_order` (~63 tokens)

Issue a full refund for an order. The refund may take a few minutes to process.

Input parameters:

- `fullRefund` (boolean): Whether to issue a full refund
- `orderId` (string, required): Order ID (e.g., from purchase verification or Play Console)

### `gpc_list_recovery_actions` (~30 tokens)

List all app recovery actions (draft, active, canceled). Used for emergency incident response.

### `gpc_create_recovery` (~72 tokens)

Create a draft app recovery action targeting specific users. Must be deployed separately.

Input parameters:

- `targetAllUsers` (boolean): Target all users
- `targetRegions` (array): Target specific region codes (e.g., ["US", "TR"])
- `targetVersionCodes` (array): Target specific version codes

### `gpc_deploy_recovery` (~49 tokens)

Deploy (activate) a draft recovery action. Targeted users will receive the recovery notification.

Input parameters:

- `recoveryId` (string, required): Recovery action ID (from gpc_list_recovery_actions)

### `gpc_cancel_recovery` (~39 tokens)

Cancel an active recovery action. Users will no longer receive the recovery notification.

Input parameters:

- `recoveryId` (string, required): Recovery action ID to cancel

### `gpc_activate_base_plan` (~50 tokens)

Activate a subscription base plan. New users can subscribe to this plan.

Input parameters:

- `basePlanId` (string, required): Base plan ID to activate
- `productId` (string, required): Subscription product ID

### `gpc_deactivate_base_plan` (~54 tokens)

Deactivate a subscription base plan. Existing subscribers keep access; new users cannot subscribe.

Input parameters:

- `basePlanId` (string, required): Base plan ID to deactivate
- `productId` (string, required): Subscription product ID

### `gpc_delete_base_plan` (~47 tokens)

Delete a subscription base plan permanently. Cannot be undone.

Input parameters:

- `basePlanId` (string, required): Base plan ID to delete
- `productId` (string, required): Subscription product ID

### `gpc_migrate_base_plan_prices` (~81 tokens)

Migrate existing subscribers to a new price. Subscribers are notified per Google Play policies.

Input parameters:

- `basePlanId` (string, required): Base plan ID
- `currency` (string, required): Currency code (e.g., "USD")
- `priceMicros` (string, required): New price in micros
- `productId` (string, required): Subscription product ID

### `gpc_list_offers` (~44 tokens)

List all promotional offers for a subscription base plan.

Input parameters:

- `basePlanId` (string, required): Base plan ID
- `productId` (string, required): Subscription product ID

### `gpc_get_offer` (~52 tokens)

Get detailed information about a specific subscription offer.

Input parameters:

- `basePlanId` (string, required): Base plan ID
- `offerId` (string, required): Offer ID
- `productId` (string, required): Subscription product ID

### `gpc_create_offer` (~93 tokens)

Create a promotional offer for a subscription plan (free trial, discounted period, etc.).

Input parameters:

- `basePlanId` (string, required): Base plan ID
- `offerId` (string, required): Unique offer ID
- `offerTags` (array): Tags for offer targeting
- `phases` (array, required): Offer phases (e.g., free trial then discounted then base price)
- `productId` (string, required): Subscription product ID

### `gpc_activate_offer` (~56 tokens)

Activate a subscription offer, making it available to users.

Input parameters:

- `basePlanId` (string, required): Base plan ID
- `offerId` (string, required): Offer ID to activate
- `productId` (string, required): Subscription product ID

### `gpc_deactivate_offer` (~64 tokens)

Deactivate a subscription offer. New users cannot redeem it; existing users are not affected.

Input parameters:

- `basePlanId` (string, required): Base plan ID
- `offerId` (string, required): Offer ID to deactivate
- `productId` (string, required): Subscription product ID

### `gpc_delete_offer` (~51 tokens)

Delete a subscription offer permanently.

Input parameters:

- `basePlanId` (string, required): Base plan ID
- `offerId` (string, required): Offer ID to delete
- `productId` (string, required): Subscription product ID

### `gpc_convert_region_prices` (~70 tokens)

Convert a base price to localized prices for all regions. Useful for setting up multi-region pricing.

Input parameters:

- `currency` (string, required): Base currency code (e.g., "USD")
- `priceMicros` (string, required): Base price in micros (1,000,000 = $1.00)

### `gpc_list_countries` (~44 tokens)

List country availability for a specific track. Shows which countries can access the release.

Input parameters:

- `track` (string, required): Release track (internal, alpha, beta, production)

### `gpc_update_app_details` (~77 tokens)

Update app-level details (contact email, phone, website, default language).

Input parameters:

- `contactEmail` (string): Contact email address
- `contactPhone` (string): Contact phone number
- `contactWebsite` (string): Contact website URL
- `defaultLanguage` (string): Default language code (e.g., "en-US")

### `gpc_delete_listing` (~52 tokens)

Delete a store listing for a specific locale.

Input parameters:

- `language` (string, required): Locale code (en-US, tr-TR, de-DE, es-419, fr-FR, ru-RU, ar)

### `gpc_delete_all_images` (~100 tokens)

Delete all images of a specific type for a locale (bulk delete).

Input parameters:

- `imageType` (string, required): Image type (phoneScreenshots, sevenInchScreenshots, tenInchScreenshots, tvScreenshots, wearScreenshots, icon, featureGraphic, tvBanner)
- `language` (string, required): Locale code (en-US, tr-TR, de-DE, es-419, fr-FR, ru-RU, ar)

### `gpc_share_internal` (~50 tokens)

Upload a bundle/APK for internal app sharing. Bypasses edit workflow — available immediately via download URL.

Input parameters:

- `filePath` (string, required): Absolute path to .aab or .apk file

### `gpc_list_generated_apks` (~46 tokens)

List generated split APKs for a version code. Useful for QA and device-specific debugging.

Input parameters:

- `versionCode` (number, required): Version code to list generated APKs for

### `gpc_list_apks` (~21 tokens)

List all uploaded APKs with their version codes.

## Diagnostics

Captured diagnostic sections: Provenance, Vulnerabilities, Dependencies. The full working is on the page: https://verifymcp.io/servers/muhammetali-gpc-mcp-server/gpc-mcp-server#diagnostics

## Score history

- 2026-09-20: 74
- 2026-09-19: 73
- 2026-09-18: 73
- 2026-09-17: 73
- 2026-09-16: 72
- 2026-09-15: 72
- 2026-09-14: 71
- 2026-09-13: 71
- 2026-09-12: 70
- 2026-09-11: 70
- 2026-09-10: 66
- 2026-09-09: 66
- 2026-09-08: 66
- 2026-09-07: 66
- 2026-09-06: 66
- 2026-09-05: 66
- 2026-09-04: 66
- 2026-09-03: 51

## Common questions

### What is the io.github.muhammetali/gpc-mcp-server server?

io.github.muhammetali/gpc-mcp-server is listed in the public MCP registry as io.github.muhammetali/gpc-mcp-server. Google Play Console MCP Server for AI coding agents. This page covers its npm package (gpc-mcp-server).

### Is the io.github.muhammetali/gpc-mcp-server server safe to use?

io.github.muhammetali/gpc-mcp-server scores 74 out of 100 on VerifyMCP. We recorded 1 known advisory against it as of 20 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the io.github.muhammetali/gpc-mcp-server server expose?

io.github.muhammetali/gpc-mcp-server exposes 65 tools: gpc_get_app_info, gpc_list_listings, gpc_update_listing, gpc_list_tracks, gpc_create_release, and 60 more. Their descriptions and schemas cost roughly 4,477 tokens of context every time the server is loaded.

### Is the io.github.muhammetali/gpc-mcp-server server still maintained?

io.github.muhammetali/gpc-mcp-server is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the io.github.muhammetali/gpc-mcp-server server under?

io.github.muhammetali/gpc-mcp-server declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- npm package: https://www.npmjs.com/package/gpc-mcp-server
- Socket report: https://socket.dev/npm/package/gpc-mcp-server
- Repository: https://github.com/muhammetali/gpc-mcp-server
- Changelog RSS feed: https://verifymcp.io/servers/muhammetali-gpc-mcp-server/gpc-mcp-server.xml
- Changelog JSON feed: https://verifymcp.io/servers/muhammetali-gpc-mcp-server/gpc-mcp-server.json
- HTML version of this page: https://verifymcp.io/servers/muhammetali-gpc-mcp-server/gpc-mcp-server
