Usar o servidor MCP remoto da CLI do Cloud

Este documento mostra como usar o servidor remoto do Protocolo de Contexto de Modelo (MCP) da CLI do Cloud para se conectar a aplicativos de IA, incluindo a CLI do Gemini, o ChatGPT, o Claude e aplicativos personalizados que você está desenvolvendo.

O servidor MCP remoto da CLI do Cloud oferece um ambiente seguro que permite enviar comandos em linguagem natural ao seu aplicativo de IA para executar comandos da interface de linha de comando (CLI) em seu nome. Há suporte para os comandos gcloud e bq.

A API desse recurso é chamada de "Execução da CLI do Cloud".

O servidor MCP remoto da CLI do Cloud é ativado quando você ativa a API Cloud CLI Execution.

O padrão do Protocolo de Contexto de Modelo (MCP) padroniza como os modelos de linguagem grandes (LLMs) e os aplicativos ou agentes de IA se conectam a fontes de dados externas. Com os servidores MCP, você pode usar as ferramentas, os recursos e os comandos deles para realizar ações e receber dados atualizados do serviço de back-end.

Qual é a diferença entre servidores MCP locais e remotos?

Servidores MCP locais
Normalmente executados na máquina local e usam os fluxos de entrada e saída padrão (stdio) para comunicação entre serviços no mesmo dispositivo.
Servidores MCP remotos
Executar na infraestrutura do serviço e oferecer um endpoint HTTP para aplicativos de IA para comunicação entre o cliente MCP de IA e o servidor MCP. Para mais informações sobre a arquitetura do MCP, consulte Arquitetura do MCP.

Servidores MCP remotos do Google e Google Cloud

Os servidores MCP remotos do Google e do Google Cloud têm os seguintes recursos e benefícios:

  • Descoberta simplificada e centralizada
  • Endpoints HTTP globais ou regionais gerenciados
  • Autorização detalhada
  • Segurança opcional de comandos e respostas com a proteção do Model Armor
  • Registro de auditoria centralizado

Para informações sobre outros servidores MCP e controles de segurança e governança disponíveis para servidores MCP do Google Cloud, consulte Visão geral dos servidores MCP do Google Cloud.

Restrições e diretrizes

Antes de começar a trabalhar com o servidor MCP remoto da CLI do Cloud, revise as seguintes restrições e diretrizes:

Comandos aceitos

O servidor MCP da CLI do Cloud não é compatível com alguns comandos gcloud e bq (incluindo variantes alpha ou beta para gcloud) devido a padrões de segurança e inaplicabilidade.

A lista a seguir mostra alguns exemplos de comandos gcloud que não são compatíveis. Esta lista não é completa e está sujeita à adição ou remoção de comandos sem aviso prévio:

  • gcloud auth
  • gcloud config
  • gcloud iam service-accounts
  • gcloud init
  • gcloud survey

Confira a seguir uma lista completa de comandos bq que não são compatíveis:

  • bq init
  • bq pyshell
  • bq shell

Aplicação da política da organização

Os comandos executados pelo servidor MCP remoto são executados com as permissões da identidade do chamador autenticado. As permissões padrão do IAM e as restrições do Serviço de políticas da organização são aplicadas rigorosamente aos recursos de destino downstream.

Diretrizes para desenvolvedores de agentes

  • Permissões do principal e do IAM: o principal que interage com a API Cloud CLI Execution é o mesmo que interage com as APIs Google Cloud durante a execução dos comandos gcloud ou bq. Como o servidor MCP da CLI do Cloud pode chamar muitas APIs Google Cloud, recomendamos seguir o princípio de privilégio mínimo e atribuir as permissões mínimas necessárias para seu caso de uso ao usuário, à identidade do agente ou à conta de serviço que chama o servidor MCP da CLI do Cloud.

  • Selecionar projetos: project é um parâmetro obrigatório para solicitações de servidor MCP da CLI do Cloud e representa o projeto usado para interagir com a API Execution da CLI do Cloud. O parâmetro project não está relacionado às flags --project ou --billing-project definidas no comando gcloud real nem às flags --project_id e --quota_project_id para comandos bq que a API Cloud CLI Execution executa.

    Recomendamos atualizar os comandos ou habilidades do sistema para que o agente selecione o projeto correto para executar solicitações do servidor MCP da CLI do Cloud.

Antes de começar

  1. Faça login na sua conta do Google Cloud . Se você começou a usar o Google Cloud, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  4. Verify that billing is enabled for your Google Cloud project.

  5. Enable the Cloud CLI Execution API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  8. Verify that billing is enabled for your Google Cloud project.

  9. Enable the Cloud CLI Execution API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

Funções exigidas

Para receber as permissões necessárias para usar o servidor MCP da CLI do Cloud, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto em que você quer usar o servidor MCP da CLI do Cloud:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esses papéis predefinidos contêm as permissões necessárias para usar o servidor MCP da CLI do Cloud. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As seguintes permissões são necessárias para usar o servidor MCP da CLI do Cloud:

  • Fazer chamadas de ferramentas do MCP: mcp.tools.call

Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.

Autenticação e autorização

O servidor MCP remoto da CLI do Cloud usa o protocolo OAuth 2.0 com o Identity and Access Management (IAM) para autenticação e autorização. Todas as Google Cloud identidades são compatíveis com a autenticação em servidores MCP.

O servidor MCP remoto da CLI do Cloud não aceita chaves de API.

Recomendamos que você crie uma identidade separada para agentes que usam ferramentas do MCP para que o acesso aos recursos possa ser controlado e monitorado. Para mais informações sobre autenticação, consulte Autenticar em servidores do MCP.

Escopos do OAuth da CLI do Cloud

O OAuth 2.0 usa escopos e credenciais para determinar se um principal autenticado está autorizado a realizar uma ação específica em um recurso. Para mais informações sobre os escopos do OAuth 2.0 no Google, consulte Como usar o OAuth 2.0 para acessar as APIs do Google.

O servidor MCP remoto da CLI do Cloud tem os seguintes escopos do OAuth:

URI do escopo Descrição
https://www.googleapis.com/auth/cloud-platform Acessar e gerenciar seus dados nos serviços do Google Cloud .

Configurar um cliente MCP para usar o servidor MCP remoto da CLI do Cloud

Aplicativos e agentes de IA, como Claude ou Antigravity, podem instanciar um cliente MCP que se conecta a um único servidor MCP. Um aplicativo de IA pode ter vários clientes que se conectam a diferentes servidores do MCP. Se o aplicativo não estiver listado nas orientações específicas do cliente, use as informações a seguir para se conectar na maioria dos aplicativos.

No seu aplicativo de IA, procure uma maneira de adicionar ou se conectar a um servidor MCP remoto. Para o servidor MCP remoto da CLI do Cloud, insira as seguintes informações, conforme necessário:

  • Nome do servidor: servidor MCP remoto da CLI do Cloud
  • URL do servidor ou Endpoint: https://cloudcli.googleapis.com/mcp
  • Transporte: HTTP
  • Detalhes de autenticação: suas credenciais do Google Cloud , seu ID e chave secreta do cliente OAuth ou uma identidade e credenciais do agente

URIs de redirecionamento

Para aplicativos baseados na Web e alguns aplicativos para computador, é necessário adicionar à lista de permissões um URI de redirecionamento ao criar um ID e uma chave secreta do cliente para autenticação. Os URIs de redirecionamento são usados pelo servidor de autorização para enviar tokens ao seu aplicativo. A documentação do aplicativo deve especificar o URI de redirecionamento que você precisa usar. URIs de redirecionamento personalizados não são aceitos.

Para orientações específicas sobre como configurar e se conectar ao servidor MCP, consulte Orientações específicas do cliente.

Para orientações mais gerais, consulte os seguintes recursos:

Ferramentas disponíveis

O servidor MCP remoto da CLI do Cloud expõe as seguintes ferramentas:

  • run_gcloud_command
  • run_bq_command

Para conferir detalhes das ferramentas do MCP disponíveis e as descrições delas para o servidor MCP da CLI do Cloud, consulte a referência do MCP do SDK do Google Cloud.

Diferenças entre run_bq_command e o servidor MCP do BigQuery

O run_bq_command expõe a superfície da CLI do BigQuery (bq) no servidor MCP remoto da CLI do Cloud. A ferramenta pode executar comandos SQL do BigQuery e permitir que tarefas administrativas e operacionais sejam realizadas com comandos em linguagem natural. O BigQuery também oferece um servidor MCP separado para análise de dados padrão. Cada plataforma de ferramentas foi projetada para casos de uso distintos:

  • run_bq_command: use run_bq_command ao criar agentes de IA para fluxos de trabalho administrativos e operacionais avançados, como gerenciar reservas de slots, programar consultas, gerenciar snapshots de tabelas ou resolver problemas e cancelar jobs.
  • Servidor MCP do BigQuery: use o servidor MCP do BigQuery ao criar agentes de IA que usam ferramentas de execução SQL padrão para impulsionar a análise de dados, a descoberta de metadados e a modificação de dados.

A tabela a seguir mostra outras diferenças entre as duas interfaces de ferramentas:

Recurso Servidor MCP do BigQuery run_bq_command
Disponibilidade Disponibilidade geral Visualizar
Uso Análise e modificação de dados Administração avançada de jobs e recursos
Usuários-alvo Analistas de negócios, cientistas de dados, desenvolvedores de SQL Administradores do BigQuery, DBAs, engenheiros de plataforma de dados e DevOps
Operações principais Execução de SQL padrão (SELECT, INSERT, UPDATE, DELETE), análise de esquema, inspeção de metadados Programação de consultas (usando o DTS), cancelamento de jobs descontrolados, gerenciamento de slots e reservas, políticas do IAM de conjuntos de dados, operações de snapshot/clonagem de tabelas

Ferramentas de lista

Use o inspetor do MCP para listar ferramentas ou envie uma solicitação HTTP tools/list diretamente ao servidor MCP remoto da CLI do Cloud. O método tools/list não requer autenticação.

POST /mcp HTTP/1.1
Host: cloudcli.googleapis.com
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "method": "tools/list",
}

Exemplos de casos de uso para run_gcloud_command

Confira a seguir exemplos de casos de uso do run_gcloud_command no servidor MCP remoto da CLI do Cloud:

Provisionamento de recursos

Quando um usuário envia um comando em linguagem natural para o agente, ele gera um comando usando a ferramenta MCP correspondente (run_gcloud_command para comandos gcloud ou run_bq_command para comandos bq). A CLI do Cloud executa o comando.

Comando de exemplo:

"Crie uma rede VPC chamada my-network no projeto projects/my-project. Em seguida, crie uma regra de firewall que permita o tráfego TCP interno na porta 8080."

Fluxo de trabalho:

  1. O agente chama a ferramenta run_gcloud_command com o comando "gcloud compute networks create my-network --project=projects/my-project --subnet-mode=auto", "project": "projects/my-project".

  2. O agente chama a ferramenta run_gcloud_command com o comando "gcloud compute firewall-rules create allow-internal-8080 --project=projects/my-project --network=my-network --allow=tcp:8080 --source-ranges=10.0.0.0/8.

Observabilidade e diagnósticos

Um agente pode inspecionar o estado do ambiente e consultar registros de erros recentes para ajudar a resolver problemas.

Comando de exemplo: "Encontre os cinco registros de erros mais recentes da instância my-web-server do Compute Engine no projeto projects/my-project".

Fluxo de trabalho:

O agente chama a ferramenta run_gcloud_command com o comando "gcloud logging read \"resource.type=gce_instance AND severity>=ERROR\" --limit=5 --order=DESC", project: "my-project".

Exemplos de casos de uso para run_bq_command

Confira a seguir exemplos de casos de uso do run_bq_command no servidor MCP remoto da CLI do Cloud:

Gerenciar conjuntos de dados no BigQuery

Também é possível usar o servidor MCP para executar consultas e gerenciar conjuntos de dados no BigQuery.

Exemplo de comando: "Liste todos os conjuntos de dados no projeto projects/my-project e crie um conjunto de dados chamado my_new_dataset na região dos EUA".

Fluxo de trabalho:

  1. O agente chama a ferramenta run_bq_command com o comando "bq ls --datasets=true --project_id=my-project", "project": "projects/my-project".

  2. O agente chama a ferramenta run_bq_command com o comando "bq mk --dataset --location=us --project_id=my-project my_new_dataset", "project": "projects/my-project".

Resolver problemas e cancelar jobs de longa duração

Um agente inspeciona os jobs do BigQuery em execução para identificar gargalos de recursos, diagnosticar consultas com falha, cancelar jobs de longa duração e extrair detalhes de execução para recomendações de desempenho.

Comando de exemplo:

"Verifique se há consultas de longa duração ou com uso intenso de recursos em execução no projeto my-data-project. Se o bqujob_12345 estiver em execução há mais de 30 minutos, cancele e mostre os detalhes."

Fluxo de trabalho:

  1. O agente chama run_bq_command com o comando "bq ls -j --all --project_id=my-data-project", "project": "projects/my-data-project".

  2. O agente inspeciona a lista de jobs e chama run_bq_command com o comando: "bq show -j bqujob_12345 --project_id=my-data-project", "project": "projects/my-data-project".

  3. O agente chama run_bq_command com o comando: "bq cancel bqujob_12345 --project_id=my-data-project", "project": "projects/my-data-project".

Programar consultas

Um agente configura execuções de consultas programadas usando a integração do serviço de transferência de dados do BigQuery na CLI do BigQuery para automatizar atualizações de dados.

Exemplo de comando:

"Programe uma consulta diária às 06:00 UTC para atualizar a tabela daily_sales_summary em dataset sales_ds para o projeto my-data-project."

Fluxo de trabalho:

  1. O agente chama run_bq_command com o comando: "bq query --project_id=my-data-project --use_legacy_sql=false --destination_table=sales_ds.daily_sales_summary --display_name='Daily Sales Refresh' --schedule='every 24 hours' 'SELECT date, SUM(amount) as total FROM sales_ds.transactions GROUP BY date'", "project": "projects/my-data-project".

Análise de capacidade e ajuste de reserva

Um agente analisa as reservas de slots nos principais projetos consumidores e atualiza as atribuições de slots para gerenciar a capacidade de computação.

Exemplo de comando:

"Liste todas as reservas do BigQuery na região us-central1 para o projeto my-admin-project e atualize a alocação de slots da reserva prod-analytics para 500 slots."

Fluxo de trabalho:

  1. O agente chama run_bq_command com o comando: "bq ls --reservation --project_id=my-admin-project --location=us-central1", "project": "projects/my-admin-project".

  2. O agente chama run_bq_command com o comando: "bq update --project_id=my-admin-project --reservation --slots=500 prod-analytics --location=us-central1", "project": "projects/my-admin-project".

Gerenciar snapshots e clones de tabela

Um agente cria snapshots pontuais de tabelas de produção críticas ou provisiona clones de tabelas para desenvolvimento e teste.

Exemplo de comando:

"Crie um snapshot da tabela production_db.orders chamado production_db.orders_snapshot_20260720 no projeto my-data-project."

Fluxo de trabalho:

O agente chama run_bq_command com o comando: "bq cp --project_id=my-data-project --snapshot production_db.orders production_db.orders_snapshot_20260720", "project": "projects/my-data-project".

Controle de acesso ao conjunto de dados e permissões do IAM

Um agente inspeciona os controles de acesso do conjunto de dados e atualiza as permissões para conceder ou revogar o acesso para principais especificados.

Exemplo de comando:

"Mostre a configuração de acesso atual para o conjunto de dados finance_ds no projeto my-data-project."

Fluxo de trabalho:

  1. O agente chama run_bq_command com o comando: "bq show --format=prettyjson my-data-project:finance_ds", "project": "projects/my-data-project".

  2. O agente atualiza a definição JSON de acesso e chama run_bq_command com o comando: "bq update --source=access_update.json my-data-project:finance_ds", "project": "projects/my-data-project".

Configurações opcionais de segurança

O MCP apresenta novos riscos e considerações de segurança devido à grande variedade de ações que podem ser feitas com as ferramentas do MCP. Para minimizar e gerenciar esses riscos, o Google Cloud oferece configurações padrão e políticas personalizáveis para controlar o uso das ferramentas do MCP na sua organização ou projeto do Google Cloud.

Para mais informações sobre segurança e governança do MCP, consulte Segurança e proteção de IA.

Usar o Model Armor

O Model Armor é um Google Cloud serviço projetado para aumentar a segurança dos seus aplicativos de IA. Ele funciona verificando de maneira proativa os comandos e respostas de LLMs, protegendo contra vários riscos e apoiando práticas de IA responsável. Seja no seu ambiente de nuvem ou em provedores externos, o Model Armor ajuda a evitar entradas maliciosas, verificar a segurança do conteúdo, proteger dados sensíveis, manter a conformidade e aplicar suas políticas de segurança de IA de maneira consistente em todo o seu cenário de IA.

Quando o Model Armor está ativado com a geração de registros ativada, ele registra todo o payload. Isso pode expor informações sensíveis nos seus registros.

Roteamento de solicitações do MCP para o Model Armor

O Model Armor está disponível em algumas regiões. Quando o Model Armor está ativado e você usa um servidor MCP em uma jurisdição que não é compatível com o Model Armor, o comportamento de roteamento da chamada pode ser diferente para diferentes servidores MCP e violar a conformidade de residência de dados para dados em uso e em trânsito. Para mais informações sobre o comportamento de servidores MCP individuais, consulte Produtos compatíveis com o Model Armor.

Ativar o Model Armor

É necessário ativar as APIs do Model Armor antes de usar o Model Armor.

Console

  1. Ative a API Model Armor.

    Funções necessárias para ativar APIs

    Para ativar APIs, você precisa da permissão serviceusage.services.enable. Se você criou o projeto, provavelmente já tem essa permissão com o papel de Proprietário (roles/owner). Caso contrário, é possível receber essa permissão com o papel de Administrador do Service Usage (roles/serviceusage.serviceUsageAdmin). Saiba como conceder papéis.

    Ativar a API

  2. Selecione o projeto em que você quer ativar o Model Armor.

gcloud

Antes de começar, siga estas etapas usando a Google Cloud CLI com a API Model Armor:

  1. No console do Google Cloud , ative o Cloud Shell.

    Ativar o Cloud Shell

    Na parte de baixo do console Google Cloud , uma sessão do Cloud Shell é iniciada e exibe um prompt de linha de comando. O Cloud Shell é um ambiente shell com a CLI do Google Cloud já instalada e com valores já definidos para o projeto atual. A inicialização da sessão pode levar alguns segundos.

  2. Execute o comando a seguir para definir o endpoint de API do serviço Model Armor.

    gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"

    Substitua LOCATION pela região em que você quer usar o Model Armor.

Configurar a proteção para servidores MCP remotos do Google e do Google Cloud

Para proteger as chamadas e respostas da ferramenta MCP, use as configurações de proteção do Model Armor. Uma configuração mínima define os filtros de segurança mínimos que se aplicam a todo o projeto. Essa configuração aplica um conjunto consistente de filtros a todas as chamadas e respostas de ferramentas do MCP no projeto.

Configure uma configuração de valor mínimo do Model Armor com a sanitização da MCP ativada. Para mais informações, consulte Configurar configurações mínimas do Model Armor.

Confira o exemplo de comando a seguir:

gcloud model-armor floorsettings update \
--full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
--enable-floor-setting-enforcement=TRUE \
--add-integrated-services=GOOGLE_MCP_SERVER \
--google-mcp-server-enforcement-type=INSPECT_AND_BLOCK \
--enable-google-mcp-server-cloud-logging \
--malicious-uri-filter-settings-enforcement=ENABLED \
--add-rai-settings-filters='[{"confidenceLevel": "MEDIUM_AND_ABOVE", "filterType": "DANGEROUS"}]'

Substitua PROJECT_ID pelo ID do projeto Google Cloud .

Observe as seguintes configurações:

  • INSPECT_AND_BLOCK: o tipo de aplicação que inspeciona o conteúdo do servidor MCP do Google e bloqueia solicitações e respostas que correspondem aos filtros.
  • ENABLED: a configuração que ativa um filtro ou uma aplicação.
  • MEDIUM_AND_ABOVE: o nível de confiança para as configurações de filtro de IA responsável - perigoso. É possível modificar essa configuração, mas valores mais baixos podem resultar em mais falsos positivos. Para mais informações, consulte Níveis de confiança do Model Armor.

Desativar a verificação do tráfego do MCP com o Model Armor

Para impedir que o Model Armor verifique automaticamente o tráfego de e para os servidores do Google MCP com base nas configurações mínimas do projeto, execute o seguinte comando:

gcloud model-armor floorsettings update \
  --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
  --remove-integrated-services=GOOGLE_MCP_SERVER

Substitua PROJECT_ID pelo Google Cloud ID do projeto. O Model Armor não aplica automaticamente as regras definidas nas configurações de limite mínimo deste projeto ao tráfego de servidores MCP do Google.

As configurações mínimas e a configuração geral do Model Armor podem afetar mais do que apenas o MCP. Como o Model Armor se integra a serviços como a Vertex AI, as mudanças feitas nas configurações de restrição podem afetar a verificação de tráfego e os comportamentos de segurança em todos os serviços integrados, não apenas no MCP.

A seguir