Skip to main content
Glama
RobertoJoseph

appstore-rejections-mcp

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

Related MCP server: appstore-intel-mcp

Installation

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 🚀

A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/RobertoJoseph/appstore-rejections-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server