Install
$ agentstack add mcp-agimaulana-huaweiappgallerymcp ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v1.1.1 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v1.1.1. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Huawei AppGallery MCP
[](https://glama.ai/mcp/servers/AgiMaulana/HuaweiAppGalleryMcp)
[](https://glama.ai/mcp/servers/AgiMaulana/HuaweiAppGalleryMcp) [](https://lobehub.com/mcp/agimaulana-huaweiappgallerymcp) [](LICENSE)
A Model Context Protocol (MCP) server for managing app publishing on Huawei AppGallery Connect. Integrates directly with Claude Desktop or any MCP-compatible client.
Features
- Query and update app metadata (name, description, category, ratings, support contacts)
- Manage localized store listings per language
- Upload APK / AAB files with automatic chunked upload for large files (>4 GB)
- Submit apps for full release, phased (grey) release, scheduled release, or open testing (
channel_id=2) - Submit apps when the binary is hosted on your own server
- Manage phased release lifecycle (state changes, percentage updates)
- Query AAB compilation status
- Update scheduled release time
- Set GMS dependency flag
- Obtain download/installation and install-failure report URLs
Installation
Via MCP Registry (recommended)
Claude Code:
claude mcp add --from-registry io.github.AgiMaulana/HuaweiAppGalleryMcp
Other MCP clients: Find it at registry.modelcontextprotocol.io — search for huawei-appgallery.
Manual installation
pip install huawei-app-gallery-mcp
Or with uv:
uv pip install huawei-app-gallery-mcp
Configuration
1. Get API credentials
- Go to AppGallery Connect
- Navigate to Users & Permissions → API key → Connect API
- Click Create and select the App manager role
- Copy the Client ID and Client Secret
> These are Connect API credentials — different from HMS Core app credentials.
2. Set environment variables
Create a .env file in your working directory (the server loads it automatically):
HUAWEI_CLIENT_ID=your_connect_api_client_id
HUAWEI_CLIENT_SECRET=your_connect_api_client_secret
# Optional: set a default app ID so you don't have to pass it to every tool call
HUAWEI_APP_ID=your_app_id
3. Connect to your MCP client (manual install only)
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"huawei-appgallery": {
"command": "huawei-app-gallery-mcp",
"env": {
"HUAWEI_CLIENT_ID": "your_client_id",
"HUAWEI_CLIENT_SECRET": "your_client_secret",
"HUAWEI_APP_ID": "your_app_id"
}
}
}
}
Claude Code (machine-level, manual install only)
Create /Library/Application Support/ClaudeCode/managed-mcp.json (macOS) or /etc/claude-code/managed-mcp.json (Linux):
{
"mcpServers": {
"huawei-appgallery": {
"type": "stdio",
"command": "huawei-app-gallery-mcp",
"env": {
"HUAWEI_CLIENT_ID": "your_client_id",
"HUAWEI_CLIENT_SECRET": "your_client_secret",
"HUAWEI_APP_ID": "your_app_id"
}
}
}
}
Tools
All tools accept an optional app_id argument. If omitted, HUAWEI_APP_ID from the environment is used as the default.
| Tool | Description | |---|---| | query_app_info | Query current app metadata (name, description, category, ratings, etc.), optionally for a specific release channel via channel_id | | update_app_info | Update app metadata in the AppGallery Connect draft | | update_language_info | Add or update a localized store listing for a specific language | | delete_language_info | Remove a localized store listing | | get_upload_url | Obtain a pre-signed upload URL and auth code before uploading a file | | upload_app_file | Upload an APK/AAB from local disk and attach it to the app draft (auto-chunked for >4 GB) | | update_app_file_info | Manually attach already-uploaded files to the app draft | | query_compile_status | Query AAB compilation status for one or more package IDs | | submit_app | Submit the app for review and release (supports full, phased, scheduled, and open testing via channel_id=2) | | submit_app_with_file | Submit when the binary is hosted on your own server | | change_phased_release_state | Change phased release status: proceed, roll back, or stop | | update_phased_release | Convert phased release to full release or update the rollout schedule/percentage | | update_release_time | Update the scheduled release time (only when app is in Releasing state) | | set_gms_dependency | Report whether the app depends on GMS | | get_download_report_url | Get download URL for the app download & installation report (CSV/Excel, max 180 days) | | get_install_failure_report_url | Get download URL for the installation failure report (CSV/Excel, max 180 days) |
Usage Examples
Upload and release a new version:
> Upload /path/to/app-release.aab (AAB, file type 5) then submit it for a full release.
Phased rollout:
> Submit the app for a phased release to 20% of users.
Open testing:
> Submit the app for open testing (channel_id=2).
Inspect open testing:
> Query the app metadata for the open testing channel with query_app_info(channel_id=2).
Update release notes:
> Update the English release notes to "Bug fixes and performance improvements".
Scheduled release:
> Submit the app for release on March 20, 2026 at 10:00 UTC.
Download report:
> Get the download and installation report URL for the last 30 days in English CSV format.
Publishing Workflow
Update app info → Update language info → Upload APK/AAB → Submit app
- Use
update_app_info/update_language_infoto set metadata and release notes - Use
upload_app_fileto upload the binary (handles chunking automatically) - Use
submit_appto trigger review and release
Package Release Workflow
For package release instructions, see [docs/RELEASE.md](/Users/agi.maulana/Documents/Workspace/HuaweiAppGalleryMcp/docs/RELEASE.md).
API Reference
This server wraps the AppGallery Connect Publishing API.
License
MIT
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: AgiMaulana
- Source: AgiMaulana/HuaweiAppGalleryMcp
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v1.1.1 Imported from the upstream source.