Uprate runs a hosted MCP server. Your AI agent can read reviews, ratings, listings and releases from App Store Connect and Google Play, draft and publish replies, change listing copy and submit releases. Both stores use the same server URL.
https://app.upratehq.com/mcp/productYou sign in with your Uprate account. REST API keys don't work for MCP. Don't have an account yet? Join the waitlist on the MCP page.
Add Uprate to your client
Claude Code
Run this in your terminal:
claude mcp add --transport http --scope user uprate https://app.upratehq.com/mcp/productThen run claude mcp login uprate, or type /mcp inside Claude Code, and sign in.
Claude Desktop
Open Customize > Connectors, select + > Add custom connector, paste the URL and select Add. Leave Advanced settings empty. Then select Connect and sign in.
https://app.upratehq.com/mcp/productFree plans allow one custom connector. On Team or Enterprise, an owner adds Uprate in Organization settings > Connectors first.
Cursor
Add this to ~/.cursor/mcp.json:
{
"mcpServers": {
"uprate": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://app.upratehq.com/mcp/product"]
}
}
}Cursor's built-in sign-in returns to a cursor:// address, which Uprate doesn't accept. mcp-remote signs you in through your browser instead. It needs Node.js.
Codex
Run this in your terminal:
codex mcp add uprate --url https://app.upratehq.com/mcp/productIf sign-in doesn't open by itself, run codex mcp login uprate.
VS Code
Add this to .vscode/mcp.json in your project:
{
"servers": {
"uprate": {
"type": "http",
"url": "https://app.upratehq.com/mcp/product"
}
}
}Select Start above the server and sign in.
Sign in and choose apps
When your client connects, Uprate opens a sign-in page. There you choose:
- Apps: every app you can open now and later, or only the apps you select.
- Access: Read only, Read and edit, or Read, edit and publish. Workspace settings adds team and billing actions, and only works when the connection can use all apps.
The connection uses the workspace you're in when you sign in, and only your own permissions on those apps. While you're in another workspace, the connection doesn't work. To see what the client can use, ask it to call get_context.
Approvals
Changes come back as an operation. When a change needs your approval, the agent shows the preview, the targets and how many items it affects, and your client asks you to approve it.
By default, these wait for your approval:
- publishing review replies, with the exact text of each reply
- changing live listing copy, which means Google Play listing text and App Store promotional text
- submitting a release for review
- generating more than one reply draft, because it uses credits
Some changes stay inside Uprate and don't ask: a private reply draft, release notes, your export compliance answer, App Store listing fields saved for your next release, and starting a release with an existing build. Nothing of that reaches the store until a step that needs approval sends it.
In Settings > MCP, Change approvals lets one connection approve replies, listing changes or releases by itself, up to 5, 20 or 100 a day, or without a limit. Team and billing changes have the same option when the connection has Workspace settings.
Disconnect
Open Settings > MCP, find the client under Connected clients and select Disconnect. It loses access to your apps right away. You can connect it again anytime.
For how Uprate stores your keys and what it does without asking, see Security and access.
Tools
Every tool marked Changes can ask for approval as described above. Store tools work with App Store Connect and Google Play wherever the app is on that store.
Reviews
| Tool | Access | Stores | What it does |
|---|---|---|---|
list_reviews |
Reads | App Store, Google Play | Lists reviews filtered by rating, country, language, version, reply status or time window. |
search_reviews |
Reads | App Store, Google Play | Finds reviews by meaning, for example "crashes after login". |
get_review_overview |
Reads | App Store, Google Play | Review counts, rating mix, sentiment and reply coverage, compared with the previous period. |
get_rating_trend |
Reads | App Store, Google Play | The store rating and its history from the snapshots Uprate has measured. |
get_release_feedback |
Reads | App Store, Google Play | Review metrics and negative topics for one version, a list or a range. |
export_reviews |
Reads | App Store, Google Play | A CSV download link for the reviews that match your filters. |
plan_review_replies |
Reads | App Store, Google Play | Groups unanswered reviews by topic, with counts, samples and the credit estimate. |
save_reply_draft |
Changes | App Store, Google Play | Saves your exact reply text as a private draft. Nothing is published. |
draft_review_replies |
Changes | App Store, Google Play | Writes private draft replies in the background. |
publish_review_replies |
Changes | App Store, Google Play | Publishes 1 to 50 replies after you approve the exact texts. |
Listing
| Tool | Access | Stores | What it does |
|---|---|---|---|
get_listing |
Reads | App Store, Google Play | All listing fields Uprate has stored for one store and language. |
set_listing_text |
Changes | App Store, Google Play | Changes the name, subtitle, descriptions, keywords or promotional text. |
Releases
| Tool | Access | Stores | What it does |
|---|---|---|---|
list_builds |
Reads | App Store, Google Play | Builds you can submit from App Store Connect and Google Play. |
get_release |
Reads | App Store, Google Play | Status, next step and the failure or rejection reason of a release. |
prepare_release |
Changes | App Store, Google Play | Starts a release with an existing build, or only checks that it can start. |
set_release_notes |
Changes | App Store, Google Play | Saves release notes in Uprate. |
set_export_compliance |
Changes | App Store | Saves your answer to the App Store encryption question. |
submit_release |
Changes | App Store, Google Play | Submits an update that is ready on both stores, with one approval. |
Workspace and other actions
| Tool | Access | Stores | What it does |
|---|---|---|---|
get_context |
Reads | — | Your workspace, apps, tracked competitors, access and approval rules. Never returns credentials. |
find_actions |
Reads | — | Searches Uprate's other actions and returns their exact inputs. |
read_action |
Reads | — | Runs a read-only action found with find_actions. |
run_action |
Changes | — | Runs another action found with find_actions, for example a first App Store release or a single-store update. |
Approvals
| Tool | Access | Stores | What it does |
|---|---|---|---|
get_operation |
Reads | — | The status of a change, its preview and what it affects. |
approve_operation |
Changes | — | Approves a change after you saw its preview. Your client asks you first. |
confirm_operation |
Changes | — | Rejects a pending change, or approves one that doesn't go through approve_operation. |
Files
| Tool | Access | Stores | What it does |
|---|---|---|---|
prepare_download |
Reads | — | A private download link for a review CSV, a screenshot export or icons. It expires after 10 minutes. |
create_upload |
Changes | — | A single-use upload link for an image, PDF or text file up to 10 MB. It expires after 10 minutes. |
get_upload |
Reads | — | Checks an upload link and returns the file ID that actions take. |
What it doesn't do
- Start a release from a new build file.
prepare_releasetakes a build that's already in App Store Connect or on a Google Play track. A release from a new IPA or AAB starts on the Submission page in Uprate. - Take store keys in chat.
get_contextreturns a secure link where you upload a.p8key or a service-account JSON file in Uprate. - Ask the store live for every read. Reviews, ratings and listings come from data Uprate has already synced.
- Act outside your access. The agent can't open apps you didn't select or do anything your role in the workspace doesn't allow. Paid features stay limited to your plan.
Uprate accepts up to 120 MCP requests a minute.
Try asking
- "What are people complaining about since version 3.2?"
- "Find 1 and 2 star reviews from the last 7 days in Germany that mention subscriptions."
- "Draft replies to the unanswered negative reviews and show me the plan before you write them."
- "Change the Google Play short description to: Track every brew in one tap."
- "Which builds can I submit, and what's blocking the current release?"