Skip to main content
Loss of provenance

A previous release had provenance metadata, but this release does not. View details.

Huawei AppGallery MCP

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

pip install huawei-app-gallery-mcp

Or with uv:

uv pip install huawei-app-gallery-mcp

Configuration

1. Get API credentials

  1. Go to AppGallery Connect
  2. Navigate to Users & Permissions → API key → Connect API
  3. Click Create and select the App manager role
  4. 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 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"
      }
    }
  }
}

Connect to Claude Code (machine-level)

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.)
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).

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
  1. Use update_app_info / update_language_info to set metadata and release notes
  2. Use upload_app_file to upload the binary (handles chunking automatically)
  3. Use submit_app to trigger review and release

API Reference

This server wraps the AppGallery Connect Publishing API.

License

MIT

Metadata

Release files for huawei-app-gallery-mcp 1.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Loss of provenance

These files do not have provenance metadata, despite files in a prior release including this data.

We recommend further investigation before installing these files. View details.

Source distribution (sdist)

Source distribution for huawei-app-gallery-mcp 1.1.1
File Size Uploaded Provenance Actions
huawei_app_gallery_mcp-1.1.1.tar.gz 14.7 kB Without provenance Details for huawei_app_gallery_mcp-1.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for huawei-app-gallery-mcp 1.1.1
File Interpreter ABI Platform Actions
huawei_app_gallery_mcp-1.1.1-py3-none-any.whl Python 3 none any Details for huawei_app_gallery_mcp-1.1.1-py3-none-any.whl

Total release size: 33.4 kB

Security for huawei-app-gallery-mcp 1.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Loss of provenance

A previous release of these files had provenance metadata, but this release does not.

While this could reflect a routine change by the project maintainers, it may also indicate that the release files have been compromised.

Release comparison

  • Removed 1.1.0 2 files With provenance
  • Added 1.1.1 2 files Without provenance

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page