Skip to main content
Glama

Huawei AppGallery MCP

Huawei App Gallery MCP server

HuaweiAppGalleryMcp MCP server MCP Badge License: MIT

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

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

  1. Go to AppGallery Connect

  2. Navigate to Users & PermissionsAPI keyConnect 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 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
  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

Package Release Workflow

For package release instructions, see docs/RELEASE.md.

API Reference

This server wraps the AppGallery Connect Publishing API.

License

MIT

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
1wRelease cycle
5Releases (12mo)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AgiMaulana/HuaweiAppGalleryMcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server