Skip to main content
Glama
mcp-appstore-reviews

mcp-appstore-reviews

mcp-appstore-reviews

A small, reviews-only MCP server for the Apple App Store, backed by the App Store Connect API. It lets an agent read customer reviews and publish or delete developer responses — and deliberately nothing else.

Why so narrow?

The capability boundary is the trust guarantee. This server exposes only the three review tools below. There is intentionally no build, release, submission, pricing, in-app-purchase, certificate, profile, or beta-tester tool, so the App Store Connect key you give it can't be used to do any of those things. Scope the key itself narrowly too (the Customer Support role is enough).

It is also dependency-free — pure Node 18+ (fetch + built-in crypto), no third-party packages — so there is no supply chain to audit beyond this one file (index.mjs).

Related MCP server: io.github.gjeltep/app-store-connect-mcp

Tools

Tool

Description

list_reviews

List reviews for an app (newest first by default), including any existing developer response and its id. Filters: territory, rating, sort (recent/favorable/critical), limit.

respond_to_review

Publish a developer response to a review (reviewId, responseBody).

delete_review_response

Delete a developer response by its responseId (from list_reviews).

Authentication

Create an App Store Connect API key (Users and Access → Integrations → App Store Connect API). Two kinds of key work:

  • Team key — needs the Customer Support role (enough to manage reviews without Admin's broader powers), but only an Admin can generate it. Supply the Issuer ID along with the Key ID and .p8.

  • Individual key — any user can generate their own (no Admin needed) and it inherits that user's permissions. It has no Issuer ID: leave APP_STORE_CONNECT_ISSUER_ID unset and supply just the Key ID and .p8.

Then provide:

Env var

What

APP_STORE_CONNECT_ISSUER_ID

Issuer ID shown at the top of the Integrations page — team keys only; omit for individual keys

APP_STORE_CONNECT_KEY_ID

Key ID of the API key

APP_STORE_CONNECT_PRIVATE_KEY_PATH

Path to the downloaded .p8 private key file

The private key is read only to sign a short-lived ES256 JWT for Apple; it is never logged, copied, or sent anywhere but Apple's API.

Run

# stdio MCP server
APP_STORE_CONNECT_ISSUER_ID=... \
APP_STORE_CONNECT_KEY_ID=... \
APP_STORE_CONNECT_PRIVATE_KEY_PATH=/path/to/AuthKey_XXXX.p8 \
npx -y github:ForgeHQ-Agents/mcp-appstore-reviews

The agent passes the app's numeric App Store ID as appId (find it in App Store Connect → your app → App Information, or in the app's App Store URL).

Test

npm test   # node --test, zero dependencies

License

MIT

Available Tools

3 tools
delete_review_responseA

Delete an existing developer response. Takes the response id (the response.id field surfaced by list_reviews), not the review id.

Inputs: responseId (required).

list_reviewsA

List customer reviews for an app, newest first by default. Each review includes its id, star rating, title, body, reviewer nickname, territory, date, and the existing developer response (with its id) if one exists. Use the response id with delete_review_response.

Inputs: appId (required), territory, rating, sort, +1 more.

respond_to_reviewA

Publish a public developer response to a customer review. One response per review — if the review already has a response, delete it first with delete_review_response, then respond again.

Inputs: reviewId (required), responseBody (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.6/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a clear, distinct purpose: listing reviews, responding to a review, and deleting a response. No overlap or ambiguity.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern in snake_case (list_reviews, respond_to_review, delete_review_response).

    Tool Count5/5

    Three tools cover the essential operations for app store review responses: list, respond, and delete. The count is well-scoped for this domain.

    Completeness4/5

    Covers the full lifecycle of review responses (read, create, delete). Minor gap: no direct update for a response (requires delete+create), but the documentation clarifies the intended workflow.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      B
      maintenance
      Enables AI assistants to manage app listings, versions, localizations, screenshots, TestFlight groups and testers, bundle IDs, devices, users, analytics reports, and sales or finance reports through the App Store Connect API.
      36
      28 npm
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI agents to manage App Store Connect releases—versions, builds, TestFlight groups, metadata, pricing, reviews, and submission—while staying read-only by default and requiring human approval before any public or destructive action.
      2
      MIT