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
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
- Acesse AppGallery Connect
- Navegue até Usuários e permissões → Chave de API → Conectar API
- Clique em Criar e selecione o papel Gerenciador de aplicativos
- 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.
| Ferramenta | Descrição |
|---|---|
query_app_info | Consultar 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_info | Atualizar metadados do aplicativo no rascunho do AppGallery Connect |
update_language_info | Adicionar ou atualizar uma listagem de loja localizada para um idioma específico |
delete_language_info | Remover uma listagem de loja localizada |
get_upload_url | Obter uma URL de upload pré-assinada e código de autenticação antes de enviar um arquivo |
upload_app_file | Enviar um APK/AAB do disco local e anexá-lo ao rascunho do aplicativo (dividido automaticamente para >4 GB) |
update_app_file_info | Anexar manualmente arquivos já enviados ao rascunho do aplicativo |
query_compile_status | Consultar o status de compilação do AAB para um ou mais IDs de pacote |
submit_app | Enviar o aplicativo para revisão e lançamento (suporta lançamento completo, faseado, agendado e teste aberto via channel_id=2) |
submit_app_with_file | Enviar quando o binário está hospedado no seu próprio servidor |
change_phased_release_state | Alterar o status do lançamento faseado: prosseguir, reverter ou parar |
update_phased_release | Converter lançamento faseado em lançamento completo ou atualizar o cronograma/porcentagem do rollout |
update_release_time | Atualizar o horário do lançamento agendado (somente quando o aplicativo está no estado Liberando) |
set_gms_dependency | Informar se o aplicativo depende do GMS |
get_download_report_url | Obter URL de download para o relatório de download e instalação do aplicativo (CSV/Excel, máx. 180 dias) |
get_install_failure_report_url | Obter 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
- Use
update_app_info/update_language_infopara definir metadados e notas de versão - Use
upload_app_filepara enviar o binário (gerencia a divisão automaticamente) - Use
submit_apppara 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