Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
App Store + Google Play reviews: top complaints, what got worse by version, cross-store comparisons.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
AuthorizationValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Run this in your terminal
claude mcp add --transport http app-store-review-intelligence https://parallelstudio--app-store-review-intelligence-mcp.apify.actor/mcp --header 'Authorization: your-value'Fill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"app-store-review-intelligence": {
"url": "https://parallelstudio--app-store-review-intelligence-mcp.apify.actor/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"app-store-review-intelligence": {
"type": "http",
"url": "https://parallelstudio--app-store-review-intelligence-mcp.apify.actor/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Your choice stays on this device in a cookie; no account needed.
Authorization secret required HTTP headerThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
The server asks you to sign in before it lists its tools.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026
The registry name was verified with the GitHub account gunnargray-dev, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 999 ms (HTTP 401)
Needs a key or token that you copy and paste yourself
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 2 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: Authorization
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (1.1.3) reached the registry 11 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Spec Driven Development, Remote Desktop Commander, Funooy Krillion Reference
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Funooy trivia references in six languages, with rules and fixed scoring. No daily spoilers.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Ask your AI agent what users hate about any iOS or Android app, and what broke in the last update. This MCP server searches the Apple App Store and Google Play, pulls recent reviews for any app (yours or a competitor's), and returns analysis your agent can use directly: top complaints with quotes, rating by version, what got worse in the latest version, and side-by-side competitor benchmarks. No API keys, no App Store Connect or Play Console access needed.
Hosted (no setup): apify.com/parallelstudio/app-store-review-intelligence-mcp. Connect any MCP client to
https://parallelstudio--app-store-review-intelligence-mcp.apify.actor/mcpwith your Apify token and pay per call. You can also run this open-source code locally over stdio:npm install && npm run build && npx app-review-intel-mcp.
Now with Google Play: every tool works on both the Apple App Store and Google Play, including iOS-vs-Android comparisons.
Works with Claude Desktop, Claude Code, Cursor, VS Code, Windsurf and any client that supports MCP over Streamable HTTP.
review_insights compares the newest version with the previous one: rating change, negative-share change, and the complaints that rose most, with quotes.compare_apps gives one table with leaders per metric. You can mix Apple and Google Play ids.search_apps returns ids, ratings, installs and prices.get_app_reviews returns raw review text for your own analysis.| Tool | Use it when | Returns | Billing |
|---|---|---|---|
search_apps | You have an app name or a category and need its id | id (Apple numeric id or Play package name), name, developer, rating, rating count, price, genre, version, URL; installs on Google Play | per call |
review_insights | Start here for any "why are users unhappy / what changed / summarize feedback" question | rating distribution, rating by version, top complaint phrases (share of 1–2★ reviews + quote), versionDeltas (latest vs previous version: rating change, rising complaints with quotes), sample quotes | flat per call |
get_app_reviews | You need the actual review text | reviews with rating, title (Apple), body, version, date, helpful votes; developer replies on Google Play | per review returned |
compare_apps | Competitor benchmark of 2–10 apps (Apple and Google can be mixed) | store rating & count, installs, price, version, recent average, % negative/positive, latest-version average, top 5 complaints, leaders | flat per call |
Parameters. app_id accepts an Apple id (284882215, id284882215, or an apps.apple.com URL) or a Google Play package name (com.instagram.android or a play.google.com URL). store (apple | google) is optional because it's inferred from the id. On search_apps it defaults to apple. country is a 2-letter storefront code (us, gb, de…). pages is 1–10, about 50 reviews each. lang (Google Play only, default en) picks the review language. review_insights also takes countries (pool up to 10 storefronts), since_version (choose the version to compare from), keyword_limit and quotes.
All tools are read-only. Errors come back as MCP tool errors (isError: true), prefixed invalid_input, upstream_error or internal_error.
review_insights { "app_id": "389801252", "countries": ["us", "gb"] } (Instagram for iOS, real call, October 2026, trimmed):
{
"sample": { "reviews": 300, "negativeReviews": 188, "byCountry": { "us": 150, "gb": 150 } }, "ratingDistribution": { "average": 2.42, "total": 300 }, "storeRating": { "averageRating": 4.69, "ratingCount": 29583259 }, "versionDeltas": { "basis": "version", "latest": { "label": "450.1.0", "reviews": 210, "averageRating": 2.17, "negativeShare": 0.695 }, "previous": { "label": "previous versions 448.0.0–450.0.0", "reviews": 90, "averageRating": 3.0, "negativeShare": 0.467 }, "change": { "averageRating": -0.83, "negativeShare": 0.228 }, "whatGotWorse": [ { "phrase": "ipad", "status": "new", "latestShare": 0.24, "previousShare": 0, "change": 0.24, "examples": [{ "rating": 1, "text": "iPad Update Ruined Reels. Tiny, unchangeable aspect ratio that hovers over the search page?…" }] }, { "phrase": "reels", "status": "increased", "latestShare": 0.281, "previousShare": 0.095, "change": 0.186 }, { "phrase": "full screen", "status": "new", "latestShare": 0.11, "previousShare": 0, "change": 0.11, "examples": [{ "rating": 1, "text": "Broken UI in latest update. Can no longer see full screen reels in iPad. They now crop reels to square format…" }] } ], "confidence": "high", "summary": "Version 450.1.0 (210 reviews) average 2.17★ vs 3.00★ for previous versions 448.0.0–450.0.0 (90 reviews), −0.83; negative share 69.5% vs 46.7% (+22.8 pp). Rising complaints: \"ipad\" (new, 24% of negative reviews), …" }, "complaintKeywords": [ { "phrase": "reels", "reviews": 45, "share": 0.239, "example": "…" }, { "phrase": "ipad", "reviews": 35, "share": 0.186, "example": "…" }, { "phrase": "account", "reviews": 34, "share": 0.181, "example": "…" }, { "phrase": "full screen", "reviews": 16, "share": 0.085, "example": "…" } ] }
search_apps { "term": "meditation", "store": "google", "limit": 3 }:
| id | name | developer | rating | installs |
|---|---|---|---|---|
| com.spotlightsix.zentimerlite2 | Insight Timer - Meditation App | Insight Network Inc | 4.70 | 10,000,000+ |
| meditofoundation.medito | Medito: Meditation & Sleep | Medito for Mindfulness, Meditation and Sleep | 4.79 | 1,000,000+ |
| com.getsomeheadspace.android | Headspace: Sleep & Meditation | Headspace for Meditation, Mindfulness and Sleep | 4.26 | 10,000,000+ |
compare_apps { "app_ids": ["324684580", "com.spotify.music"], "pages": 1 } compares Spotify on iOS and Android. It reports a 4.77 vs 4.35 store rating, a 4.18 vs 3.90 recent average, and 16% vs 28% negative reviews. Top Android complaints: premium, song, ads.
See demo/transcript.md for full, untrimmed responses from every tool.
Step-by-step recipes (release check, competitor teardown, iOS vs Android, a weekly watch in Claude Code) with real results and per-workflow cost: docs/workflows.md.
Pay-per-event: tool events are charged only for successful calls. Calls that fail validation or can't reach the store are not charged as tool events. Apify also charges its standard Actor start event ($0.00005 per GB of memory, minimum one event) each time a server instance starts. At the default 512 MB standby memory that's $0.00005 per start, and one running instance serves many calls before it idles out. The Pricing tab on this Actor is the authoritative list of current prices.
| Event | Price | Charged for |
|---|---|---|
search-apps | $0.002 | each App Store search_apps call |
review | $0.001 | each App Store review returned by get_app_reviews (50 reviews = 50 events; 0 reviews = no review events) |
review-insights | $0.03 | each App Store review_insights call, flat. Reviews analyzed internally are not charged as review events |
compare-apps | $0.05 | each compare_apps call with only App Store apps, flat however many apps or reviews |
Google Play calls are billed as separate events at the same prices: play-search $0.002 per search, play-review $0.001 per review, play-review-insights $0.03 per call, play-compare-apps $0.05 per comparison that includes any Google Play app.
Tip: review_insights and compare_apps cost the same however many reviews they analyze. For aggregates they are much cheaper than pulling hundreds of raw reviews.
Endpoint (Streamable HTTP):
https://parallelstudio--app-store-review-intelligence-mcp.apify.actor/mcp
Authenticate with your Apify API token by sending it as Authorization: Bearer .
~/.cursor/mcp.json or .cursor/mcp.json){
"mcpServers": { "app-store-reviews": { "url": "https://parallelstudio--app-store-review-intelligence-mcp.apify.actor/mcp", "headers": { "Authorization": "Bearer " } } } }
~/.codeium/windsurf/mcp_config.json){
"mcpServers": { "app-store-reviews": { "serverUrl": "https://parallelstudio--app-store-review-intelligence-mcp.apify.actor/mcp", "headers": { "Authorization": "Bearer " } } } }
claude_desktop_config.json)Claude Desktop's config file only launches local (stdio) servers, so bridge to the hosted endpoint with mcp-remote (needs Node.js). The same block works in any other client that only supports stdio:
{
"mcpServers": { "app-store-reviews": { "command": "npx", "args": [ "-y", "mcp-remote", "https://parallelstudio--app-store-review-intelligence-mcp.apify.actor/mcp", "--header", "Authorization: Bearer ${APIFY_TOKEN}" ], "env": { "APIFY_TOKEN": " " } } } }
Apify also accepts the token as a token query parameter, so a client that only takes a URL can use:
https://parallelstudio--app-store-review-intelligence-mcp.apify.actor/mcp?token=<APIFY_TOKEN>
Prefer the Authorization header when your client supports it: a token in a URL can end up in logs. A scoped Apify token limits the damage if it leaks.
claude mcp add --transport http app-store-reviews \
https://parallelstudio--app-store-review-intelligence-mcp.apify.actor/mcp \ --header "Authorization: Bearer $APIFY_TOKEN"
.vscode/mcp.json){
"servers": { "app-store-reviews": { "type": "http", "url": "https://parallelstudio--app-store-review-intelligence-mcp.apify.actor/mcp", "headers": { "Authorization": "Bearer ${input:apifyToken}" } } }, "inputs": [{ "id": "apifyToken", "type": "promptString", "description": "Apify API token", "password": true }] }
Four ready-made workflows, with the prompt, tool calls and real results in docs/workflows.md:
| Workflow | Tools | Tool-e
Only the beginning is shown; read the rest in the repo