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

@sonarapp/mcp

v0.2.0

Published

Sonar MCP server — App Store Optimization tools for AI agents (Claude, Cursor, Cline)

Readme

@sonarapp/mcp

npm license

The official Sonar MCP server — App Store Optimization tools for AI agents.

Lets Claude Desktop, Claude Code, Cursor, Cline, and any Model Context Protocol-compatible client look up apps, research keywords, audit ASO, mine reviews, and estimate revenue across the iOS App Store and Google Play. Powered by Sonar.


Tools

| Tool | What it does | |-|-| | sonar_app_lookup | Look up app metadata by store ID | | sonar_app_search | Search apps by keyword (returns store ranking order) | | sonar_app_aso_score | ASO audit score (0-100) with itemized checks | | sonar_app_extract_keywords | Extract target keywords from an app's listing | | sonar_app_reviews | Fetch reviews with rating filters and sort options | | sonar_app_revenue | Estimate monthly revenue with methodology | | sonar_keyword_search | Keyword research (difficulty, popularity, related terms) | | sonar_keyword_suggestions | Autocomplete suggestions from the store |

All tools are read-only, stateless, and work with both iOS and Android.

Get an API key

You'll need a Sonar API key — get one at trysonar.app/developers.

The cheapest path is the Agent Plan ($9/month), which is API-only with no rate limit and is built specifically for this use case. See pricing.

Install

Claude Desktop

Add to your config file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):

{
  "mcpServers": {
    "sonar": {
      "command": "npx",
      "args": ["-y", "@sonarapp/mcp"],
      "env": {
        "SONAR_API_KEY": "aso_your_key_here"
      }
    }
  }
}

Restart Claude Desktop. The 8 sonar_* tools will appear in the tool picker.

Claude Code

claude mcp add sonar -e SONAR_API_KEY=aso_your_key_here -- npx -y @sonarapp/mcp

Cursor

Add to ~/.cursor/mcp.json (or your project's .cursor/mcp.json):

{
  "mcpServers": {
    "sonar": {
      "command": "npx",
      "args": ["-y", "@sonarapp/mcp"],
      "env": {
        "SONAR_API_KEY": "aso_your_key_here"
      }
    }
  }
}

Cline / other MCP clients

Most clients use the same command + args + env shape as above. Point the command at npx -y @sonarapp/mcp and pass SONAR_API_KEY in the env.

Configuration

| Variable | Required | Default | Description | |-|-|-|-| | SONAR_API_KEY | yes | — | Your Sonar API key (aso_...) | | SONAR_API_URL | no | https://trysonar.app | Override the API base URL (only used for self-hosting / staging) |

Example prompts

"Use Sonar to look up Spotify on iOS in the US store and report its rating, review count, and category."

"Run an ASO audit on com.duolingo on Android and tell me what to fix."

"Research the keyword 'habit tracker' on iOS — give me difficulty, popularity, and 5 related terms with lower difficulty I should consider."

"Pull the 50 most recent 1- and 2-star reviews of 1517783697 on iOS US and group complaints by theme."

"Search 'meditation' on the App Store and estimate monthly revenue for the top 5 results."

Privacy & data flow

The MCP server is a thin client around Sonar's REST API. Your API key is sent as a Bearer token over HTTPS. Tool inputs and the resulting JSON are passed to your AI client; no data is logged by this package itself.

Troubleshooting

"SONAR_API_KEY is not set" — The MCP client did not pass the env var through. Check the env section of your client's config file. Some clients require an absolute path to npx — try which npx and use that.

"Authentication failed" — Your key is invalid, expired, or your subscription lapsed. Visit trysonar.app/developers to check.

"Access denied. Endpoint may require Full plan" — All 8 MCP tools are available on Agent and Full plans. If you're on a setup or trial-expired plan, reactivate first.

Companion: CLI

Prefer the terminal? Use @sonarapp/cli (sonar binary) — same data, same API key.

License

MIT © Peter Sutarik