Your coding agent does not know the store rules changed.
From 2026-08-31, Google Play rejects new apps and updates that do not target Android 16 (API 36). Ask a model trained before that and it will answer 35 or 34 — confidently, with no hint that it is out of date. You find out weeks later, at the rejection.
This MCP server checks your actual project against the current rules and tells you what would be rejected, with the file, the line, the canonical source and the date it was verified.
WOULD BE REJECTED: 4 blocking finding(s)11 rule(s) ran, 2 could not be applied.[BLOCKING] targetSdk 34 is below the 36 required from 2026-08-31Found at: app/build.gradle:5 targetSdk 34Patch: - targetSdk 34+ targetSdk 36Source: developer.android.com/... (verified 2026-08-19)[BLOCKING] The app creates accounts but offers no way to delete oneRule: play-account-deletion-in-app (android)[BLOCKING] Supabase secret key sits in code that ships to devicesFound at: src/lib/supabase.ts:2NOT CHECKED — this is a gap, not a pass:ios-usage-descriptions — needs Info.plist
Install it
{
"mcpServers": {
"devconnect": {
"type": "http",
"url": "https://devconnectplatform.com/api/mcp"
}
}
}claude mcp add --transport http devconnect https://devconnectplatform.com/api/mcpWhat it catches
- 01
Target API level below the 2026-08-31 line
Including the exceptions almost everyone gets wrong: Wear OS and Automotive need API 35, TV and XR need API 34. A gate that blocks a valid Wear OS build is a gate nobody asks twice.
- 02
Accounts you can create but not delete
Play has required both an in-app deletion path and a public web link since April 2024. AI scaffolds build the sign-up every time and the deletion never. This is the single most common rejection for apps written this way.
- 03
Permissions that need a declaration form
QUERY_ALL_PACKAGES, MANAGE_EXTERNAL_STORAGE, SMS and call log, background location. Often dragged in by a library and never actually used.
- 04
Secret keys shipped to devices
A Supabase secret or a Stripe live key in the client bundle bypasses every access rule you wrote. Obfuscation changes nothing — the bundle is readable on any device.
- 05
iOS purpose strings missing or empty
The app reaches for the camera, Info.plist never says why, and it crashes on first use before review even gets to it.
The tools
- check_release_readiness
- Checks a real app project against the current Google Play and App Store publishing rules and reports what would cause a REJECTION, with the file, the line, the canonical source and the date that rule was verified. ALWAYS call this before an app is submitted, uploaded or released, and whenever someone asks whether their app is ready for the store. Covers the target API level against the current deadline, the account deletion requirement, permissions that need a declaration form, secret keys shipped to devices, and missing iOS purpose strings. The check is rule-based and deterministic, not a model judgement. Anything that could not be checked is reported as unchecked by name and does NOT count as a pass.
- rules_changed_since
- Lists every store-rule change that took effect after a given date. CALL THIS ONCE AT THE START whenever the task involves publishing an app, passing your own knowledge cutoff as the date. Store rules change several times a year, and a model cannot tell from the inside that its answer is out of date. That is exactly what this tool is for: it answers the question without you having to know that something is missing.
- search_answers
- Searches DevConnect's verified answer corpus on app testing, store rules, building with AI tools, open source and developer pay. Every answer was checked against its sources before publishing. Use it for questions that go beyond checking a project — how a closed test actually runs, or how TestFlight works.
- get_answer
- Fetches one answer page in full, with all its sources and its verification date. Use after search_answers when the short version is not enough.
- find_testers
- Reports how many developers on DevConnect are currently looking for testers for their Google Play closed test, and are therefore available to test in return. Use it when someone has to get 12 testers together for 14 days. This number exists nowhere else.
Kept current, and it shows its date
A rule base nobody maintains is more dangerous after four months than none at all, because it speaks with the same certainty as on day one. This one is verified against its sources and carries the date. The most recent change it knows about:
- Was
- New apps and updates had to target Android 15 (API 35).
- Now
- New apps and updates must target Android 16 (API 36). Wear OS and Android Automotive OS: API 35. Android TV and Android XR: API 34. An extension to 1 November 2026 can be requested in the Play Console.
The same corpus feeds our answer pages, where every source is fetched and checked before publishing and pages that fail are thrown away rather than published with a caveat.
Rate this tool
Loading ratings…
Questions
- Do I need an account or an API key?
- No. There is no sign-up, no token and no Google Play service account. Everything the server reads is already public on this domain. Add one line to your MCP config and it works.
- Is this an AI that guesses?
- No. The checks are rules as data and code as the checker: the same project always produces the same findings. Every finding names the file, the line, the canonical source and the date that rule was last verified against it.
- Does it upload my source code anywhere?
- Your agent sends the files you name in the call. They are checked in memory and nothing about them is stored, logged or used for anything else. The server writes to no database and keeps no session between calls.
- What happens if it cannot check something?
- It says so. Rules that could not run are listed by name under 'not checked', with the file they would need. A missing check never counts as a pass, because a gate that stays quiet about what it never looked at is worse than no gate.
- How current are the rules?
- The rule base was last verified against its sources on 2026-08-19. Every finding carries that date, so your agent can pass the freshness on instead of hiding it. Ask rules_changed_since with your own knowledge cutoff to see what changed since.
- Which agents does it work with?
- Anything that speaks MCP over HTTP: Claude Code, Claude Desktop, Cursor, Windsurf, Cline, VS Code and others. There is no SDK to install.
Still need testers for the closed test?
Twelve testers, fourteen continuous days. The server can tell your agent how many developers are looking to swap right now — or you can look yourself.