npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

mogut

v0.1.0

Published

Read-only App Store growth (ASO) analysis MCP server for iOS and Mac App Store apps

Downloads

49

Readme

Mogut

Read-only App Store growth analysis MCP server for the Apple ecosystem (iOS + Mac App Store).

Mogut never writes to the App Store. Write actions are handed off as ready-to-run Heimdall tool calls that the user approves.

Status: Faz 1 (core MCP: profile system, meta tools, setup wizard, credential standard, SQLite layer). Data sources land in Faz 2, analysis engines in Faz 3, reports in Faz 4.

Install

npm install -g mogut
mogut setup

The wizard registers Mogut with the MCP clients it finds (Claude Code & Desktop, Codex, Cursor, VS Code, Windsurf, Antigravity) — restart the client once afterwards.

0.1.x is the core, not the product yet. This release ships the server, the profile system, the meta tools and the setup wizard. The data sources land in 0.2 (Faz 2), the analysis engines in 0.3, and the report tools — the reason to install this — in 0.4. Until then mogut_status, mogut_discover_sources and mogut_search_tools work and the rest of the catalog answers "planned for phase X".

The wizard stores credentials in the macOS Keychain (com.milowda.credentials) with a .env fallback. Secrets are entered in the terminal only — never in chat, never logged, never displayed.

MCP config

{
  "mcpServers": {
    "mogut": { "command": "mogut", "args": [] }
  }
}

Ten tools are exposed by default (6 meta + 4 orchestrators). Every other tool is opt-in per profile: set MOGUT_PROFILES="keyword,competitor" (or "all"). Use mogut_search_tools to find a tool and it will tell you which profile to enable.

Tiers

| Tier | Needs | Unlocks | |---|---|---| | 0 | nothing | all public sources — a full report is produced, marked low confidence | | 1 | App Store Connect key | your own analytics, sales, reviews, metadata | | 2 | + Apple Ads OAuth | real keyword popularity and search term reports | | 3 | + a connector (RevenueCat/PostHog) | revenue-per-keyword analysis |

mogut_status shows the current tier and what the next one would add.

Advanced: Apple Ads popularity index

The official Apple Ads API has no popularity index (MIL-227) — the number the Ads UI shows comes from an undocumented endpoint on app-ads.apple.com that authenticates with a web session, not OAuth. Mogut can read it, but the wizard does not ask for it: it is a pasted browser cookie, it expires, and using it is a grey area against the Apple Ads terms. Without it, keyword_popularity_fetch falls back to a proxy score marked low confidence.

If you want it anyway:

  1. Log in at https://app-ads.apple.com and open any campaign screen.
  2. Open devtools → Network, filter on /cm/api, click one request.
  3. Copy that request's Cookie request header, whole.
  4. export MOGUT_APPLE_ADS_SESSION='<the cookie header>' in the environment your MCP client launches Mogut from — or store it under the apple-ads-session account of the com.milowda.credentials Keychain service.

Re-do it when the session expires. mogut_discover_sources shows the source as down once the endpoint starts refusing.

Development

npm install && npm run build && npm test

src/core/catalog.ts is generated from docs/TOOL_KATALOG.md — regenerate with node scripts/gen-catalog.mjs.

MIT.