Google Cloud

Um servidor MCP para interagir com seus recursos e serviços do Google Cloud.

Documentação

Google Cloud MCP Server

Um servidor Model Context Protocol que se conecta aos serviços do Google Cloud para fornecer contexto e ferramentas para interagir com seus recursos do Google Cloud.

Google Cloud Server MCP server

Serviços

Serviços do Google Cloud suportados:

Billing

Gerencie e analise o faturamento do Google Cloud com insights de otimização de custos:

Ferramentas: gcp-billing-list-accounts, gcp-billing-get-account-details, gcp-billing-list-projects, gcp-billing-get-project-info, gcp-billing-list-services, gcp-billing-list-skus, gcp-billing-analyse-costs, gcp-billing-detect-anomalies, gcp-billing-cost-recommendations, gcp-billing-service-breakdown

Exemplos de prompts:

  • "Mostre-me todas as minhas contas de faturamento"
  • "Analise os custos do projeto my-app-prod-123 nos últimos 30 dias"
  • "Gere recomendações de custo para a conta de faturamento billingAccounts/123456-789ABC-DEF012"
  • "Verifique anomalias de faturamento no projeto my-ecommerce-456"

Error Reporting

Monitore e analise erros de aplicativos com sugestões automatizadas de investigação e correção:

Ferramentas: gcp-error-reporting-list-groups, gcp-error-reporting-get-group-details, gcp-error-reporting-analyse-trends

Exemplos de prompts:

  • "Mostre-me grupos de erros do projeto my-webapp-prod-789 da última hora"
  • "Obtenha detalhes do grupo de erros projects/my-app-123/groups/xyz789"
  • "Analise tendências de erros do serviço my-api no projeto analytics-prod-456"

IAM

Consulte e analise políticas e permissões do IAM:

Ferramentas: gcp-iam-get-project-policy, gcp-iam-test-project-permissions, gcp-iam-test-resource-permissions, gcp-iam-validate-deployment-permissions, gcp-iam-list-deployment-services, gcp-iam-analyse-permission-gaps

Exemplos de prompts:

  • "Obtenha a política do IAM para o projeto my-webapp-prod-123"
  • "Teste se tenho permissão storage.buckets.create no projeto data-lake-456"
  • "Verifique permissões de implantação para Cloud Run no projeto microservices-789"
  • "Analise lacunas de permissão para implantar no cluster GKE no projeto k8s-prod-321"

Logging

Consulte e filtre entradas de log do Google Cloud Logging:

Ferramentas: gcp-logging-query-logs, gcp-logging-query-time-range, gcp-logging-search-comprehensive

Exemplos de prompts:

  • "Mostre-me logs do projeto my-app-prod-123 da última hora com severidade ERROR"
  • "Pesquise logs contendo 'timeout' do serviço my-api no projeto backend-456"
  • "Consulte logs para o tipo de recurso gce_instance no projeto compute-prod-789"

Spanner

Interaja com bancos de dados do Google Cloud Spanner:

Ferramentas: gcp-spanner-execute-query, gcp-spanner-list-tables, gcp-spanner-list-instances, gcp-spanner-list-databases, gcp-spanner-query-natural-language, gcp-spanner-query-count

Exemplos de prompts:

  • "Liste todos os bancos de dados na instância do Spanner my-instance no projeto ecommerce-prod-123"
  • "Execute SQL: SELECT COUNT(*) FROM users no banco de dados user-db no projeto my-app-456"
  • "Mostre-me a estrutura da tabela orders no banco de dados inventory-db no projeto retail-789"

Monitoring

Recupere e analise métricas do Google Cloud Monitoring:

Ferramentas: gcp-monitoring-query-metrics, gcp-monitoring-list-metric-types, gcp-monitoring-query-natural-language

Exemplos de prompts:

  • "Mostre-me métricas de utilização de CPU do projeto web-app-prod-123 das últimas 6 horas"
  • "Liste os tipos de métricas disponíveis para Compute Engine no projeto infrastructure-456"
  • "Consulte o uso de memória das instâncias no projeto backend-services-789"

Profiler

Analise o desempenho de aplicativos com o Google Cloud Profiler:

Ferramentas: gcp-profiler-list-profiles, gcp-profiler-analyse-performance, gcp-profiler-compare-trends

Exemplos de prompts:

  • "Liste perfis de CPU do projeto my-java-app-123 das últimas 24 horas"
  • "Analise gargalos de desempenho no serviço my-api no projeto backend-prod-456"
  • "Compare perfis de heap para a implantação v1.2 vs v1.3 no projeto performance-test-789"

Trace

Analise rastreamentos distribuídos do Google Cloud Trace:

Ferramentas: gcp-trace-get-trace, gcp-trace-list-traces, gcp-trace-find-from-logs, gcp-trace-query-natural-language

Exemplos de prompts:

  • "Obtenha detalhes do rastreamento para o ID abc123def456 no projeto distributed-app-789"
  • "Mostre-me rastreamentos com falha do projeto microservices-prod-123 da última hora"
  • "Encontre logs relacionados ao rastreamento xyz789 no projeto web-backend-456"
  • "Consulte rastreamentos para o serviço checkout-api no projeto ecommerce-prod-321"

Início Rápido

Depois de configurado, você pode interagir com os serviços do Google Cloud usando linguagem natural:

"What are my current billing costs for project my-webapp-prod-123?"
"Show me errors from project ecommerce-api-456 in the last hour"
"Check if I have permission to deploy to Cloud Run in project microservices-789"
"Find logs containing 'database timeout' from project backend-prod-321 yesterday"
"List Spanner databases in instance prod-db for project data-store-654"
"What's the CPU usage of Compute Engine instances in project infrastructure-987?"

Autenticação

Este servidor suporta dois métodos de autenticação com o Google Cloud:

  1. Arquivo de chave da conta de serviço (recomendado): Defina a variável de ambiente GOOGLE_APPLICATION_CREDENTIALS para o caminho do seu arquivo de chave da conta de serviço. Este é o método padrão de autenticação do Google Cloud.

  2. Variáveis de ambiente: Defina as variáveis de ambiente GOOGLE_CLIENT_EMAIL e GOOGLE_PRIVATE_KEY diretamente. Isso é útil para ambientes onde armazenar um arquivo de chave não é prático.

O servidor também usará a variável de ambiente GOOGLE_CLOUD_PROJECT se estiver definida; caso contrário, tentará determinar o ID do projeto a partir das credenciais de autenticação.

Instalação

# Clone the repository
git clone https://github.com/krzko/google-cloud-mcp.git
cd google-cloud-mcp

# Install dependencies
pnpm install

# Build
pnpm build

Autentique-se no Google Cloud:

gcloud auth application-default login

Configure o mcpServers no seu cliente:

{
  "mcpServers": {
      "google-cloud-mcp": {
          "command": "node",
          "args": [
              "/Users/foo/code/google-cloud-mcp/dist/index.js"
          ],
          "env": {
              "GOOGLE_APPLICATION_CREDENTIALS": "/Users/foo/.config/gcloud/application_default_credentials.json"
          }
      }
  }
}

Desenvolvimento

Iniciando o servidor

# Build the project
pnpm build

# Start the server
pnpm start

Modo de desenvolvimento

# Build the project
pnpm build

# Start the server and inspector
npx -y @modelcontextprotocol/inspector node dist/index.js

Solução de problemas

Problemas de tempo limite do servidor

Se você encontrar problemas de tempo limite ao executar o servidor com o Smithery, tente o seguinte:

  1. Ative o registro de depuração definindo debug: true na sua configuração
  2. Garanta que lazyAuth: true esteja definido para adiar a autenticação até que ela seja realmente necessária
  3. Garanta que seu arquivo de credenciais esteja acessível e válido
  4. Verifique os logs para ver se há mensagens de erro

Importante: A autenticação ainda é necessária para a operação, mas com o carregamento lento habilitado, o servidor iniciará imediatamente e autenticará quando necessário, em vez de durante a inicialização.

Problemas de autenticação

O servidor suporta dois métodos de autenticação:

  1. Arquivo de chave da conta de serviço: Defina a variável de ambiente GOOGLE_APPLICATION_CREDENTIALS para o caminho do seu arquivo de chave da conta de serviço
  2. Variáveis de ambiente: Defina as variáveis de ambiente GOOGLE_CLIENT_EMAIL e GOOGLE_PRIVATE_KEY

Se você estiver tendo problemas de autenticação, verifique se:

  • Sua conta de serviço tem as permissões necessárias
  • O arquivo de chave está formatado corretamente e acessível
  • As variáveis de ambiente estão definidas corretamente