Works with Google Play Console

AppVitals

Play Console is about four clicks deep for every app, and the reviews API only keeps seven days. AppVitals is an MCP server that pulls reviews, ratings, vitals, and releases into the agent you already use.

What it does

Example output

Ask in plain English. Your assistant calls the AppVitals tool and explains what comes back.

Example output
claude / get_recent_reviews
# Recent 1 star reviews
> Any 1 star reviews for Habit Jar this week? What are people angry about?

// tool call
get_recent_reviews({ "packageName": "com.example.habitjar", "maxStars": 1 })

// response
{
  "packageName": "com.example.habitjar",
  "reviews": [
    { "reviewId": "gp:AOqp...x1", "authorName": "Mel K", "starRating": 1,
      "text": "Streak reset overnight after the update. 140 days gone.",
      "lastModified": "2026-11-03T21:14:09Z" },
    { "reviewId": "gp:AOqp...x2", "authorName": "Dan", "starRating": 1,
      "text": "Reminders stopped working on my Pixel 8.",
      "lastModified": "2026-11-02T08:40:51Z" },
    { "reviewId": "gp:AOqp...x3", "authorName": "Priya S", "starRating": 1,
      "text": "Lost my streak too. Please fix.",
      "lastModified": "2026-11-01T11:02:33Z" }
  ],
  "note": "Google only returns reviews created or modified in the last 7 days."
}

// assistant
3 one star reviews in the last 7 days. Two themes:
1. Streaks reset after 2.3.0 (2 reviews). Looks like a migration bug.
2. Reminders not firing on Pixel 8 (1 review). Check exact alarm permissions on Android 14.
Example output
claude / get_vitals
# Crash and ANR vs Play thresholds
> Is Habit Jar over Play's bad behaviour thresholds for crashes or ANRs?

// tool call
get_vitals({ "packageName": "com.example.habitjar", "days": 7 })

// response
{
  "packageName": "com.example.habitjar",
  "days": 7,
  "series": [
    { "date": "2026-10-29", "userPerceivedCrashRate": 0.0062, "userPerceivedAnrRate": 0.0021, "distinctUsers": 18420 },
    { "date": "2026-11-01", "userPerceivedCrashRate": 0.0131, "userPerceivedAnrRate": 0.0024, "distinctUsers": 19105 },
    { "date": "2026-11-02", "userPerceivedCrashRate": 0.0118, "userPerceivedAnrRate": 0.0026, "distinctUsers": 18877 }
  ],
  "flags": [
    { "metric": "userPerceivedCrashRate", "date": "2026-11-01", "value": 0.0131, "threshold": 0.0109 },
    { "metric": "userPerceivedCrashRate", "date": "2026-11-02", "value": 0.0118, "threshold": 0.0109 }
  ],
  "notes": ["Rates are fractions. 0.0109 means 1.09%."]
}

// assistant
Metric                     Latest  Threshold  Status
User-perceived crash rate  1.18%   1.09%      OVER on 2 days
User-perceived ANR rate    0.26%   0.47%      OK
Example output
claude / get_vitals_breakdown
# Crashes by device
> Which devices are crashing most for Habit Jar this week?

// tool call
get_vitals_breakdown({ "packageName": "com.example.habitjar", "dimension": "device", "days": 7 })

// response
{
  "packageName": "com.example.habitjar",
  "dimension": "device",
  "playDimension": "deviceModel",
  "days": 7,
  "slices": [
    { "value": "google/oriole", "userPerceivedCrashRate": 0.0241, "userPerceivedAnrRate": 0.0031, "distinctUsers": 2104 },
    { "value": "samsung/o1sxeea", "userPerceivedCrashRate": 0.0088, "userPerceivedAnrRate": 0.0020, "distinctUsers": 6401 },
    { "value": "Google/Pixel 6", "userPerceivedCrashRate": 0.0142, "userPerceivedAnrRate": 0.0027, "distinctUsers": 1888 }
  ],
  "flags": [
    { "metric": "userPerceivedCrashRate", "value": "google/oriole", "rate": 0.0241, "threshold": 0.0109 }
  ],
  "notes": ["Rates are fractions. 0.0109 means 1.09%."]
}

// assistant
Pixel 6 (oriole) is the outlier: 2.41% user-perceived crash rate, over the 1.09% line.
Samsung traffic is fine at 0.88%. Worth checking the Pixel 6 build of 2.3.0 first.
Example output
claude / get_review_history
# Rating trend over 30 days
> How has Habit Jar's star rating moved over the last 30 days?

// tool call
get_review_history({ "packageName": "com.example.habitjar", "since": "2026-10-06T00:00:00Z" })

// response
{
  "packageName": "com.example.habitjar",
  "reviews": [ "... 212 stored reviews ..." ],
  "note": "These rows come from hosted snapshots, so they can outlive the 7 day Play API window."
}

// assistant
Week             Reviews  Avg stars
6 to 12 Oct      48       4.5
13 to 19 Oct     51       4.4
20 to 26 Oct     55       4.4
27 Oct to 2 Nov  58       3.9
Steady around 4.4 until 2.3.0, then a drop to 3.9, mostly from streak reset reports.
Example output
claude / list_releases
# Release and rollout status
> What's live on production and how far is the rollout?

// tool call
list_releases({ "packageName": "com.example.habitjar" })

// response
{
  "packageName": "com.example.habitjar",
  "tracks": [
    { "track": "production", "releases": [
      { "name": "2.3.0", "status": "inProgress", "versionCodes": [230], "userFraction": 0.2 },
      { "name": "2.2.4", "status": "completed", "versionCodes": [224], "userFraction": null }
    ] },
    { "track": "internal", "releases": [
      { "name": "2.3.1", "status": "completed", "versionCodes": [231], "userFraction": null }
    ] }
  ],
  "editDeleted": true
}

// assistant
Production: 2.3.0 is rolling out to 20% of users. Everyone else is on 2.2.4.
Internal: 2.3.1 is ready. Given the crash flags, you might halt 2.3.0 at 20% and push 2.3.1.

Made-up app and data, to show the shape of what comes back. Your own numbers come straight from the Play Developer API.

Free and open source: the MCP

The MCP that talks to Google Play is open source (MIT) on GitHub and free to self-host. It gives you live reviews, ratings, vitals, and releases. You run it with your own Google Cloud service account and an invite in Play Console. No account here, no fee.

It only sees what Google returns right now, so no history past 7 days and no alerts. To get those yourself you would need to run your own server, database, and scheduled jobs.

What the hosted plans add

Pricing

7 day free trial on both. Prices are US dollars per month.

One app

US$9/mo

Hosted MCP URL and API key for one Android app, daily review history, and crash and ANR alerts.

Start trial

Unlimited apps

US$19/mo

Everything in One app, for every app on your developer account.

Start trial

Your API key belongs to the hostedmcp.dev account, not just AppVitals. Later products use the same key. Each product has its own subscription.

After checkout we email you an API key. Then connect a Play app.