About ApproveKit
ApproveKit is a Claude Code plugin and remote MCP server for developers preparing apps for App Store, Google Play, or Google OAuth review. It audits a repo-derived inventory against review rules and can generate and host required documents.
Key features
- 01Repo-based app inventory
- 02Audit across 23 review rules
- 03Findings with fixes and source links
- 04Generate and host review documents
- 05Checkout only after user approval
Use cases
- 01Check an app before store submission
- 02Identify Google OAuth verification gaps
- 03Prepare privacy and account-deletion pages
MCP support
The remote MCP server exposes tools to audit an app, create a checkout after approval, check an order, and publish finalized documents.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://approvekit.dev/mcpclaude mcp add --transport http dev-approvekit-approvekit https://approvekit.dev/mcp{"mcpServers":{"dev-approvekit-approvekit":{"type":"http","url":"https://approvekit.dev/mcp"}}}Open in Cursor{"servers":{"dev-approvekit-approvekit":{"type":"http","url":"https://approvekit.dev/mcp"}}}Open in VS Code{"mcpServers":{"dev-approvekit-approvekit":{"type":"http","url":"https://approvekit.dev/mcp"}}}{"mcpServers":{"dev-approvekit-approvekit":{"serverUrl":"https://approvekit.dev/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
4| Parameter | Type | Required | Description |
|---|---|---|---|
| app_token | string | No | The app_token returned by audit_app. It is stored in .approvekit.json at the project root. Omit on the first audit of an app. |
| inventory | object | Yes | |
| inventory.stack | any | No | How the app is built. Expo config plugins add permission strings automatically, so some checks differ. |
| inventory.app_name | string | Yes | |
| inventory.platforms | array | Yes | |
| inventory.bundle_ids | any | No | iOS bundle identifier and Android application id. |
| inventory.permissions | array | No | iOS usage-description keys and Android permissions the app declares, e.g. NSCameraUsageDescription, android.permission.READ_CONTACTS. |
| inventory.support_email | string | Yes | Public contact address for privacy and deletion requests. |
| inventory.auth_providers | array | No | How users sign in, e.g. "Sign in with Apple", "Google", "email and password", "Supabase Auth". |
| inventory.data_collected | array | No | |
| inventory.developer_name | string | Yes | Legal name that appears in the policies, usually the company or the individual developer. |
| inventory.takes_payments | boolean|null | No | |
| inventory.third_party_sdks | array | No | SDKs found in the dependencies, e.g. "Firebase Analytics", "RevenueCat", "Sentry". |
| inventory.has_user_accounts | boolean | Yes | True if users can sign up or log in. |
| inventory.android_target_sdk | any | No | targetSdkVersion from build.gradle, if known. |
| inventory.privacy_policy_url | any | No | Existing privacy policy URL, if any. |
| inventory.google_oauth_scopes | array | No | Full Google OAuth scope URLs the app requests, if it uses Sign in with Google or Google APIs. |
| inventory.account_deletion_url | any | No | Existing public page where users can request account deletion, if any. |
| inventory.play_developer_account | any | No | Google Play account type: personal created after 2023-11-13 (closed-testing requirement applies), personal created before, or organization. Ask the user. |
| inventory.account_deletion_in_app | boolean|null | No | True if the app already lets users delete their account from inside the app. |
Details
From the project READMEApproveKit
Get AI-built apps through App Store review, Google Play review and Google OAuth verification.
ApproveKit is a Claude Code plugin plus a remote MCP server. Your coding agent reads the repo, builds an inventory of what the app collects, and runs a free audit against the rules reviewers actually apply. If you want the documents those reviews require, the agent gets them generated and hosted for a one-time fee per app.
Install
claude plugin marketplace add yateshaw/approvekit
claude plugin install approvekit@approvekit
Then, inside any app repo, tell Claude:
get my app ready for the App Store
or "prepare the Google OAuth verification", "why would Google Play reject this app", "I need a privacy policy and an account deletion page".
Any MCP-capable agent can use the server without the plugin:
claude mcp add --transport http approvekit https://approvekit.dev/mcp
What it does
- Inventory. The skill tells the agent how to derive platforms, sign-in methods, permissions, data collected, third-party SDKs, Google OAuth scopes and payments from the repo (Expo, React Native, Flutter, native iOS and Android, web). Your source code never leaves your machine; only the inventory is sent.
- Free audit. 23 rules across Apple's App Review Guidelines, Google Play policy and Google's OAuth verification. Every finding comes with its severity, the fix, and a link to the official source.
- Documents (paid, optional). A privacy policy and an account deletion page hosted at
yourapp.approvekit.dev, reviewer notes for App Store Connect and Play Console, and for Google OAuth the per-scope justifications and the demo video shot list. Anything the repo cannot answer is marked[CONFIRM: ...]for you to fill in; pages go live only when the text is final.
The agent never buys on its own: it reports the findings and the price, and creates a checkout link only after you say yes.
Pricing
| Audit | Free |
| Launch Pass (privacy policy, account deletion page, reviewer notes) | US$49 per app |
| Google OAuth Verification Pack (Launch Pass + scope justifications + demo video script) | US$249 per app |
MCP tools
| Tool | Purpose |
|---|---|
audit_app | Send the inventory, get findings and offers. Returns an app_token to reuse. |
create_checkout | Stripe link for a package, after the user agrees. |
get_order | Payment status and, once paid, the documents as Markdown. |
publish_document | Save the final text and put the hosted pages live. |
Endpoint: https://approvekit.dev/mcp (Streamable HTTP, no authentication; the app token identifies the app).
Links
- Site: https://approvekit.dev
- Terms: https://approvekit.dev/terms
- Privacy: https://approvekit.dev/privacy
- Support: [email protected]
ApproveKit is a product of WyeTech LLC. It is a software tool, not legal advice, and it does not guarantee approval by any platform.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.