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 keyword ranks, rivals, reviews and AI visibility. Free plan included.
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.
STORELIFT_API_KEY, STORELIFT_API, 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.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"storelift": {
"command": "npx",
"args": [
"-y",
"storelift-mcp"
],
"env": {
"STORELIFT_API_KEY": "your-value",
"STORELIFT_API": "your-value"
}
}
}
}Run this in your terminal
claude mcp add --transport http storelift https://storelift.net/mcp --header 'Authorization: your-value'claude mcp add storelift --env STORELIFT_API_KEY=your-value --env STORELIFT_API=your-value -- npx -y storelift-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"storelift": {
"url": "https://storelift.net/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"storelift": {
"command": "npx",
"args": [
"-y",
"storelift-mcp"
],
"env": {
"STORELIFT_API_KEY": "your-value",
"STORELIFT_API": "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": {
"storelift": {
"type": "http",
"url": "https://storelift.net/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Paste into .vscode/mcp.json in your project
{
"servers": {
"storelift": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"storelift-mcp"
],
"env": {
"STORELIFT_API_KEY": "your-value",
"STORELIFT_API": "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.
STORELIFT_API envAuthorization secret HTTP headerThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
We have not read this server’s tool list yet; we check endpoints in rotation.
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 7, 2026
The registry name was verified against the domain storelift.net (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Not checked yet; we check endpoints in rotation
Not checked yet; we check endpoints in rotation
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 1 of 1 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: STORELIFT_API_KEY, Authorization
Either way works: install it on your computer or connect to the cloud version.
The GitHub repo last changed –, and the latest version (1.5.1) reached the registry 9 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, TF Rooms
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.
Live room availability, rates and stay quotes for 12 New Leaf motels in Twin Falls, Idaho.
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.
Storelift MCP server: App Store and Google Play keyword rank tracking for Claude, ChatGPT, Cursor and any MCP client. The remote server is included on every Storelift plan, including Free (1 app, 25 keywords in each of 2 storefronts, no end date).
Ask your assistant which keywords you dropped on, who outranks you, what your reviews say and how your listing changed, without opening a dashboard. The server carries 85 tools for keyword ranks, rivals, store pages, reviews, charts, market data, Apple Ads and AI visibility. No store credentials are required for ranks and rivals. Every change (tracking, listing text, review replies, Apple Ads budgets) is previewed first and applied only after you confirm it.
| Free | Pro | Studio | |
|---|---|---|---|
| Price | $0, no card, no end date | $20/month or $200/year | $60/month or $600/year |
| Apps | 1 | 5 | Unlimited |
| Tracked keywords (keyword × storefront) | 25 in each of 2 storefronts (50) | 2,500 | 10,000 |
| Storefronts per app | 2 | All 175 | All 175 |
| Keyword rank history | 30 days | 6 months | 1 year |
| Seats | 1 | 3 | 10 |
Remote MCP server (https://storelift.net/mcp) | Included | Included | Included |
Public API and local MCP server (npx storelift-mcp) | Not included | Included | Included |
| AI visibility runs a month (panel) | 0 | 3 | 60 |
AI visibility through MCP (ai:read) | Not included | Not included | Included |
Enterprise (contact us) adds 25,000 tracked keywords, 25 seats and 180 AI visibility runs a month. Plan details and the 7-day Pro trial terms are on the pricing page.
sl_test_) returns sample data and is not a live-data credential.ai:read scope. Pro's AI visibility runs in the Storelift panel are a separate allowance and do not open these tools.Endpoint: https://storelift.net/mcp over Streamable HTTP. Clients that support MCP authorization sign you in to Storelift with OAuth and ask you to approve access; no key to paste.
Claude (claude.ai and Claude Desktop): Settings → Connectors → Add custom connector, URL https://storelift.net/mcp. Step-by-step guide.
Claude Code (guide):
claude mcp add --transport http storelift https://storelift.net/mcp
Cursor (.cursor/mcp.json in a project or ~/.cursor/mcp.json; guide):
{
"mcpServers": { "storelift": { "url": "https://storelift.net/mcp" } } }
ChatGPT and other MCP clients: add https://storelift.net/mcp as a remote (Streamable HTTP) MCP server where the client allows custom connectors.
Clients without OAuth can send a live API key as a header instead:
claude mcp add --transport http storelift https://storelift.net/mcp --header "Authorization: Bearer sl_live_..."
Claude Code:
claude mcp add storelift -e STORELIFT_API_KEY=sl_live_... -- npx -y storelift-mcp
Claude Desktop (claude_desktop_config.json) or Cursor (mcp.json):
{
"mcpServers": { "storelift": { "command": "npx", "args": ["-y", "storelift-mcp"], "env": { "STORELIFT_API_KEY": "sl_live_..." } } } }
For a first read, create the key with apps:read only and add other scopes when you need them. Tools whose scope the key does not carry are left out of the list.
storelift-mcp 1.5.0 and the remote endpoint carry the same 85 tools.
| Tool | Returns |
|---|---|
list_apps | tracked apps (id, name, countries, keywords) |
get_keywords | keyword ranks for one app in one country |
get_rivals | apps ranking above you, with their rank and yours |
get_ai_visibility | a dated sample of answers per measured engine; Studio/Enterprise and ai:read required; not what every user sees |
run_ai_visibility_check | starts an AI visibility sample using an available AI visibility run; Studio/Enterprise and ai:read required |
get_history | rank history, [day, rank] points |
get_store_page | your own listing signals (languages, star breakdown, in-app events, promotional text, featured in-app purchases) + the Google Play page, with a dated change timeline |
get_reviews | recent App Store and Google Play reviews, and how many are new since last measurement |
search_reviews | search reviews by text, star rating, version and date range, up to 1,000 rows from the full archive |
get_review_stats | rating distribution, day-by-day curve and per-version breakdown |
summarize_reviews | Review AI: summary and themes of the recent reviews, each theme with quoted reviews (stored summary reused the same day) |
draft_review_reply | a reply draft for one review, from the stored review text plus your note |
get_listing_timeline | dated listing changes (version, screenshots, events, featuring, keyword field), each with the rank movement around it |
get_chart_movers | risers, fallers and new entrants in the app's own category, with the app's and its rivals' place (Pro) |
get_featuring | editorial cards, In-App Events and the similar-apps shelf per country, with dated history |
list_alerts | the workspace's alert feed and unread count |
get_portfolio_overview | today across every app: users, revenue, trials, totals and the subscription feed |
get_today | one app's day: purchases and trials, new reviews, rank and category moves, new entrants, events and yesterday's store figures |
get_keyword_competition | how many apps compete on each keyword |
get_rival_detail | a rival's rating history and the keywords it ranks for (one keyword spy, open for 30 days) |
get_rival_ad_networks | the ad networks a rival works with, DIRECT or RESELLER |
get_rival_market | a rival's installs and in-app price range on Google Play, price and rating count on the App Store |
get_storefront_audit | your iOS listing across every storefront: where it is sold, which storefronts serve fallback text or screenshots |
check_rank | the live rank of any app for any term in one storefront, tracked or not |
get_keyword_metrics | demand, related searches and difficulty inputs (top results' rating counts, title matches) for one term |
suggest_keywords | new keyword ideas in the storefront's search language, each with who searches it and why (one AI writing credit) |
validate_listing | checks a draft listing: character limits, wasted keyword-field room, repeats, language and script, tracked keywords left out |
localize_listing | full listing for a new locale, keywords measured in that storefront, screenshot captions with shots; background job read with poll (one listing write) |
draft_listing | title, subtitle, promotional text and description drafted from the measured keywords, with character counts and review checks (one AI writing credit) |
get_screenshot_text | the caption text on your first four screenshots |
get_charts | App Store chart position per list, with history |
whoami | plan, authentication method, scopes, readable apps and credit balance (0 credits) |
get_usage | every quota with used / limit / reset, today's Hive allowance and the rate (0 credits) |
search | search your own apps, tracked keywords and rivals → ids for fetch |
fetch | the full record behind a search id |
get_app | one app: ids, countries, keywords per country, latest snapshot |
get_revenue | App Store Connect / Google Play units and RevenueCat MRR, subscriptions, trials for one app (revenue:read) |
get_subscription_events | RevenueCat / Adapty event counts per day, country and cohort (revenue:read) |
get_store_funnel | App Store impressions → page views → downloads with history (revenue:read) |
get_ads_keywords | Every Apple Ads keyword: bid, spend, CPT, CPA, conversion, with the organic rank beside it (ads:read) |
get_ads_search_terms | The searches that triggered the ads, with the organic rank beside each (ads:read) |
get_ads_command_status | Apple Ads commands for the app's campaigns: queued, applying, applied or failed (ads:read) |
get_search_popularity | search popularity for the app's category and which tracked keywords are in it (ads:read) |
get_pricing_offers | Prices in force per product and country, fixed-price periods with their conversions and revenue, offer codes (revenue:read) |
get_country_prices | Each country's price against Apple's automatic price and the median of rivals that localize, with a suggested attractive price (revenue:read, Pro) |
get_change_impact | Before and after a change day, side by side: ranks, App Store funnel, downloads, subscription revenue (revenue:read) |
get_weekly_plan | This week's ASO plan: the next tasks with the measurement behind each, where the keyword sits now and what clears it (apps:read, Pro) |
get_ads_campaigns | Apple Ads campaigns promoting the app: spend, taps, installs, keywords (ads:read) |
get_job | status of a job started by a confirmed action: queued / running / done / failed (0 credits) |
These read the whole App Store, not just your apps. They need hive:read and draw on the same credit balance as the Storelift API — one meter for both.
| Tool | What it answers |
|---|---|
find_apps | find apps across the charts we measure: category, storefront, chart, rank band, first-seen date, name or publisher, monthly revenue, monthly downloads or 30-day growth; every row carries its monthly revenue and downloads with the day they were computed |
market_charts | one top chart as we last measured it, with the day it was read |
market_movers | who climbed, fell, entered or left a chart against N days ago; every delta sits between two measured days and the answer names both |
market_new_apps | apps seen on a chart for the first time, newest first, with their publisher |
| market_publisher | every app of one publisher we have seen on a chart, with the day each was first seen
Only the beginning is shown; read the rest in the repo