> ## Documentation Index
> Fetch the complete documentation index at: https://docs.appeeky.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Google Play hosted MCP

> Give an AI agent Google Play Console access through your Appeeky connection, without a service-account key file.

The hosted server runs the same operations as `gps-mcp`, but your service-account key stays in Appeeky. Each call uses a short-lived Google token issued for that call.

```
MCP endpoint: https://gps-api.appeeky.com/mcp
```

## Set up

**1. Connect Google Play in Appeeky**

Open **Settings → Data sources** on [appeeky.com](https://appeeky.com) and connect your service account. See [Google Play Connect](/docs/google-play-connect.md) and [Credentials & Setup](/docs/google-play-credentials.md).

**2. Copy your Appeeky API key**

From the same Settings page. See [Authentication](/docs/authentication.md).

**3. Add the server to your MCP client**

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "mcpServers": {
    "google-play": {
      "url": "https://gps-api.appeeky.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_APPEEKY_API_KEY"
      }
    }
  }
}
```

`X-API-Key: YOUR_APPEEKY_API_KEY` works in place of the `Authorization` header.

**4. Start with gps\_list\_apps**

It returns the service-account email, the default package, and the apps the service account was last seen with in Appeeky. Grant it more apps in Play Console → **Users and permissions**.

## Allow writes

The server is read-only by default. Operations that change your Play Console (releases, listings, prices, refunds, users, review replies) are hidden from `tools/list` until you add this header:

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "mcpServers": {
    "google-play-writes": {
      "url": "https://gps-api.appeeky.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_APPEEKY_API_KEY",
        "X-GPS-Allow-Writes": "true"
      }
    }
  }
}
```

> [!TIP]
>
> Keep two entries: a read-only one for everyday questions, and a write-enabled one you turn on only when you want the agent to ship.

## What is not available hosted

| Not hosted | Why | Use instead |
| - | - | - |
| Bundle, APK, image, deobfuscation and expansion-file uploads | Need a local file | `gps deploy`, `gps call gps_upload_image` |
| Internal app sharing uploads | Need a local file | `gps internal-sharing upload` |
| Generated / system APK downloads | Write a local file | `gps call gps_download_generated_apk` |
| `accounts` tools (`gps_list_accounts`, `gps_register_account`, …) | Edit local config | The Appeeky connection is the account |

Hosted tools have no `account` argument. Pass `packageName` on every app-level tool.

## Prompts to try

* "List my apps, then show the production track and its rollout fraction."
* "Show the last 20 reviews of com.example.app translated to English and draft replies for the 1-star ones."
* "List subscriptions and their base plans for com.example.app."
* "Check the release lifecycle state of version code 123 on production."

## Credits

Each tool call that reaches Google Play is one metered Appeeky API call. `initialize`, `tools/list`, `gps_search_capabilities`, and `gps_list_capabilities` are free, and a call rejected for invalid arguments is not charged. See [Rate Limits & Credits](/docs/rate-limits.md).

## Errors

Tool errors come back as `{ "error": "<message>" }` with `isError: true`. Google's own error message is passed through unchanged. Requests without an Appeeky key return `401 MISSING_API_KEY`; refusals from Appeeky (invalid key, no Google Play connection, credits used up) carry Appeeky's status and code.

## Same operations over REST

`GET /v1/apps`, `GET /v1/ops`, and `POST /v1/ops/{name}` on `https://gps-api.appeeky.com`. See [REST API](/docs/store-cli-google-play-rest-api.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.