App Console MCP
An open-source MCP server and CLI that interfaces with Google Play Console, App Store Connect, and AdMob via official APIs. It allows agents to manage app listings, track vitals like crashes and ANRs, handle releases, and analyze AdMob earnings without using a browser.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Retrieve crash and ANR rates for mobile apps
- Manage app store listings and metadata
- Analyze AdMob earnings and ad performance
- Upload and submit app builds for review
Source and maintenance
- Last repository push
- Latest release
- v0.3.0
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
ghcr.io/alekla0126/app-console-mcp:0.3.0
{
"transport": "stdio",
"identifier": "ghcr.io/alekla0126/app-console-mcp:0.3.0",
"registryType": "oci",
"environmentVariables": [
{
"name": "GOOGLE_PLAY_SERVICE_ACCOUNT",
"description": "Path to a Google Cloud service account JSON key invited in Play Console"
},
{
"name": "ASC_KEY_ID",
"description": "App Store Connect API key ID"
},
{
"name": "ASC_ISSUER_ID",
"description": "App Store Connect API issuer ID"
},
{
"name": "ASC_PRIVATE_KEY_PATH",
"description": "Path to the AuthKey_<KEY_ID>.p8 file"
},
{
"name": "ASC_VENDOR_NUMBER",
"description": "Vendor number, only for sales reports"
},
{
"name": "ADMOB_PUBLISHER_ID",
"description": "pub-... id, only with several AdMob accounts"
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · repository · passed · metadata changed · updated
- · backfill · recorded · Pre-expansion baseline; unobserved rich metadata remains unknown
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"app-console-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GOOGLE_PLAY_SERVICE_ACCOUNT=<YOUR_GOOGLE_PLAY_SERVICE_ACCOUNT>",
"-e",
"ASC_KEY_ID=<YOUR_ASC_KEY_ID>",
"-e",
"ASC_ISSUER_ID=<YOUR_ASC_ISSUER_ID>",
"-e",
"ASC_PRIVATE_KEY_PATH=<YOUR_ASC_PRIVATE_KEY_PATH>",
"-e",
"ASC_VENDOR_NUMBER=<YOUR_ASC_VENDOR_NUMBER>",
"-e",
"ADMOB_PUBLISHER_ID=<YOUR_ADMOB_PUBLISHER_ID>",
"ghcr.io/alekla0126/app-console-mcp:0.3.0"
],
"env": {
"GOOGLE_PLAY_SERVICE_ACCOUNT": "<YOUR_GOOGLE_PLAY_SERVICE_ACCOUNT>",
"ASC_KEY_ID": "<YOUR_ASC_KEY_ID>",
"ASC_ISSUER_ID": "<YOUR_ASC_ISSUER_ID>",
"ASC_PRIVATE_KEY_PATH": "<YOUR_ASC_PRIVATE_KEY_PATH>",
"ASC_VENDOR_NUMBER": "<YOUR_ASC_VENDOR_NUMBER>",
"ADMOB_PUBLISHER_ID": "<YOUR_ADMOB_PUBLISHER_ID>"
}
}
}
}Cline
{
"mcpServers": {
"app-console-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GOOGLE_PLAY_SERVICE_ACCOUNT=<YOUR_GOOGLE_PLAY_SERVICE_ACCOUNT>",
"-e",
"ASC_KEY_ID=<YOUR_ASC_KEY_ID>",
"-e",
"ASC_ISSUER_ID=<YOUR_ASC_ISSUER_ID>",
"-e",
"ASC_PRIVATE_KEY_PATH=<YOUR_ASC_PRIVATE_KEY_PATH>",
"-e",
"ASC_VENDOR_NUMBER=<YOUR_ASC_VENDOR_NUMBER>",
"-e",
"ADMOB_PUBLISHER_ID=<YOUR_ADMOB_PUBLISHER_ID>",
"ghcr.io/alekla0126/app-console-mcp:0.3.0"
],
"env": {
"GOOGLE_PLAY_SERVICE_ACCOUNT": "<YOUR_GOOGLE_PLAY_SERVICE_ACCOUNT>",
"ASC_KEY_ID": "<YOUR_ASC_KEY_ID>",
"ASC_ISSUER_ID": "<YOUR_ASC_ISSUER_ID>",
"ASC_PRIVATE_KEY_PATH": "<YOUR_ASC_PRIVATE_KEY_PATH>",
"ASC_VENDOR_NUMBER": "<YOUR_ASC_VENDOR_NUMBER>",
"ADMOB_PUBLISHER_ID": "<YOUR_ADMOB_PUBLISHER_ID>"
}
}
}
}VS Code
{
"servers": {
"app-console-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GOOGLE_PLAY_SERVICE_ACCOUNT=<YOUR_GOOGLE_PLAY_SERVICE_ACCOUNT>",
"-e",
"ASC_KEY_ID=<YOUR_ASC_KEY_ID>",
"-e",
"ASC_ISSUER_ID=<YOUR_ASC_ISSUER_ID>",
"-e",
"ASC_PRIVATE_KEY_PATH=<YOUR_ASC_PRIVATE_KEY_PATH>",
"-e",
"ASC_VENDOR_NUMBER=<YOUR_ASC_VENDOR_NUMBER>",
"-e",
"ADMOB_PUBLISHER_ID=<YOUR_ADMOB_PUBLISHER_ID>",
"ghcr.io/alekla0126/app-console-mcp:0.3.0"
],
"env": {
"GOOGLE_PLAY_SERVICE_ACCOUNT": "<YOUR_GOOGLE_PLAY_SERVICE_ACCOUNT>",
"ASC_KEY_ID": "<YOUR_ASC_KEY_ID>",
"ASC_ISSUER_ID": "<YOUR_ASC_ISSUER_ID>",
"ASC_PRIVATE_KEY_PATH": "<YOUR_ASC_PRIVATE_KEY_PATH>",
"ASC_VENDOR_NUMBER": "<YOUR_ASC_VENDOR_NUMBER>",
"ADMOB_PUBLISHER_ID": "<YOUR_ADMOB_PUBLISHER_ID>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"app-console-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GOOGLE_PLAY_SERVICE_ACCOUNT=<YOUR_GOOGLE_PLAY_SERVICE_ACCOUNT>",
"-e",
"ASC_KEY_ID=<YOUR_ASC_KEY_ID>",
"-e",
"ASC_ISSUER_ID=<YOUR_ASC_ISSUER_ID>",
"-e",
"ASC_PRIVATE_KEY_PATH=<YOUR_ASC_PRIVATE_KEY_PATH>",
"-e",
"ASC_VENDOR_NUMBER=<YOUR_ASC_VENDOR_NUMBER>",
"-e",
"ADMOB_PUBLISHER_ID=<YOUR_ADMOB_PUBLISHER_ID>",
"ghcr.io/alekla0126/app-console-mcp:0.3.0"
],
"env": {
"GOOGLE_PLAY_SERVICE_ACCOUNT": "<YOUR_GOOGLE_PLAY_SERVICE_ACCOUNT>",
"ASC_KEY_ID": "<YOUR_ASC_KEY_ID>",
"ASC_ISSUER_ID": "<YOUR_ASC_ISSUER_ID>",
"ASC_PRIVATE_KEY_PATH": "<YOUR_ASC_PRIVATE_KEY_PATH>",
"ASC_VENDOR_NUMBER": "<YOUR_ASC_VENDOR_NUMBER>",
"ADMOB_PUBLISHER_ID": "<YOUR_ADMOB_PUBLISHER_ID>"
}
}
}
}Let your agent find its tools
Find servers like App Console MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.