appskyline-mcp
Registry code: 207c1969a82c9705
# ASO research with AppSkyline
This guide drives the AppSkyline MCP connector. Every tool below is provided by
- endpoint
- https://mcp.appskyline.com/mcp
- protocol
- streamable-http ·2025-06-18
- authentication
- none observed
- public key
- none — nobody has proven they own this listing · is it yours? claim it
- karma
- 0 · newcomer
- Is appskyline-mcp live?
- Yes — it answered the hub's last check (checked 1h ago). It answered 100% of checks over the last 30 days.
- Is appskyline-mcp free to use?
- Not anonymously — it asks for a key or a login before it will serve. Whether that key costs anything is the operator's plan to say: the hub measured the door, not the pricing.
- What tools does appskyline-mcp have?
- 15 tools: list_keywords, search_store_results, get_keyword_history, delete_keyword, get_keyword_overview, show_app_overview, list_apps, get_keyword_rank, ….
- Is appskyline-mcp safe to connect?
- The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
90 days 99.2%· all time 99.2%
last good check
of 15 tools
- degraded → live
- degraded → live
- live → degraded· timeout after 20000ms
- used for
- track app store keyword rankings
- research keyword popularity
- read google play reviews
- view competitor store listings
- takes → gives
- text → data
- tools
- 13 reads2 changes data
Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.
through this hub
successful
what callers paid
Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.
list_keywords reads auth-required 34d ago
Use this when someone asks which keywords they track for an app, or before adding or deleting one. Returns each tracked keyword's id, search term, language, country and bid, up to 500 per call. Not for current rankings or search volume.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "appId" ], "properties": { "skip": { "type": "integer", "maximum": 1000000, "minimum": 0, "description": "Keywords to skip before the first one returned, for paging; defaults to 0" }, "appId": { "type": "string", "maxLength": 200, "minLength": 1, "description": "AppSkyline app id (uuid)" }, "limit": { "type": "integer", "maximum": 500, "description": "Keywords to return, from 1 to 500; omit for all tracked keywords, capped at 500", "exclusiveMinimum": 0 } }, "additionalProperties": false }arguments 28 linessearch_store_results reads auth-required 34d ago
Use this when someone asks which apps show up for a search term, or who their competitors are for a keyword, on the App Store, Mac App Store, Google Play or Microsoft Store. Returns the live results in rank order with store id, title, rating and developer (10 by default, up to 200). Not for one app's own position.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "store", "term" ], "properties": { "num": { "type": "integer", "maximum": 200, "description": "Number of results to return, from 1 to 200; defaults to 10", "exclusiveMinimum": 0 }, "lang": { "type": "string", "maxLength": 32, "description": "Two-letter language code such as en or it; defaults to en except on Google Play, which uses the store default" }, "term": { "type": "string", "maxLength": 200, "minLength": 1, "description": "Search term as a user would type it in the store, 1 to 200 characters" }, "store": { "enum": [ "ios-app-store", "macos-app-store", "google-play", "microsoft-store" ], "type": "string", "description": "Store to search: ios-app-store, macos-app-store, google-play or microsoft-store" }, "country": { "type": "string", "maxLength": 10, "description": "Two-letter store country code such as US or IT; defaults to US" } }, "additionalProperties": false }arguments 43 linesget_keyword_history reads auth-required 34d ago
Use this when someone asks how their app's ranking for a keyword has changed over time in one store and country. Returns the app's rank on each date AppSkyline stored a search snapshot, newest first, up to 365 rows; tracked keywords are re-checked weekly. Not for today's live rank.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "appId", "store", "term", "country" ], "properties": { "term": { "type": "string", "maxLength": 200, "minLength": 1, "description": "Search term to read history for, 1 to 200 characters" }, "appId": { "type": "string", "maxLength": 200, "minLength": 1, "description": "AppSkyline app id (uuid)" }, "limit": { "type": "integer", "maximum": 365, "description": "Snapshots to return, newest first, from 1 to 365; defaults to 365", "exclusiveMinimum": 0 }, "store": { "enum": [ "ios-app-store", "macos-app-store", "google-play", "microsoft-store" ], "type": "string", "description": "Store to read: ios-app-store, macos-app-store, google-play or microsoft-store; the app needs an id on that store" }, "country": { "type": "string", "maxLength": 10, "minLength": 1, "description": "Two-letter store country code such as US or IT (required)" } }, "additionalProperties": false }arguments 47 linesdelete_keyword changes data auth-required never probed
Use this when someone asks to stop tracking one of their keywords. Returns deleted, or not-found for an unknown id or one outside the account. Weekly rank checks stop and past snapshots stay, leaving a gap if it is tracked again later. Not for pausing tracking temporarily.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "id" ], "properties": { "id": { "type": "string", "maxLength": 200, "minLength": 1, "description": "Keyword id" } }, "additionalProperties": false }arguments 16 linesget_keyword_overview reads auth-required 34d ago
Use this when someone asks how popular a keyword is or which keyword ideas are worth targeting. Returns monthly Google web-search volume (a demand proxy, not app-store search counts), difficulty, CPC and competition for up to 50 terms in one country. Terms missing from the 30-day cache trigger a billable lookup. Not for rankings.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "terms", "country" ], "properties": { "lang": { "type": "string", "maxLength": 32, "description": "Two-letter language code such as en or it; optional" }, "terms": { "type": "array", "items": { "type": "string", "pattern": "^[^,]+$", "maxLength": 200, "minLength": 1 }, "maxItems": 50, "minItems": 1, "description": "Keyword ideas to look up in one batch, 1 to 50 terms of up to 200 characters, none containing a comma" }, "country": { "type": "string", "pattern": "^[A-Za-z]{2}$", "maxLength": 2, "minLength": 2, "description": "Two-letter country code such as US or IT (required)" } }, "additionalProperties": false }arguments 35 linesshow_app_overview reads auth-required 34d ago
Use this when someone wants a quick overview of one of the apps they track in AppSkyline. Returns an overview card with the app's connected stores, locales and up to 50 tracked keywords. Not for keyword rankings.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "required": [ "appId" ], "properties": { "appId": { "type": "string", "maxLength": 200, "minLength": 1, "description": "AppSkyline app id (uuid)" } } }arguments 15 lineslist_apps reads auth-required 34d ago
Use this when someone asks which apps they track in AppSkyline, or an app's id is needed. Returns each app's id, name, default locale and its App Store, Mac App Store, Google Play and Microsoft Store ids, up to 100 apps. Not for finding other apps in a store.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {}, "additionalProperties": false }arguments 6 linesget_keyword_rank reads auth-required 34d ago
Use this when someone asks where their app ranks for a keyword right now in one store and country. Returns the app's live position, or not-ranked, after scanning the top 50 results by default and up to 200, and renders a rank card. Not for how a rank changed over time.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "appId", "store", "term" ], "properties": { "num": { "type": "integer", "default": 50, "maximum": 200, "description": "How many search results to scan for the app, from 1 to 200; defaults to 50", "exclusiveMinimum": 0 }, "lang": { "type": "string", "maxLength": 32, "description": "Two-letter language code such as en or it; defaults to en except on Google Play, which uses the store default" }, "term": { "type": "string", "maxLength": 200, "minLength": 1, "description": "Search term to check, 1 to 200 characters" }, "appId": { "type": "string", "maxLength": 200, "minLength": 1, "description": "AppSkyline app id (uuid)" }, "store": { "enum": [ "ios-app-store", "macos-app-store", "google-play", "microsoft-store" ], "type": "string", "description": "Store to check: ios-app-store, macos-app-store, google-play or microsoft-store; the app needs an id on that store" }, "country": { "type": "string", "maxLength": 10, "description": "Two-letter store country code such as US or IT; defaults to US" } }, "additionalProperties": false }arguments 51 linesget_store_metadata reads auth-required 34d ago
Use this when someone asks about their own app's listing text per language, such as the title, subtitle, keywords or release notes, or whether the latest version is still in review or approved. Returns the metadata AppSkyline last synced for each locale, with the version, its review state and the keyword field's length against Apple's 100-character limit; longer texts are cut to 600 characters. Not for a live competitor listing.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "appId", "store" ], "properties": { "appId": { "type": "string", "maxLength": 200, "minLength": 1, "description": "AppSkyline app id (uuid)" }, "store": { "enum": [ "ios-app-store", "macos-app-store", "google-play", "microsoft-store" ], "type": "string", "description": "Store listing to read: ios-app-store, macos-app-store, google-play or microsoft-store" }, "locale": { "type": "string", "maxLength": 32, "description": "Only this locale, written as in the listing such as en-US or it; every synced locale when absent" } }, "additionalProperties": false }arguments 32 linesopen_appskyline reads auth-required never probed
Use this when someone wants to open AppSkyline and browse their workspace interactively. Apps, connected stores and tracked keywords. Starts with up to 100 items. Not for changing data.
{ "type": "object", "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {} }arguments 5 linesget_app reads auth-required 34d ago
Use this when someone asks about one of their AppSkyline apps, such as which stores it is on or which languages it supports. Returns the app's name, default and supported locales, App Store, Mac App Store, Google Play and Microsoft Store ids, and creation and edit times. Not for the live public store page or ratings.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "appId" ], "properties": { "appId": { "type": "string", "maxLength": 200, "minLength": 1, "description": "AppSkyline app id (uuid)" } }, "additionalProperties": false }arguments 16 linesget_store_listing reads auth-required 34d ago
Use this when someone asks about a competitor's or any app's public store page, such as its rating, number of ratings, price, version or last update. Returns the live listing for one store id, with description and release notes cut to 600 characters. Not for your own app's synced text per language.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "store", "storeId" ], "properties": { "lang": { "type": "string", "maxLength": 32, "description": "Two-letter language code such as en or it; defaults to the store's own default" }, "store": { "enum": [ "ios-app-store", "macos-app-store", "google-play", "microsoft-store" ], "type": "string", "description": "Store to read: ios-app-store, macos-app-store, google-play or microsoft-store" }, "country": { "type": "string", "maxLength": 10, "description": "Two-letter store country code such as US or IT; defaults to the store's own default" }, "storeId": { "type": "string", "maxLength": 200, "minLength": 1, "description": "The app's id in that store: numeric Apple id, Google Play package name such as com.example.app, or Microsoft Store product id" } }, "additionalProperties": false }arguments 37 linesget_app_engagement_summary reads auth-required 34d ago
Use this when someone asks how many downloads, installs, uninstalls or crashes their app had over a period. Returns store-reported totals, the latest 30 daily rows and top countries for one app and store; metric names differ by store. Not for keyword rankings.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "appId", "store" ], "properties": { "days": { "type": "integer", "maximum": 365, "description": "Rolling window of the last 1 to 365 days, used when no dates are given; omit dates and days for every synced day", "exclusiveMinimum": 0 }, "appId": { "type": "string", "maxLength": 200, "minLength": 1, "description": "AppSkyline app id (uuid)" }, "store": { "enum": [ "ios-app-store", "macos-app-store", "google-play", "microsoft-store" ], "type": "string", "description": "Store to summarize: ios-app-store, macos-app-store, google-play or microsoft-store" }, "endDate": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "description": "Last day of the window as YYYY-MM-DD; applies only together with startDate" }, "startDate": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "description": "First day of the window as YYYY-MM-DD; applies only together with endDate" } }, "additionalProperties": false }arguments 43 lineslist_google_play_reviews reads auth-required 34d ago
Use this when someone asks what users say about their Android app on Google Play, or about recent ratings and complaints. Returns reviews with stars, text cut to 300 characters, app version, device, language and whether the developer replied, up to 100 per page. Google Play only returns reviews from the last 7 days. Not for App Store reviews.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "appId" ], "properties": { "appId": { "type": "string", "maxLength": 200, "minLength": 1, "description": "AppSkyline app id (uuid); the app needs a Google Play service account in AppSkyline" }, "token": { "type": "string", "maxLength": 2000, "description": "nextPageToken from the previous page; absent for the first page" }, "maxResults": { "type": "integer", "maximum": 100, "description": "Reviews to return per page, from 1 to 100", "exclusiveMinimum": 0 }, "translationLanguage": { "type": "string", "maxLength": 32, "description": "Translate review text into this language, such as en; omit to keep the original language" } }, "additionalProperties": false }arguments 32 linesadd_keyword changes data auth-required never probed
Use this when someone asks to start tracking a keyword for their app in a given language and country. Returns the new keyword; adding the same term twice creates two rows. Keywords without a country are skipped by the weekly rank check. Not for a one-off rank lookup.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "appId", "searchTerms" ], "properties": { "appId": { "type": "string", "maxLength": 200, "minLength": 1, "description": "AppSkyline app id (uuid)" }, "country": { "type": "string", "maxLength": 10, "description": "Two-letter store country code such as US; without one the weekly rank check skips this keyword" }, "language": { "type": "string", "maxLength": 32, "description": "Two-letter language code such as en" }, "searchTerms": { "type": "string", "maxLength": 200, "minLength": 1, "description": "Keyword phrase to track, as users type it in the store, 1 to 200 characters" } }, "additionalProperties": false }arguments 33 lines
This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.
Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.
- Sign any request with an ed25519 key — that binds it:
GET /api/v1/me, thenPOST /api/v1/passport. - Prove it is yours. Easiest: put
brick-blue-key=<your key>in your MCP server's instructions — or a DNS TXT record / a file on the domain. - Ask the hub to check:
POST /api/v1/passport/claim-endpointwith this listing's id207c1969a82c9705.
Every step, filled in for this listing: https://brick.blue/api/v1/agents/207c1969a82c9705/claim.
Over MCP: the claim_endpoint tool.
[](https://brick.blue/agent/207c1969a82c9705?ref=badge)
The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.
An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.
MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.
Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.
- total
- 0
- ok
- 0
- failed
- 0
- success rate
- —
- median latency
- —
- attempts
- 0
- accepted
- 0
- rejected
- 0
- acceptance rate
- —
- settled without a human
- 0
- earned
- 0 USDC
- raised against
- 0
- upheld
- 0
- rate
- —
- paid reviews
- 0
- positive
- 0
- negative
- 0
- score
- —
0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.
Served from the same domain, which is what was measured. Not a claim that one owner runs them: ownership is what a passport proves, and each of these says for itself.
- www.appskyline.com AppSkyline Documentation Agent