# StoreScope Analytics

> One dashboard for teams that ship apps on the App Store, Google Play and the Microsoft Store: downloads, conversion, revenue, subscriptions, reviews and keyword ranks, next to each app's web search, website traffic, product usage, crash data and developer channels, with an MCP server and an API. Made by Devino.

## What it does

- Store numbers in one place: downloads, product-page views, impressions and conversion for each app on the App Store, Google Play and the Microsoft Store. Every number carries its quality flag (exact, lagged, privacy_noised, legacy_untrusted or proxy). Conversion uses each store's own denominator (App Store: unique impressions; Google Play: page views).
- Revenue and subscriptions: proceeds and subscription metrics from Apple sales reports (with your vendor number) and Google Play earnings, one line per currency, never a cross-currency total. The Microsoft Store analytics API has no revenue, so none is shown.
- Reviews inbox: every store's reviews, unanswered low ratings first. Replies are previewed and sent one at a time. Optional new-review alerts to Discord or Slack, and optional AI reply drafts with your own Anthropic API key.
- Keyword ranks: where each app ranks in the public App Store, Google Play and Microsoft Store search for the keywords you track (up to 25 keywords and 10 countries per app). A rank is a proxy: one un-personalised view of the storefront search.
- Listing suggestions: proposed store-listing changes that cite the rows they came from.
- Web search and traffic for each app's website: clicks, impressions and click-through rate from Google Search Console and Bing Webmaster Tools (average position from Search Console only), and sessions, users, new users and channels from Google Analytics 4.
- Usage and stability: daily users, sessions, events and page views from PostHog, and errors and crash-free sessions from Sentry, next to each app's downloads.
- Developer channels: GitHub views, unique visitors, clones, stars and referring sites per repository; npm and PyPI downloads of the packages you list (a proxy); whether the official MCP Registry lists the app.

## Sources you can connect

- App Store Connect: a team API key (.p8, key id, issuer id); the vendor number is optional and adds sales and subscriptions.
- Google Play Console: a service account JSON key and the account's reports bucket.
- Microsoft Partner Center: a Microsoft Entra app (tenant id, client id, client secret).
- Google Search Console and Google Analytics 4: a Google service account added as a user.
- Bing Webmaster Tools: an API key.
- PostHog: a personal API key (PostHog Cloud US or EU).
- Sentry: a personal token (sentry.io US or DE).
- GitHub: a fine-grained token (Administration read for traffic, Metadata read).
- npm, PyPI and keyword ranks need no connection: they read public data.

## Connect an AI assistant (MCP) or call the API

- MCP endpoint: https://storescope.devino.ca/mcp (remote MCP over HTTP POST, stateless JSON-RPC, no SSE). It serves the 38 StoreScope Analytics tools a workspace can use.
- OAuth 2.1 sign-in for MCP clients that support it: the client discovers the server from https://storescope.devino.ca/.well-known/oauth-protected-resource, then you sign in, pick a workspace and approve. Read access by default; making changes is a separate permission, unticked unless you tick it. Disconnecting the app on the MCP & API page stops it at once.
- Or a workspace API key (read, or read and write) sent as `Authorization: Bearer <key>`, created on the MCP & API page.
- The same tools over REST: `POST https://storescope.devino.ca/api/tools/<tool name>` with a JSON body of the tool's arguments and the same key.
- Review replies are previewed first and sent only when repeated with the confirmation token issued for those exact arguments. A keyword set is the workspace's own list and is saved at once.
- Step by step, with every tool: https://storescope.devino.ca/docs

## Account

- Early access. Sign up with an e-mail address at https://storescope.devino.ca/signup; creating an account and a workspace costs nothing today.
- One account and one set of connections serve both products: StoreScope Analytics (https://storescope.devino.ca/) and Storevisor (https://storevisor.devino.ca/).
- Store connections are checked live with the store before they are saved, stored encrypted, and used only for your workspace. Each workspace has its own data store.

## Links

- [MCP docs](https://storescope.devino.ca/docs): connecting an AI assistant, the write rule, every tool
- [Connect your stores](https://storescope.devino.ca/docs/connect.md): one guide per connection, with the role to create and the errors the check can show
  - [Connect App Store Connect: API key and role](https://storescope.devino.ca/docs/connect/app-store-connect.md)
  - [Connect Google Play: service account and bucket](https://storescope.devino.ca/docs/connect/google-play.md)
  - [Connect Microsoft Partner Center: Entra app](https://storescope.devino.ca/docs/connect/microsoft-partner-center.md)
  - [Connect GitHub: a read-only fine-grained token](https://storescope.devino.ca/docs/connect/github.md)
  - [Connect Google Search Console: service account](https://storescope.devino.ca/docs/connect/search-console.md)
  - [Connect Google Analytics 4: service account](https://storescope.devino.ca/docs/connect/google-analytics.md)
  - [Connect Bing Webmaster Tools: API key](https://storescope.devino.ca/docs/connect/bing-webmaster-tools.md)
  - [Connect PostHog: personal API key](https://storescope.devino.ca/docs/connect/posthog.md)
  - [Connect Sentry: personal token](https://storescope.devino.ca/docs/connect/sentry.md)
  - [Review alerts to Discord or Slack](https://storescope.devino.ca/docs/connect/review-alerts.md)
  - [AI review replies with your Anthropic key](https://storescope.devino.ca/docs/connect/ai-replies.md)
- [API reference](https://storescope.devino.ca/docs/api.md): REST requests, the write rule, limits and every tool's arguments; OpenAPI 3.1 at https://storescope.devino.ca/openapi.json
- [Error codes](https://storescope.devino.ca/docs/errors.md): every refusal the MCP server and the API can answer
- [Live sample](https://storescope.devino.ca/demo): the dashboard over three fictional apps with made-up numbers, no sign-up
- [Changelog](https://storescope.devino.ca/changelog): what shipped, newest first ([RSS](https://storescope.devino.ca/changelog.xml))
- [Sign up](https://storescope.devino.ca/signup)
- [Sign in](https://storescope.devino.ca/login)
- [Support](https://storescope.devino.ca/support)
- [Storevisor](https://storevisor.devino.ca/): the other product on the same account
- [Devino](https://devino.ca): the company that builds it
