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

appstore-rejections-mcp

v1.0.3

Published

MCP server for App Store rejection reasons, solutions, and real-world cases

Readme

appstore-rejections-mcp

An MCP (Model Context Protocol) server that gives AI assistants access to a curated database of Apple App Store rejection reasons, solutions, and real-world cases.

Built on a database of 48 rejection reasons, 51 solutions, 554 real-world cases, and all 130 Apple Review Guideline subsections.

WebsitenpmGitHubContributing

Tools

| Tool | Description | |------|-------------| | search_rejections | Semantic search — paste Apple's rejection message or describe the issue | | get_rejection_reason | Full details for a specific rejection reason (Apple's message, tags, categories) | | get_solutions | Step-by-step fixes with code examples, difficulty, and success rates | | get_guideline | Look up Apple Review Guidelines by number (e.g. 2.1, 4.3, 5.1.1) | | list_common_rejections | Top rejection reasons ranked by frequency | | get_cases | Real-world cases filtered by reason, app category, or appeal status |

Installation

Claude Code (Recommended - Easiest)

Run this command in your terminal:

claude mcp add --transport stdio appstore-rejections -- npx -y appstore-rejections-mcp

That's it! Reload Claude Code and the MCP server will auto-connect.

Cursor

Add to your Cursor config file:

  • macOS/Linux: ~/.cursor/mcp.json
  • Windows: %APPDATA%\Cursor\mcp.json
{
  "mcpServers": {
    "appstore-rejections": {
      "command": "npx",
      "args": ["-y", "appstore-rejections-mcp"]
    }
  }
}

Save the file, restart Cursor, and it will auto-connect.

Claude Desktop (Legacy - Global)

Add to your Claude Desktop config:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "appstore-rejections": {
      "command": "npx",
      "args": ["-y", "appstore-rejections-mcp"]
    }
  }
}

Usage Examples

Once connected, your AI assistant can:

Search for a rejection reason:

"My app was rejected for guideline 4.3, what does that mean?"

Get solutions:

"How do I fix an App Store rejection for missing privacy policy?"

Review your app before submission:

"Review my iOS app codebase for potential App Store rejections"

Look up guidelines:

"What does Apple guideline 5.1.1 say?"

Find real-world cases:

"Show me cases where Finance apps were rejected and the developer appealed"

Data Coverage

  • 48 documented rejection reasons with Apple's actual message templates
  • 51 solutions with implementation steps and code examples
  • 554 real-world cases sourced from Reddit, Stack Overflow, Apple Forums, and developer blogs
  • 130 Apple Review Guideline subsections across all 5 sections
  • 50 app categories tracked
  • Semantic search powered by pgvector embeddings

Requirements

  • Node.js >= 18

Quick Start

For Claude Code Users

claude mcp add --transport stdio appstore-rejections -- npx -y appstore-rejections-mcp

Then in Claude Code, ask:

"Check my iOS app for potential App Store rejections"

For Everyone Else

See Installation section above for Cursor, Claude Desktop, and other setup methods.


Real-World Example

User asks Claude Code:

"My iOS app was rejected for guideline 4.3. What does that mean and how do I fix it?"

Claude uses the MCP tools to:

  1. Look up guideline 4.3
  2. Find related rejection reasons
  3. Get step-by-step solutions
  4. Show real cases where developers fixed similar issues
  5. Provide code examples and best practices

How It Works

The MCP server connects your AI assistant to:

  • 48 Rejection Reasons - Apple's actual rejection messages and patterns
  • 51 Solutions - Step-by-step fixes with difficulty ratings
  • 554 Real Cases - Community experiences and appeals
  • 130 Guidelines - Full Apple Review Guideline subsections
  • Semantic Search - Powered by vector embeddings for smart matching

For Developers

Building from Source

git clone https://github.com/RobertoJoseph/appstore-rejections-mcp.git
cd appstore-rejections-mcp
npm install
npm run build

Environment Variables (Optional)

For custom Supabase instance:

SUPABASE_URL=your-url
SUPABASE_ANON_KEY=your-key

See CONTRIBUTING.md for more details.


Community


Changelog

v1.0.2 - Cleaned up README, clearer installation instructions v1.0.1 - Fixed invalid API key error v1.0.0 - Initial release


Built By

Roberto Joseph - LinkedInTwitterTikTok


License

MIT - See LICENSE file for details


Made with ❤️ for iOS developers everywhere 🚀