HuaweiAppGalleryMcp

Um servidor Model Context Protocol (MCP) para gerenciar a publicação de aplicativos no Huawei AppGallery Connect. Integra-se diretamente com o Claude Desktop ou qualquer cliente compatível com MCP.

Documentação

Huawei AppGallery MCP

Huawei App Gallery MCP server

HuaweiAppGalleryMcp MCP server MCP Badge License: MIT

Um servidor Model Context Protocol (MCP) para gerenciar a publicação de aplicativos no Huawei AppGallery Connect. Integra-se diretamente com o Claude Desktop ou qualquer cliente compatível com MCP.

Recursos

  • Consultar e atualizar metadados do aplicativo (nome, descrição, categoria, classificações, contatos de suporte)
  • Gerenciar listagens de loja localizadas por idioma
  • Enviar arquivos APK / AAB com upload automático em partes para arquivos grandes (>4 GB)
  • Enviar aplicativos para lançamento completo, lançamento faseado (cinza), lançamento agendado ou teste aberto (channel_id=2)
  • Enviar aplicativos quando o binário está hospedado no seu próprio servidor
  • Gerenciar o ciclo de vida do lançamento faseado (mudanças de estado, atualizações de porcentagem)
  • Consultar o status de compilação do AAB
  • Atualizar o horário do lançamento agendado
  • Definir o sinalizador de dependência do GMS
  • Obter URLs de relatórios de download/instalação e falhas de instalação

Instalação

Via Registro MCP (recomendado)

Claude Code:

claude mcp add --from-registry io.github.AgiMaulana/HuaweiAppGalleryMcp

Outros clientes MCP: Encontre-o em registry.modelcontextprotocol.io — pesquise por huawei-appgallery.

Instalação manual

pip install huawei-app-gallery-mcp

Ou com uv:

uv pip install huawei-app-gallery-mcp

Configuração

1. Obtenha as credenciais da API

  1. Acesse AppGallery Connect
  2. Navegue até Usuários e permissões → Chave de API → Conectar API
  3. Clique em Criar e selecione o papel Gerenciador de aplicativos
  4. Copie o ID do cliente e o Segredo do cliente

Estas são credenciais da Connect API — diferentes das credenciais do aplicativo HMS Core.

2. Defina as variáveis de ambiente

Crie um arquivo .env no seu diretório de trabalho (o servidor o carrega automaticamente):

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. Conecte-se ao seu cliente MCP (somente instalação manual)

Claude Desktop

Adicione ao ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) ou %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 (nível de máquina, somente instalação manual)

Crie /Library/Application Support/ClaudeCode/managed-mcp.json (macOS) ou /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"
      }
    }
  }
}

Ferramentas

Todas as ferramentas aceitam um argumento opcional app_id. Se omitido, HUAWEI_APP_ID do ambiente é usado como padrão.

FerramentaDescrição
query_app_infoConsultar metadados atuais do aplicativo (nome, descrição, categoria, classificações, etc.), opcionalmente para um canal de lançamento específico via channel_id
update_app_infoAtualizar metadados do aplicativo no rascunho do AppGallery Connect
update_language_infoAdicionar ou atualizar uma listagem de loja localizada para um idioma específico
delete_language_infoRemover uma listagem de loja localizada
get_upload_urlObter uma URL de upload pré-assinada e código de autenticação antes de enviar um arquivo
upload_app_fileEnviar um APK/AAB do disco local e anexá-lo ao rascunho do aplicativo (dividido automaticamente para >4 GB)
update_app_file_infoAnexar manualmente arquivos já enviados ao rascunho do aplicativo
query_compile_statusConsultar o status de compilação do AAB para um ou mais IDs de pacote
submit_appEnviar o aplicativo para revisão e lançamento (suporta lançamento completo, faseado, agendado e teste aberto via channel_id=2)
submit_app_with_fileEnviar quando o binário está hospedado no seu próprio servidor
change_phased_release_stateAlterar o status do lançamento faseado: prosseguir, reverter ou parar
update_phased_releaseConverter lançamento faseado em lançamento completo ou atualizar o cronograma/porcentagem do rollout
update_release_timeAtualizar o horário do lançamento agendado (somente quando o aplicativo está no estado Liberando)
set_gms_dependencyInformar se o aplicativo depende do GMS
get_download_report_urlObter URL de download para o relatório de download e instalação do aplicativo (CSV/Excel, máx. 180 dias)
get_install_failure_report_urlObter URL de download para o relatório de falhas de instalação (CSV/Excel, máx. 180 dias)

Exemplos de Uso

Enviar e lançar uma nova versão:

Envie /path/to/app-release.aab (AAB, tipo de arquivo 5) e depois submeta-o para um lançamento completo.

Rollout faseado:

Submeta o aplicativo para um lançamento faseado para 20% dos usuários.

Teste aberto:

Submeta o aplicativo para teste aberto (channel_id=2).

Inspecionar teste aberto:

Consulte os metadados do aplicativo para o canal de teste aberto com query_app_info(channel_id=2).

Atualizar notas de versão:

Atualize as notas de versão em inglês para "Correções de bugs e melhorias de desempenho".

Lançamento agendado:

Submeta o aplicativo para lançamento em 20 de março de 2026 às 10:00 UTC.

Baixar relatório:

Obtenha a URL do relatório de download e instalação dos últimos 30 dias em formato CSV em inglês.

Fluxo de Publicação

Update app info  →  Update language info  →  Upload APK/AAB  →  Submit app
  1. Use update_app_info / update_language_info para definir metadados e notas de versão
  2. Use upload_app_file para enviar o binário (gerencia a divisão automaticamente)
  3. Use submit_app para acionar a revisão e o lançamento

Fluxo de Lançamento de Pacote

Para instruções de lançamento de pacote, consulte docs/RELEASE.md.

Referência da API

Este servidor encapsula a AppGallery Connect Publishing API.

Licença

MIT